Re: [RFC] Documentation about unaligned memory access

Johannes Berg
2007-11-26T15:48:36Z

[-- Attachment #1: Type: text/plain, Size: 555 bytes --]

> 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 #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 828 bytes --]