From: Zach Brown <zach.brown@oracle.com>
To: linux-fsdevel@vger.kernel.org
Cc: Christoph Hellwig <hch@infradead.org>, David Chinner <dgc@sgi.com>
Subject: [RFC] fs io with struct page instead of iovecs
Date: Tue, 6 Nov 2007 17:43:27 -0800 [thread overview]
Message-ID: <11943998113245-git-send-email-zach.brown@oracle.com> (raw)
At the FS meeting at LCE there was some talk of doing O_DIRECT writes from the
kernel with pages instead of with iovecs. This patch series explores one
direction we could head in to achieve this.
We obviously can't just translate user iovecs (which might represent more
memory than the machine has) to pinned pages and pass page struct pointers all
the way down the stack.
And we don't want to duplicate a lot of the generic FS machinery down a
duplicate path which works with pages instead of iovecs.
So this patch series heads in the direction of abstracting out the memory
argument to the read and write calls. It's still based on segments, but we
hide that it's either iovecs or arrays of page pointers from the callers in the
rw stack.
I didn't go too nuts with the syntactic sugar. This is just intended to show
the basic mechanics. We can obviously pretty it up if we think this is a sane
thing to be doing.
The series builds but has never been run.
What do people (that's you, Christoph) think? I'm flexible.
next reply other threads:[~2007-11-07 1:43 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-07 1:43 Zach Brown [this message]
2007-11-07 1:43 ` [PATCH 1/4] struct rwmem: an abstraction of the memory argument to read/write Zach Brown
2007-11-07 1:43 ` [PATCH 2/4] dio: use rwmem to work with r/w memory arguments Zach Brown
2007-11-07 1:43 ` [PATCH 3/4] add rwmem type backed by pages Zach Brown
2007-11-07 1:43 ` [PATCH 4/4] add dio interface for page/offset/len tuples Zach Brown
2007-11-07 16:50 ` [RFC] fs io with struct page instead of iovecs Badari Pulavarty
2007-11-07 17:02 ` Zach Brown
2007-11-07 20:44 ` David Chinner
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=11943998113245-git-send-email-zach.brown@oracle.com \
--to=zach.brown@oracle.com \
--cc=dgc@sgi.com \
--cc=hch@infradead.org \
--cc=linux-fsdevel@vger.kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).