All of lore.kernel.org
 help / color / mirror / Atom feed
From: Al Viro <viro@ZenIV.linux.org.uk>
To: Christoph Hellwig <hch@lst.de>
Cc: Ming Lei <ming.lei@canonical.com>, Jens Axboe <axboe@fb.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Maxim Patlasov <mpatlasov@parallels.com>
Subject: Re: [PATCH 0/3] block: loop: switch to VFS ITER_BVEC
Date: Tue, 31 Mar 2015 23:22:48 +0100	[thread overview]
Message-ID: <20150331222247.GK29656@ZenIV.linux.org.uk> (raw)
In-Reply-To: <20150325152748.GB12366@lst.de>

On Wed, Mar 25, 2015 at 04:27:48PM +0100, Christoph Hellwig wrote:
> On Wed, Mar 25, 2015 at 03:23:48PM +0800, Ming Lei wrote:
> > > -       mm_segment_t old_fs = get_fs();
> > > +
> > > +       iov_iter_bvec(&i, ITER_BVEC, bvec, 1, bvec->bv_len);
> > >
> > >         file_start_write(file);
> > > -       set_fs(get_ds());
> > > -       bw = file->f_op->write(file, buf, len, &pos);
> > > -       set_fs(old_fs);
> > > +       bw = vfs_iter_write(file, &i, ppos);
> > 
> > This patch moves to support ->read_iter/->write_iter only, which
> > might cause regression for backing file without defining read/write
> > iter callback.
> 
> ->read_iter/->write_iter is the main fs I/O path - by the time this is
> ready ->aio_read/->aio_write should be gone.

Umm...  FWIW, it's not about ->aio_write - that conversion is practically
complete; nothing with ->aio_write != NULL is plausible for backing store
of /dev/loop anyway.  Regression in question is about the files that
have ->write(), but no ->write_iter().  Most of that won't be usable as
backing store, but there are some exceptions:
	* ncpfs regular files.  Ought to be switched to {read,write}_iter -
it's a pretty mechanical work, I'll do that.  Only marginally useful,
but what the hell - why not do it right?
	* coda.  Ought to switch to ->..._iter() and demand _its_ backing
store to have those.  Trivial, will do.
	* 9p.  Cthulhu-awful mess.  The trouble is, we'd need to support
ITER_BVEC ones down in p9_client_write().  I'm actually trying to do that
right now; if it works, this regression will become a non-issue.

  reply	other threads:[~2015-03-31 22:22 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-22  8:14 [PATCH 0/3] block: loop: switch to VFS ITER_BVEC Ming Lei
2015-03-22  8:14 ` [PATCH 1/3] block: loop: use kmap(page) instead of page_address(page) Ming Lei
2015-03-24 10:29   ` Christoph Hellwig
2015-03-24 10:49     ` Ming Lei
2015-03-24 11:09       ` Christoph Hellwig
2015-03-24 11:24         ` Ming Lei
2015-03-22  8:14 ` [PATCH 2/3] block: loop: unify interface type of lo_send and lo_receive Ming Lei
2015-03-24 10:30   ` Christoph Hellwig
2015-03-24 10:55     ` Ming Lei
2015-03-22  8:14 ` [PATCH 3/3] block: loop: use vfs ITER_BVEC to read/write backing file Ming Lei
2015-03-24 10:31   ` Christoph Hellwig
2015-03-24 11:01     ` Ming Lei
2015-03-24 10:32 ` [PATCH 0/3] block: loop: switch to VFS ITER_BVEC Christoph Hellwig
2015-03-24 10:53   ` Ming Lei
2015-03-24 18:01     ` Christoph Hellwig
2015-03-25  7:23       ` Ming Lei
2015-03-25 15:27         ` Christoph Hellwig
2015-03-31 22:22           ` Al Viro [this message]
2015-04-04  5:20           ` Al Viro
2015-04-07 16:23             ` Christoph Hellwig

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=20150331222247.GK29656@ZenIV.linux.org.uk \
    --to=viro@zeniv.linux.org.uk \
    --cc=axboe@fb.com \
    --cc=hch@lst.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ming.lei@canonical.com \
    --cc=mpatlasov@parallels.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.