From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Trond Myklebust <trond.myklebust@fys.uio.no>
Cc: Mark Fasheh <mark.fasheh@oracle.com>,
Linux Memory Management <linux-mm@kvack.org>,
linux-fsdevel@vger.kernel.org,
linux-kernel <linux-kernel@vger.kernel.org>,
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>,
Andrew Morton <akpm@google.com>
Subject: Re: Status of buffered write path (deadlock fixes)
Date: Wed, 13 Dec 2006 12:56:40 +1100 [thread overview]
Message-ID: <457F5DD8.3090909@yahoo.com.au> (raw)
In-Reply-To: <1165974458.5695.17.camel@lade.trondhjem.org>
Trond Myklebust wrote:
> On Wed, 2006-12-13 at 11:53 +1100, Nick Piggin wrote:
>
>
>>Not silly -- I guess that is the main sticking point. Luckily *most*
>>!uptodate pages will be ones that we have newly allocated so will
>>not be in pagecache yet.
>>
>>If it is in pagecache, we could do one of a number of things: either
>>remove it or try to bring it uptodate ourselves. I'm not yet sure if
>>either of these actions will cause other problems, though :P
>>
>>If both of those are really going to cause problems, then we could
>>solve this in a more brute force way (assuming that !uptodate, locked
>>pages, in pagecache at this point are very rare -- AFAIKS these will
>>only be caused by IO errors?). We could allocate another, temporary
>>page and copy the contents into there first, then into the target
>>page after the prepare_write.
>
>
> We are NOT going to mandate read-modify-write behaviour on
> prepare_write()/commit_write(). That would be a completely unnecessary
> slowdown for write-only workloads on NFS.
Note that these pages should be *really* rare. Definitely even for normal
filesystems I think RMW would use too much bandwidth if it were required
for any significant number of writes.
I don't want to mandate anything just yet, so I'm just going through our
options. The first two options (remove, and RMW) are probably trickier
than they need to be, given the 3rd option available (temp buffer). Given
your input, I'm increasingly thinking that the best course of action would
be to fix this with the temp buffer and look at improving that later if it
causes a noticable slowdown.
Thanks,
Nick
--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2006-12-13 1:56 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-05 6:52 Nick Piggin
2006-12-07 19:55 ` Mark Fasheh
2006-12-08 3:28 ` Nick Piggin
2006-12-08 23:48 ` Mark Fasheh
2006-12-11 9:11 ` Nick Piggin
2006-12-11 14:20 ` Nick Piggin
2006-12-11 15:52 ` Nick Piggin
2006-12-11 16:12 ` Steven Whitehouse
2006-12-11 16:39 ` Nick Piggin
2006-12-11 17:18 ` Steven Whitehouse
2006-12-12 22:31 ` Mark Fasheh
2006-12-13 0:53 ` Nick Piggin
2006-12-13 1:47 ` Trond Myklebust
2006-12-13 1:56 ` Nick Piggin [this message]
2006-12-13 2:31 ` Trond Myklebust
2006-12-13 4:03 ` Nick Piggin
2006-12-13 12:21 ` Trond Myklebust
2006-12-13 13:49 ` Peter Staubach
2006-12-13 13:55 ` Trond Myklebust
2006-12-11 18:17 ` OGAWA Hirofumi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=457F5DD8.3090909@yahoo.com.au \
--to=nickpiggin@yahoo.com.au \
--cc=akpm@google.com \
--cc=hirofumi@mail.parknet.co.jp \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mark.fasheh@oracle.com \
--cc=trond.myklebust@fys.uio.no \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox