diff options
author | David Miller <davem@davemloft.net> | 2011-02-13 16:37:07 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-02-17 15:37:05 -0800 |
commit | d845c588162145fa6fa7bf49bd07f3fb7e767c5a (patch) | |
tree | b92db4fc9d5ca92287b09327e0cd7e70746c3d33 | |
parent | 018f58922d74c64c8b9f48cb0f336d715ae00078 (diff) | |
download | linux-stable-d845c588162145fa6fa7bf49bd07f3fb7e767c5a.tar.gz linux-stable-d845c588162145fa6fa7bf49bd07f3fb7e767c5a.tar.bz2 linux-stable-d845c588162145fa6fa7bf49bd07f3fb7e767c5a.zip |
klist: Fix object alignment on 64-bit.
commit 795abaf1e4e188c4171e3cd3dbb11a9fcacaf505 upstream.
Commit c0e69a5bbc6f ("klist.c: bit 0 in pointer can't be used as flag")
intended to make sure that all klist objects were at least pointer size
aligned, but used the constant "4" which only works on 32-bit.
Use "sizeof(void *)" which is correct in all cases.
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Jesper Nilsson <jesper.nilsson@axis.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | include/linux/klist.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/klist.h b/include/linux/klist.h index e91a4e59b771..a370ce57cf1d 100644 --- a/include/linux/klist.h +++ b/include/linux/klist.h @@ -22,7 +22,7 @@ struct klist { struct list_head k_list; void (*get)(struct klist_node *); void (*put)(struct klist_node *); -} __attribute__ ((aligned (4))); +} __attribute__ ((aligned (sizeof(void *)))); #define KLIST_INIT(_name, _get, _put) \ { .k_lock = __SPIN_LOCK_UNLOCKED(_name.k_lock), \ |