Chris Wedgwood writes:
> What kind of packing makes a 32-bit value take 8-bytes on any
> currently supported archicture? The worst-case I can think of is
> 7-bytes in the case of misaligned by 3 (e.g. __attribute__((packed))
> struct blah { char foo[3]; long bar }; sort of thing).
If you have this:
struct {
u32 foo;
void *bar;
};
"bar" will be at offset 8 on a 64-bit platforms since it must be
aligned on a 64-byte boundary, so what Jes is saying is that for:
struct {
dma_addr_t foo;
void *bar;
};
the "dma_addr_t" is already consuming 8 bytes of space on 64-bit
systems.
Later,
David S. Miller
davem@redhat.com
-
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/
This archive was generated by hypermail 2b29 : Sun Jul 15 2001 - 21:00:15 EST