Skip to content
  • Al Viro's avatar
    [PATCH] mod_devicetable.h fixes · 9e2d3cd3
    Al Viro authored
    
    
     * ieee1394_device_id has kernel_ulong_t field after an odd number of
       __u32 ones.  Since mod_devicetable.h is included both from kernel and
       from host build helper, we may be in trouble if we are building on
       32bit host for 64bit target - userland sees unsigned long long,
       kernel sees unsigned long and while their sizes match, alignments
       might not.  Fixed by forcing alignment.  Fortunately, almost nobody
       else needs that - the rest of such fields is naturally aligned as it
       is.
    
     * of_device_id has void * in it.  Host userland helpers need
       kernel_ulong_t instead, since their void * might have nothing to do
       with the kernel one.  Fixed in the same way it's done for similar
       problems in pcmcia_device_id (ifdef __KERNEL__).
    
     * pcmcia_device_id has the same problem as ieee1394_device_id.  Fixed
       the same way.
    
    Signed-off-by: default avatarAl Viro <viro@parcelfarce.linux.theplanet.co.uk>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    9e2d3cd3