Re: [Ksummit-discuss] (Resend) 2038 Kernel Summit Discussion Fodder

From: Catalin Marinas
Date: Wed Aug 13 2014 - 05:19:17 EST


On Wed, Aug 13, 2014 at 02:37:11AM +0100, Andy Lutomirski wrote:
> On Tue, Aug 12, 2014 at 6:33 PM, <josh@xxxxxxxxxxxxxxxx> wrote:
> > On Tue, Aug 12, 2014 at 05:08:53PM -0700, John Stultz wrote:
> >> A more aggressive version of the previous proposal is what Iâm calling the
> >> âNew Virtual-Architectureâ approach, basically extending the versioning
> >> control from the linker down into the kernel as well. It would be adding a
> >> new âvirtual-architectureâ to the kernel, not entirely unlike how x32 is
> >> supported on x86_64 systems. We would create entirely new ABI and
> >> architecture name in the kernel (think something like âarmlltâ or
> >> âi386lltâ). We would preserve compatibility for legacy applications via
> >> personalities, similar mechanism as the compat_ interface used to support
> >> 32bit applications on 64bit kernels. In this case, we wouldnât introduce
> >> new 64 bit syscalls in the kernel, as the existing interfaces would just be
> >> typed correctly for our new virtual architecture, but we would have
> >> duplicate syscall interfaces via the compat interfaces. The extra
> >> complexity would also be that we would have to support new 32bit compat
> >> environment on 64bit systems. Userspace would be completely rebuilt to
> >> support the new -llt architecture, and compatibility for legacy
> >> applications would be done via the same multiarch packaging as is done now
> >> for running 32bit applications on 64bit systems.
> >
> > I wonder: could we make this new architecture effectively use the
> > signatures of the 64-bit syscalls (similar to x32), just with a 32-bit
> > calling convention?
>
> Doesn't x32 do the reverse? It invokes *compat* syscalls using a
> 64-bit calling convention.

Not entirely. It uses 64-bit syscalls primarily with compat only when
sharing structures containing pointers. We are working on something
similar for arm64 (called the ILP32 ABI).

--
Catalin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/