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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090120100946.GA7886@elte.hu>
Date:	Tue, 20 Jan 2009 11:09:46 +0100
From:	Ingo Molnar <mingo@...e.hu>
To:	Nick Piggin <npiggin@...e.de>
Cc:	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	Linus Torvalds <torvalds@...ux-foundation.org>
Subject: Re: [patch] x86: optimise page fault entry


* Nick Piggin <npiggin@...e.de> wrote:

> Hi,
> 
> Sorry for the delay with this. The kernel ended up unbootable for me 
> when I last dusted off the patch, so I couldn't test it and then 
> promptly got sidetracked with other things.
> 
> Anyway, this one is tested with a boot, some basic segfault sigbus etc 
> tests, and passes various of the mmap and mprotect etc. ltp tests.
> 
> Ingo, would you merge this into the x86 tree, please? (unless Linus has 
> any objections to this version)

-tip testing found a 32-bit boot regression, caused by this patch. The 
bootup hangs early, during the WP write-test check:

[    0.004000]       .data : 0xc0691f05 - 0xc09c746c   (3285 kB)
[    0.004000]       .text : 0xc0100000 - 0xc0691f05   (5703 kB)
[    0.004000] Checking if this processor honours the WP bit even in supervisor mode...

i've excluded x86/mm from tip/master for now, you can find the broken tree 
in the tip/tip.x86.mm.broken [v2.6.29-rc2-1069-g583f1b9] branch that i 
just pushed out:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git tip.x86.mm.broken

Also, a patch structure sidenote, the diffstat is rather large:

 arch/x86/mm/fault.c |  436 ++++++++++++++++++++++++++++++---------------------
 1 files changed, 255 insertions(+), 181 deletions(-)

this shuffles 300 lines of highly critical x86 code around - which makes 
me nervous. A finegrained, bisectable series would be far more debuggable. 
Had we such a lineup i could have auto-bisected it for you already - while 
now you have to see which bit of the ~500 lines of code flux broke the 
32-bit WP test.

This hang might be easy to find and fix (the WP detect logic is simple), 
but other failure modes might be less debuggable and this codepath deals 
with a lot of obscure details like CPU errata. So it would be really nice 
to have a finegrained splitup of this patch.

Three separate testsystems triggered this hang so it should be readily 
reproducible.

Thanks,

	Ingo
--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ