module: struct module_ref should contains long fields
authorEric Dumazet <eric.dumazet@gmail.com>
Thu, 12 Jan 2012 23:02:14 +0000 (09:02 +1030)
committerRusty Russell <rusty@rustcorp.com.au>
Thu, 12 Jan 2012 23:02:14 +0000 (09:02 +1030)
commitbd77c04772da38fca510c81f78e51f727123b919
tree8554b40191d3d5adebbd2461d26450c0ed7295d4
parent48fd11880b5ef04270be8a87d9a9a9ee2fdae338
module: struct module_ref should contains long fields

module_ref contains two "unsigned int" fields.

Thats now too small, since some machines can open more than 2^32 files.

Check commit 518de9b39e8 (fs: allow for more than 2^31 files) for
reference.

We can add an aligned(2 * sizeof(unsigned long)) attribute to force
alloc_percpu() allocating module_ref areas in single cache lines.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
CC: Rusty Russell <rusty@rustcorp.com.au>
CC: Tejun Heo <tj@kernel.org>
CC: Robin Holt <holt@sgi.com>
CC: David Miller <davem@davemloft.net>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
include/linux/module.h
kernel/debug/kdb/kdb_main.c
kernel/module.c