Re: [PATCH v3 3/5] nfs: Introduce nfs_release_request_list helper
Pranjal Shrivastava <[email protected]> Mon, 20 Jul 2026 15:03:35 +0000
| Newsgroups | gmane.linux.kernel,gmane.linux.nfs,gmane.linux.kernel.pci,gmane.linux.drivers.rdma |
|---|---|
| Message-ID | <[email protected]> |
On Mon, Jul 20, 2026 at 03:28:09PM +0530, Shivaji Kant wrote: > On Mon, Jul 20, 2026 at 2:45 PM Christoph Hellwig <[email protected]> wrote: > > > > On Wed, Jul 15, 2026 at 02:35:38PM +0000, Pranjal Shrivastava wrote: > > > Introduce a centralized helper, nfs_release_request_list, to handle > > > the bulk release of nfs_page requests from a list. > > > > > > This serves as a preparatory step for two upcoming improvements: > > > > > > 1. Pin-Aware Cleanup: As we migrate to iov_iter_extract_* API, > > > requests will hold pins (GUP) instead of standard references. The > > > helper ensures that the correct unpinning logic gets applied > > > consistently across all requests in a list. > > > > > > 2. Folio Support: In subsequent patches where nfs_page structures > > > will cover multi-page folios, this helper provides a clean > > > infrastructure to unlock these larger units of I/O in bulk during > > > completion, similat to the pattern in bio_release_pages. > > nit: similar -> similar > Ack. Fixing it, > > > +/* > > > + * nfs_release_request_list - Release a list of NFS read/write requests > > > + * @head: list of requests to release > > > + * > > > + * Removes each request from the list and drops it's refcount. > > > + */ > > > +void nfs_release_request_list(struct list_head *head) > > > +{ > > > + struct nfs_page *req; > > > + > > > + while (!list_empty(head)) { > > > + req = nfs_list_entry(head->next); > > > > req could/should be local here. Or you switch to list_first_or_null, > > which some folks prefer. > > > > > +extern void nfs_release_request(struct nfs_page *req); > > > +extern void nfs_release_request_list(struct list_head *head); > > > > Please drop the superflous externs for new code. > > > > Small nit + fix christoph's comment, > else looks ok > > Reviewed-by: Shivaji Kant <[email protected]> Thanks, Praan