ioctl ABI considerations for 64b ARM?
nicolas.pitre at linaro.org
Mon Sep 19 16:04:50 UTC 2011
On Mon, 19 Sep 2011, Rob Clark wrote:
> On Mon, Sep 19, 2011 at 10:39 AM, Will Deacon <will.deacon at arm.com> wrote:
> > Arnd,
> > On Mon, Sep 19, 2011 at 08:15:45AM +0100, Arnd Bergmann wrote:
> >> Assuming that we can prevent any funny stuff from going into such an ABI,
> >> we only need to worry about the warts of the current ABI for ARM specific
> >> considerations. The one thing that I've noticed before is that structs
> >> on ARM (at least on one of the ABIs, forgot which) are padded to 32 bits,
> >> even if all members inside are smaller.
> > This is only the case for the old ABI. EABI lays out structures so that they
> > are aligned to their most aligned member and padded to be the smallest
> > possible multiple of that alignment which can contain all of their aligned
> > members.
> Hmm, so then since you can build the kernel w/ OABI compatibility, it
> seems like structs should always have padding fields to force them to
> be a multiple of 32bits...
Depends what you want to achieve. The OABI compat is there only to
allow _most_ old binaries to execute on a modern system. When I wrote
that code, I left out ioctl ABI compatibility issues because there are
simply too many of them, and in practice the most often used ones just
work already. A notable exception is ALSA.
So at this point I think there is no point caring too much about the
More information about the linaro-dev