Re: [RFC] Documentation about unaligned memory access

From: Johannes Berg
Date: Mon Nov 26 2007 - 10:48:41 EST



> Going back to an earlier example:
> void myfunc(u8 *data, u32 value)
> {
> [...]
> *((u16 *) data) = cpu_to_le32(value);
> [...]

typo? should it be a u32 cast?

> To avoid the unaligned memory access, you could rewrite it as follows:
>
> void myfunc(u8 *data, u32 value)
> {
> [...]
> value = cpu_to_le32(value);
> memcpy(data, value, sizeof(value));
> [...]
> }

I think you should use put_unaligned here as well. Or maybe just reorder
this vs. the section below where you use get/put_unaligned.

johannes

Attachment: signature.asc
Description: This is a digitally signed message part