From: Arjan van de Ven Incremental fix attached; basically I added a field in the middle of the thread_info struct, where the 4g/4g patch has a cleanup to autogenerate the offsets within this struct. Without that cleanup it goes boom. Fix is to move the new field to the end. --- 25-akpm/include/asm-i386/thread_info.h | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff -puN include/asm-i386/thread_info.h~4k-stacks-4g4g-interaction-fix include/asm-i386/thread_info.h --- 25/include/asm-i386/thread_info.h~4k-stacks-4g4g-interaction-fix 2004-03-21 20:53:00.284519576 -0800 +++ 25-akpm/include/asm-i386/thread_info.h 2004-03-21 20:53:00.286519272 -0800 @@ -32,9 +32,6 @@ struct thread_info { __u32 cpu; /* current CPU */ __s32 preempt_count; /* 0 => preemptable, <0 => BUG */ - unsigned long previous_esp; /* ESP of the previous stack in case - of nested (IRQ) stacks - */ mm_segment_t addr_limit; /* thread address space: 0-0xBFFFFFFF for user-thead @@ -42,6 +39,9 @@ struct thread_info { */ struct restart_block restart_block; + unsigned long previous_esp; /* ESP of the previous stack in case + of nested (IRQ) stacks + */ __u8 supervisor_stack[0]; }; _