Thread (48 messages) flat view 48 messages, 25 authors, 2019-01-22

Re: Can we drop upstream Linux x32 support?

From: Richard Weinberger <richard@nod.at>
Date: 2018-12-14 15:18:08
Also in: lkml

Am Freitag, 14. Dezember 2018, 15:38:53 CET schrieb David Laight:
From: Richard Weinberger
quoted
Sent: 13 December 2018 09:05
On Thu, Dec 13, 2018 at 6:03 AM Kevin Easton [off-list ref] wrote:
quoted
On Tue, Dec 11, 2018 at 11:29:14AM +0100, John Paul Adrian Glaubitz wrote:
...
quoted
I can't say anything about the syscall interface. However, what I do know
is that the weird combination of a 32-bit userland with a 64-bit kernel
interface is sometimes causing issues. For example, application code usually
expects things like time_t to be 32-bit on a 32-bit system. However, this
isn't the case for x32 which is why code fails to build.
OpenBSD and NetBSD both have 64-bit time_t on 32-bit systems and have
had for four or five years at this point.
They can also do flag-day changes and break existing applications, Linux not.
Not true at all.
The binary compatibility in NetBSD is probably better than that in Linux
and goes back a long way.

For the time_t changes new system calls numbers were assigned where needed.
The system headers and libc were updated so that recompiled code would
use the new system calls.

The only real advantage that NetBSD has is that its libc (and standard
utilities) are released with the kernel making it much easier to get
applications to use the new features.

This was also done a very long time ago when file offsets were extended
to 64 bits.

Some of the system calls have quite a few 'compatibility' versions.
As well as the ones for emulations of other operating systems.
It has been possible to run copies of firefox compiled for Linux
under NetBSD.
I stand corrected, I was under the impression that NetBSD went the same
path as OpenBSD did. Thanks for pointing this out.

Thanks,
//richard
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help