Where is thr_getscheduler
Steve Kargl
sgk at troutmask.apl.washington.edu
Tue Aug 1 21:16:59 UTC 2006
On Tue, Aug 01, 2006 at 05:02:53PM -0400, Daniel Eischen wrote:
> On Tue, 1 Aug 2006, Steve Kargl wrote:
>
> >Sure enough, grepping the sources in src/lib/libthr indeed shows
> >that thr_getscheduler is used but never defined.
> >
> >It appears that libthr has been broken since 13 Jul 06. Is there
> >any time line for when libthr will be fixed? Should an entry
> >be added to /usr/src/UPDATING to warn people that libthr is
> >broken?
>
> It's not borken. Your ports are probably just out-of-date and were
> built against a previous version of libc (libc.so.6) which doesn't
> have thr_getscheduler. What does `ldd /path/to/firefox_binary`
> show?
troutmask:kargl[202] ldd `locate firefox-bin` | wc -l
37
troutmask:kargl[203] ldd `locate firefox-bin` | grep libc
libcairo.so.2 => /usr/local/lib/libcairo.so.2 (0x201cce000)
libc.so.7 => /lib/libc.so.7 (0x203245000)
> I don't think rebuilding just firefox is going to fix the problem
> since it depends on other libraries that depend on libc.so.6,
> not libc.so.7.
>
> What does 'readelf -sW /lib/libc.so.7 | grep thr_get' show?
It shows what you expect.
809: 0000000000053df0 0 FUNC WEAK DEFAULT 8 _thr_getscheduler
1993: 0000000000053df0 0 FUNC GLOBAL DEFAULT 8 __sys_thr_getscheduler
2437: 0000000000053df0 0 FUNC WEAK DEFAULT 8 thr_getscheduler
> Is firefox linked against libc.so.7 or libc.so.6 on your system?
I'm guess that one or more of the 37 shared libraries noted above
is linked against libc.so.6.
If this change would have been noted in UPDATING, I would have
chosen a different day to deal with the mess that David Xu has
caused.
--- UPDATING.orig Tue Aug 1 14:11:56 2006
+++ UPDATING Tue Aug 1 14:15:03 2006
@@ -28,6 +28,13 @@
generated with an older version on 64 bit architectures.
If you have such a file, you need old utility to decrypt it.
+20060713:
+ David Xu updated libthr to use thr_getscheduler(), which is
+ present in libc.so.7 but not libc.so.6. This change wreaks
+ havoc on installed ports that use libthr and that are linked
+ against libc.so.6. It is suggested that one update their
+ installed ports.
+
20060709:
The interface version of the i4b kernel part has changed. So
after updating the kernel sources and compiling a new kernel,
--
Steve
More information about the freebsd-current
mailing list