Skip to content
  • David Howells's avatar
    UAPI: fix endianness conditionals in linux/acct.h · 29ba06b9
    David Howells authored
    
    
    In the UAPI header files, __BIG_ENDIAN and __LITTLE_ENDIAN must be
    compared against __BYTE_ORDER in preprocessor conditionals where these are
    exposed to userspace (that is they're not inside __KERNEL__ conditionals).
    
    However, in the main kernel the norm is to check for
    "defined(__XXX_ENDIAN)" rather than comparing against __BYTE_ORDER and
    this has incorrectly leaked into the userspace headers.
    
    The definition of ACCT_BYTEORDER in linux/acct.h is wrong in this way.
    Note that userspace will likely interpret this incorrectly as the
    big-endian variant on little-endian machines - depending on header
    inclusion order.
    
    [!!!] NOTE [!!!]  This patch may adversely change the userspace API.  It might
    be better to fix the value of ACCT_BYTEORDER.
    
    Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    29ba06b9