lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sun, 23 Dec 2007 12:12:15 +0000 From: Christoph Hellwig <hch@...radead.org> To: Ingo Molnar <mingo@...e.hu> Cc: Andrew Morton <akpm@...ux-foundation.org>, linux-kernel@...r.kernel.org, Glauber de Oliveira Costa <gcosta@...hat.com> Subject: Re: 2.6.24-rc6-mm1 On Sun, Dec 23, 2007 at 12:57:35PM +0100, Ingo Molnar wrote: > > * Andrew Morton <akpm@...ux-foundation.org> wrote: > > > Still. The crash is 100% repeatable and is the same every time. > > Happens on both my i386 test boxes. > > > > http://userweb.kernel.org/~akpm/config-sony.txt > > http://userweb.kernel.org/~akpm/config-vmm.txt > > > > and I bisected it down to e3c1b141. > > ok, can reproduce it - the patch below fixes it for me. > > Ingo > > -------------------------> > Subject: x86: fix system gate related crash > From: Ingo Molnar <mingo@...e.hu> > > on 32-bit, system gates are traps. > > on 64-bit, they are interrupts (which disable hardirqs). > > Signed-off-by: Ingo Molnar <mingo@...e.hu> > --- > include/asm-x86/desc.h | 4 ++++ > 1 file changed, 4 insertions(+) > > Index: linux-x86.q/include/asm-x86/desc.h > =================================================================== > --- linux-x86.q.orig/include/asm-x86/desc.h > +++ linux-x86.q/include/asm-x86/desc.h > @@ -310,7 +310,11 @@ static inline void set_trap_gate(unsigne > static inline void set_system_gate(unsigned int n, void *addr) > { > BUG_ON((unsigned)n > 0xFF); > +#ifdef CONFIG_X86_32 > + _set_gate(n, GATE_TRAP, addr, 0x3, 0, __KERNEL_CS); > +#else > _set_gate(n, GATE_INTERRUPT, addr, 0x3, 0, __KERNEL_CS); > +#endif > } > This would be a lot cleaner with entirely separate implementations of set_system_gate for 32 vs 64 bit. Especially if the file already has a large ifdef block for 32 vs 64 already. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists