Re: VM: Fix nasty and subtle race in shared mmap'ed page writeback

From: Nick Piggin
Date: Sat Dec 30 2006 - 22:59:22 EST


Andrea Gelmini wrote:
On Fri, Dec 29, 2006 at 06:59:02PM +0000, Linux Kernel Mailing List wrote:

Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7658cc289288b8ae7dd2c2224549a048431222b3
Commit: 7658cc289288b8ae7dd2c2224549a048431222b3
Parent: 3bf8ba38f38d3647368e4edcf7d019f9f8d9184a
Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxx>
AuthorDate: Fri Dec 29 10:00:58 2006 -0800
Committer: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxx>
CommitDate: Fri Dec 29 10:00:58 2006 -0800

VM: Fix nasty and subtle race in shared mmap'ed page writeback


With 2.6.20-rc2-git1, which contain this patch, I have no more Berkeley
DB corruption with Klibido.
I'm afraid a lot of software project switched to Sqlite, from BDB,
because the bug this patch fix (ie. http://bogofilter.sourceforge.net/).
I've also thought, since years, it was an userland problem.

This bug was only introduced in 2.6.19, due to a change that caused pte
dirty bits to be discarded without a subsequent set_page_dirty() (nowhere
else in the kernel should have done this).

So if your corruption is years old, then it must be something else.
Maybe it is hidden by a timing change, or BDB isn't using msync properly.

--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/