This is the mail archive of the libc-hacker@sourceware.cygnus.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: LDT use in LinuxThreads


>>>>> Ulrich Drepper writes:

Uli> tb@MIT.EDU (Thomas Bushnell, BSG) writes:
>> That's fine; I thought you were talking about checking a compile-time
>> constant.

Uli> At compile time you provide configure with the minimal supported
Uli> kernel version and this will be enforced at runtime.  With Andreas'
Uli> information we can restrict the use of LDT on kernel 2.3.49 and later
Uli> and enable the feature only if such a kernel is the minimum
Uli> requirement.

Not on 2.3.49 - on something > 2.3.48 and < 2.3.99.  Let's go for
2.3.99 to be on the save side.

Btw. the kernel check is not working (Here's my email from some weeks
ago again):
If I compile the current glibc 2.2 CVS version with
--enable-kernel=2.3.48 and try to run it on a Linux 2.2.14 system, I
get the following error:

$ elf/ld.so --library-path . /bin/ls
/bin/ls: error while loading shared libraries: /bin/ls: cannot stat shared object: Error 38

strace reveals that fstat64 is called:
open("/bin/ls", O_RDONLY)               = 3
SYS_197(0x3, 0xbffff0ec, 0x8, 0x8, 0x3) = -1 ENOSYS (Function not implemented)
close(3)                                = 0
write(2, "/bin/ls", 7/bin/ls)                  = 7

fstat64 seems to be called via the fstat call in
sysdeps/unix/sysv/linux/i386/fstat.c from the dynamic linker.

sysdeps/unix/sysv/linux/init-first.c has a check for the kernel
version and reports "too old kernel" - but this check happens too
late.  Is there any chance to move this earlier?

Andreas
-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.inka.de

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]