diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2008-02-08 02:03:04 +0300 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-04-17 19:40:46 +0400 |
commit | 28d23128814dca9b90f04739b12f967f4248c584 (patch) | |
tree | 13ddc8ea51fcfb5168bab5ec536bc1f11a44888c /arch/x86/ia32 | |
parent | 52b387197beb5c89f734f057553fdf7d417b448c (diff) | |
download | linux-28d23128814dca9b90f04739b12f967f4248c584.tar.xz |
x86: reducing debuginfo size by removing unneeded includes
I found it strange that the struct sk_buff definition was found
inside the DWARF debugging sections in the generated object, so I verified
and found that there is no need for the files that bring struct sk_buff
definition into this file and verified also that sk_buff is not brought
in indirectly too, thru other headers.
I went on and removed many other unneeded includes and the end
result is:
[acme@doppio net-2.6]$ l /tmp/sys_ia32.o.before /tmp/sys_ia32.o.after
-rw-rw-r-- 1 acme acme 185240 2008-02-06 19:19 /tmp/sys_ia32.o.after
-rw-rw-r-- 1 acme acme 248328 2008-02-06 19:00 /tmp/sys_ia32.o.before
Almost 64KB only on this object file!
There were no other side effects from this change:
[acme@doppio net-2.6]$ objcopy -j "text" /tmp/sys_ia32.o.before /tmp/text.before
[acme@doppio net-2.6]$ objcopy -j "text" /tmp/sys_ia32.o.after /tmp/text.after
[acme@doppio net-2.6]$ md5sum /tmp/text.before /tmp/text.after
b7ac9b17942add68494e698e4f965d36 /tmp/text.before
b7ac9b17942add68494e698e4f965d36 /tmp/text.after
One of the complaints about using tools such as systemtap is
that one has to install the huge kernel-debuginfo package:
[acme@doppio net-2.6]$ rpm -q --qf "%{size}\n" kernel-rt-debuginfo
471737710
543867594
[acme@doppio net-2.6]$
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/ia32')
-rw-r--r-- | arch/x86/ia32/sys_ia32.c | 26 |
1 files changed, 1 insertions, 25 deletions
diff --git a/arch/x86/ia32/sys_ia32.c b/arch/x86/ia32/sys_ia32.c index abf71d26fc2a..44d931f08414 100644 --- a/arch/x86/ia32/sys_ia32.c +++ b/arch/x86/ia32/sys_ia32.c @@ -26,51 +26,27 @@ #include <linux/file.h> #include <linux/signal.h> #include <linux/syscalls.h> -#include <linux/resource.h> #include <linux/times.h> #include <linux/utsname.h> -#include <linux/smp.h> #include <linux/smp_lock.h> -#include <linux/sem.h> -#include <linux/msg.h> #include <linux/mm.h> -#include <linux/shm.h> -#include <linux/slab.h> #include <linux/uio.h> -#include <linux/nfs_fs.h> -#include <linux/quota.h> -#include <linux/module.h> -#include <linux/sunrpc/svc.h> -#include <linux/nfsd/nfsd.h> -#include <linux/nfsd/cache.h> -#include <linux/nfsd/xdr.h> -#include <linux/nfsd/syscall.h> #include <linux/poll.h> #include <linux/personality.h> #include <linux/stat.h> -#include <linux/ipc.h> #include <linux/rwsem.h> -#include <linux/binfmts.h> -#include <linux/init.h> -#include <linux/aio_abi.h> -#include <linux/aio.h> #include <linux/compat.h> #include <linux/vfs.h> #include <linux/ptrace.h> #include <linux/highuid.h> -#include <linux/vmalloc.h> -#include <linux/fsnotify.h> #include <linux/sysctl.h> #include <asm/mman.h> #include <asm/types.h> #include <asm/uaccess.h> #include <asm/semaphore.h> #include <asm/atomic.h> -#include <asm/ldt.h> - -#include <net/scm.h> -#include <net/sock.h> #include <asm/ia32.h> +#include <asm/vgtod.h> #define AA(__x) ((unsigned long)(__x)) |