From: Chuck Lever <chuck.lever@xxxxxxxxxx> On Mon, 18 Nov 2024 09:54:34 -0500, Jeff Layton wrote: > nfsd currently only uses a single slot in the callback channel, which is > proving to be a bottleneck in some cases. Widen the callback channel to > a max of 32 slots (subject to the client's target_maxreqs value). > > Change the cb_holds_slot boolean to an integer that tracks the current > slot number (with -1 meaning "unassigned"). Move the callback slot > tracking info into the session. Add a new u32 that acts as a bitmap to > track which slots are in use, and a u32 to track the latest callback > target_slotid that the client reports. To protect the new fields, add > a new per-session spinlock (the se_lock). Fix nfsd41_cb_get_slot to always > search for the lowest slotid (using ffs()). > > [...] Applied to nfsd-next for v6.13, thanks! [1/1] nfsd: allow for up to 32 callback session slots commit: a47e0534dc9cc3f9ee7c914cfddd6912855b5d61 -- Chuck Lever