Skip to content

Commit bd018b9

Browse files
committed
SUNRPC: Revert 5f7fc5d
Guillaume says: > I believe commit 5f7fc5d ("SUNRPC: Resupply rq_pages from > node-local memory") in Linux 6.5+ is incorrect. It passes > unconditionally rq_pool->sp_id as the NUMA node. > > While the comment in the svc_pool declaration in sunrpc/svc.h says > that sp_id is also the NUMA node id, it might not be the case if > the svc is created using svc_create_pooled(). svc_created_pooled() > can use the per-cpu pool mode therefore in this case sp_id would > be the cpu id. Fix this by reverting now. At a later point this minor optimization, and the deceptive labeling of the sp_id field, can be revisited. Reported-by: Guillaume Morin <guillaume@morinfr.org> Closes: https://lore.kernel.org/linux-nfs/ZYC9rsno8qYggVt9@bender.morinfr.org/T/#u Fixes: 5f7fc5d ("SUNRPC: Resupply rq_pages from node-local memory") Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1 parent 1227561 commit bd018b9

File tree

1 file changed

+2
-3
lines changed

1 file changed

+2
-3
lines changed

net/sunrpc/svc_xprt.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -654,9 +654,8 @@ static bool svc_alloc_arg(struct svc_rqst *rqstp)
654654
}
655655

656656
for (filled = 0; filled < pages; filled = ret) {
657-
ret = alloc_pages_bulk_array_node(GFP_KERNEL,
658-
rqstp->rq_pool->sp_id,
659-
pages, rqstp->rq_pages);
657+
ret = alloc_pages_bulk_array(GFP_KERNEL, pages,
658+
rqstp->rq_pages);
660659
if (ret > filled)
661660
/* Made progress, don't sleep yet */
662661
continue;

0 commit comments

Comments
 (0)