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


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

Re: Problem with new ld.so.cache format on 64-bit machines


>>>>> David Huggins-Daines writes:

 > There's a design flaw in the way ld.so in glibc 2.2 handles the
 > transition between the old ld.so.cache format and the new one.

 > Specifically, the new style cache is placed immediately following the
 > old style cache in /etc/ld.so.cache.

 > This is wrong because it means that, if there are an odd number of
 > libraries in the old style cache, it will not be aligned on an 8-byte
 > boundary, since struct file_entry is 12 bytes.

 > Since struct file_entry_new contains a field of type unsigned long,
 > every single time a dynamic executable is loaded on Alpha with glibc
 > 2.2, at least one unaligned exception occurs (and a message is printed
 > to the console).

 > I suggest that the new style cache always be aligned to
 > sizeof(unsigned long) in the file.
Can you send a patch that works for you on alpha, please?

Thanks,
Andreas
-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.rhein-neckar.de

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