* Linus Torvalds <torvalds@linux-foundation.org> wrote:no real reason that i can recall - i guess nobody dared to touch it because it used to have that 'volatile', indicating black voodoo ;-) Now that the bad stigma has been removed, we could try the patch below. It boots fine here, and we save 1K of kernel text size: text data bss dec hex filename 6236003 611992 401408 7249403 6e9dfb vmlinux.before 6235075 611992 401408 7248475 6e9a5b vmlinux.after I can understand why no data is saved by this change: gcc is aligning the next field to a natural boundary anyway and we dont really have arrays of spinlocks (fortunately). [and we save no data even if using the ((packed)) attribute.] Perhaps some data structure that is never in the kernel image itself still got smaller? Any good way to determine that? But why is the text size different? Ah: i think it's spin_lock_init() getting shorter :-) but this is certainly not something for 2.6.22, it's an early 2.6.23 matter i suspect. Ingo -------------------> From: Ingo Molnar <mingo@elte.hu> Subject: [patch] spinlocks i386: change them to byte fields all spinlock ops are on byte operands, so change the spinlock field to be unsigned char. This saves a bit of kernel text size: text data bss dec hex filename 6236003 611992 401408 7249403 6e9dfb vmlinux.before 6235075 611992 401408 7248475 6e9a5b vmlinux.after Signed-off-by: Ingo Molnar <mingo@elte.hu> --- include/asm-i386/spinlock_types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: linux/include/asm-i386/spinlock_types.h =================================================================== --- linux.orig/include/asm-i386/spinlock_types.h +++ linux/include/asm-i386/spinlock_types.h @@ -6,7 +6,7 @@ #endif typedef struct { - unsigned int slock; + unsigned char slock; } raw_spinlock_t; #define __RAW_SPIN_LOCK_UNLOCKED { 1 } -
| Junio C Hamano | [ANNOUNCE] GIT 1.6.0 |
| Linus Torvalds | Re: [ANNOUNCE] mdb: Merkey's Linux Kernel Debugger 2.6.27-rc4 released |
| Bart Van Assche | Integration of SCST in the mainstream Linux kernel |
| Paul Menage | Re: [RFC][PATCH 6/7] Account for the number of tasks within container |
git: | |
| Nicolas Pitre | Re: pack operation is thrashing my server |
| Scott Chacon | Git Community Book |
| Greg KH | Re: [ANNOUNCE] pg - A patch porcelain for GIT |
| Lars Hjemli | [PATCH] git-merge: add option --no-ff |
| GVG GVG | ssh_exchange_identification: Connection closed by remote host |
| Nick Guenther | Re: Real men don't attack straw men |
| Travers Buda | Re: Important OpenBSD errata |
| Gregory Edigarov | How to re-build openssl with SHA1 support? |
| Al Boldi | [RFC] VM: I have a dream... |
| Dave Kleikamp | Re: [RFC] Heads up on sys_fallocate() |
| Jörn | Review status (Re: [PATCH] LogFS take three) |
| Chris Mason | [ANNOUNCE] Btrfs v0.12 released |
