Subject: remove (more or less) unnecessary cacheline_aligned from module_ref
Date: Sun, 11 Jan 2009 22:18:41 -0500
From: Kyle McMartin <kyle@infradead.org>

On x86_64 systems with CONFIG_MAXSMP set, NR_CPUS is exploded to 4096
cpus. This cacheline_aligned attribute on the local_t in module_ref
results in struct module bloating to over 512KB in size on x86_64, which
tends to, er, add up. This results in insane disk usage on distro
kernel configs (1GB+ on Fedora.)

Killing cacheline_aligned reduces the size of struct module to somewhat
more sane levels.

Signed-off-by: Kyle McMartin <kyle@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
---
 include/linux/module.h |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/linux/module.h b/include/linux/module.h
index 4f7ea12..32b0bda 100644
--- a/include/linux/module.h
+++ b/include/linux/module.h
@@ -222,7 +222,7 @@ void *__symbol_get_gpl(const char *symbol);
 struct module_ref
 {
 	local_t count;
-} ____cacheline_aligned;
+};
 
 enum module_state
 {
