ach. So that's wrong anyway. There are arches which can't DMA stack
memory. So fixing this properly does not fix just your arch.
Okay. A packed struct with a u8 followed by u16 which is required by the
spec can't be fixed. unaligned helper is the only solution. I agree here.
Allocating memory on the stack for a dma transfer is wrong.
On PowerPC and X86 get_unaligned() does not behave any different than a
normal dereference. So I doubt that there is a performance improvement.
Having a fixup in the exception handler like sparc does is probably little
slower than the fixup here. On the other hand you would not have to fix
unaligned access anymore.
Sebastian
--