On Friday 13 November 2015 17:10:44 Arnd Bergmann wrote: > On Friday 13 November 2015 07:38:49 Andrew Pinski wrote: > > On Fri, Nov 13, 2015 at 7:34 AM, Arnd Bergmann <a...@arndb.de> wrote: > > > On Thursday 12 November 2015 14:47:18 Andreas Schwab wrote: > > >> Arnd Bergmann <a...@arndb.de> writes: > > >> > > >> > On Thursday 12 November 2015 10:44:55 Andreas Schwab wrote: > > >> >> Arnd Bergmann <a...@arndb.de> writes: > > >> >> > > >> >> > What do you mean with 32-bit off_t? > > >> >> > > >> >> An ABI with 32-bit off_t, ie. all currently implemented 32-bit ABIs. > > >> >> > > >> >> > Do you mean that glibc emulates a 32-bit off_t on top of the 64-bit > > >> >> > __kernel_loff_t? > > >> >> > > >> >> Glibc is bridging the user-space ABI to the kernel ABI. > > >> > > > >> > Ok, but why? > > >> > > >> That's how the ABI is defined right now. I didn't make that up. > > > > > > Ok, I guess it will remain a mystery then. > > > > The biggest question is here is how much compatibility do we want with > > other 32bit ABIs? > > Do we want off_t to be 32bit or 64bit? > > I would much prefer off_t to be defined as __kernel_loff_t unconditionally, > with no support for _FILE_OFFSET_BITS == 32. This is at least what I had > in mind when I wrote the asm-generic/unistd.h header. > > We should probably find out what happened for the other glibc ports that > were implemented for the architectures using this. It's possible that > there was a good reason for supporting _FILE_OFFSET_BITS == 32 at the > time, but I can't think of one and maybe it is one that is no longer > valid. > > Do you know what x86/x32 does for off_t? Do they also implement both > _FILE_OFFSET_BITS == 32 and _FILE_OFFSET_BITS == 64 on top of the > 64-bit __kernel_off_t?
I just did a little bit of digging through glibc history and found that Chris Metcalf added the files that are now in sysdeps/unix/sysv/linux/generic/wordsize-32/ and that provide the implementation for 32-bit off_t in glibc on top of the 64-bit __kernel_off_t. Chris, do you remember what led to that? Do you think we still need to have 32-bit off_t on all new architectures, or could we move on to making 64-bit off_t the default when adding a port? Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/