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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0612171744360.3479@woody.osdl.org>
Date:	Sun, 17 Dec 2006 17:57:57 -0800 (PST)
From:	Linus Torvalds <torvalds@...l.org>
To:	Andrew Morton <akpm@...l.org>
cc:	andrei.popa@...eo.ro,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	Peter Zijlstra <a.p.zijlstra@...llo.nl>,
	Hugh Dickins <hugh@...itas.com>,
	Florian Weimer <fw@...eb.enyo.de>,
	Marc Haber <mh+linux-kernel@...schlus.de>,
	Martin Michlmayr <tbm@...ius.com>
Subject: Re: 2.6.19 file content corruption on ext3


[ Replying to myself - a sure sign that I don't get out enough ]

On Sun, 17 Dec 2006, Linus Torvalds wrote:
> 
> So I don't actually see any serialization at all that would keep a random 
> page from being paged back in.

We do actually serialize, but we do it _after_ the page has already been 
mapped back. Ie we do it for the dirty page case at rthe end of 
do_wp_page() and do_no_page() when we do the "set_page_dirty_balance()", 
but that's potentially too late - we've already mapped the page read-write 
into the address space.

That said, this means that only threaded apps should ever trigger any 
problems, which would seem to make it unlikely that this is the issue.

But Andrew: I don't think it's necessarily true that 
"try_to_free_buffers()" callers have all unmapped the page.

That seems to be true for vmscan.c (ie the shrink_page_list -> 
try_to_release_page -> try_to_release_buffers callchain), but what about 
the other callchains (through filesystems, or through "pagevec_strip()" or 
similar?) That pagevec_strip() is called from shrink_active_list(), I 
don't see that unmapping the pages..

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