[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YxbtF1O8+kXhTNaj@infradead.org>
Date: Mon, 5 Sep 2022 23:47:51 -0700
From: Christoph Hellwig <hch@...radead.org>
To: John Hubbard <jhubbard@...dia.com>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Jens Axboe <axboe@...nel.dk>,
Alexander Viro <viro@...iv.linux.org.uk>,
Miklos Szeredi <miklos@...redi.hu>,
Christoph Hellwig <hch@...radead.org>,
"Darrick J . Wong" <djwong@...nel.org>,
Trond Myklebust <trond.myklebust@...merspace.com>,
Anna Schumaker <anna@...nel.org>, Jan Kara <jack@...e.cz>,
David Hildenbrand <david@...hat.com>,
Logan Gunthorpe <logang@...tatee.com>,
linux-block@...r.kernel.org, linux-fsdevel@...r.kernel.org,
linux-xfs@...r.kernel.org, linux-nfs@...r.kernel.org,
linux-mm@...ck.org, LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 4/7] iov_iter: new iov_iter_pin_pages*() routines
I'd it one step back. For BVECS we never need a get or pin. The
block layer already does this, an the other callers should as well.
For KVEC the same is true. For PIPE and xarray as you pointed out
we can probably just do the pin, it is not like these are performance
paths.
So, I'd suggest to:
- factor out the user backed and bvec cases from
__iov_iter_get_pages_alloc into helper just to keep
__iov_iter_get_pages_alloc readable.
- for the pin case don't use the existing bvec helper at all, but
copy the logic for the block layer for not pinning.
Powered by blists - more mailing lists