[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070307100911.GO18774@holomorphy.com>
Date: Wed, 7 Mar 2007 02:09:11 -0800
From: Bill Irwin <bill.irwin@...cle.com>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Bill Irwin <bill.irwin@...cle.com>, Ingo Molnar <mingo@...e.hu>,
Nick Piggin <npiggin@...e.de>,
Linux Memory Management <linux-mm@...ck.org>,
Linux Kernel <linux-kernel@...r.kernel.org>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
"Paolo 'Blaisorblade' Giarrusso" <blaisorblade@...oo.it>
Subject: Re: [patch 4/6] mm: merge populate and nopage into fault (fixes nonlinear)
On Wed, 7 Mar 2007 01:29:03 -0800 Bill Irwin <bill.irwin@...cle.com> wrote:
>> Guess what major real-life application not only uses nonlinear daily
>> but would even be very happy to see it extended with non-vma-creating
>> protections and more?
On Wed, Mar 07, 2007 at 01:39:42AM -0800, Andrew Morton wrote:
> uh-oh. SQL server?
Close enough. ;)
On Wed, 7 Mar 2007 01:29:03 -0800 Bill Irwin <bill.irwin@...cle.com> wrote:
>> It's not terribly typical for things to be
>> truncated while remap_file_pages() is doing its work, though it's been
>> proposed as a method of dynamism. It won't stress remap_file_pages() vs.
>> truncate() in any meaningful way, though, as userspace will be rather
>> diligent about clearing in-use data out of the file offset range to be
>> truncated away anyway, and all that via O_DIRECT.
On Wed, Mar 07, 2007 at 01:39:42AM -0800, Andrew Morton wrote:
> The problem here isn't related to truncate or direct-IO. It's just
> plain-old MAP_SHARED. nonlinear VMAs are now using the old-style
> dirty-memory management. msync() is basically a no-op and the code is
> wildly tricky and pretty much untested. The chances that we broke it are
> considerable.
This would be of concern for swapping out tmpfs-backed nonlinearly-
mapped files under extreme stress in Oracle's case, though it's rather
typical for it all to be mlock()'d in-core and cases where that's
necessary to be considered grossly underprovisioned. As far as I know,
msync() is not used to manage the nonlinearly-mapped objects, which are
most typically expected to be memory-backed, rendering writeback to
disk of questionable value. Also quite happily, I'm not aware of any
data integrity issues it would explain. Bug though it may be, it
requires a usage model very rarely used by Oracle to trigger, so we've
not run into it.
-- wli
-
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