Messages in this thread | | | From | Arnd Bergmann <> | Subject | Re: [PATCH] Fix/add raw1394 CONFIG_COMPAT code | Date | Sun, 20 May 2007 01:55:25 +0200 |
| |
On Monday 07 May 2007, Petr Vandrovec wrote: > +struct raw1394_cycle_timer32 { > + __u32 cycle_timer; > + __u64 local_time; > +} __attribute__((packed));
Note that this data structure only needs conversion on x86_64 and ia64, but not on powerpc and other 64 bit architectures that align __u64 also in 32 bit mode.
I would suggest you introduce a new __compat_u64 type as
typedef __u64 __compat_u64 __attribute__((aligned(4)));
in include/asm-{x86_64,ia64}/compat.h and as
typdef __u64 __compat_u64;
in the other architectures. Other people have hit the same problem before and found varying workarounds, but I think we should just do it correctly now.
Arnd <>< - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |