On 11/10/2024 9:24 PM, Olga Kornievskaia wrote:
On Sat, Nov 9, 2024 at 4:10 PM Jeff Layton <jlayton@xxxxxxxxxx> wrote:
Sounds like a client-side capacity issue? nfs4_callback_recall()
returns NFS4ERR_DELAY when nfs_delegation_find_inode() returns -EAGAIN.
Maybe there is something weird going on there? Eventually the server
has no choice but to revoke an unreturned delegation.
I'm not trying to imply in any matter that there is a problem with
either server or client side. I'm simply trying to state that there
was a theory that having multiple cb_table slots would help in the
case of having a lot of recalled/revoked state. What I'm finding is
that it doesn't seem so (and possibly makes things just slightly
slower. But no measures were taken so my focus is elsewhere).
We should definitely understand this! I'd say that supporting multiple
slots is worthwhile and should be merged if stable.
But if they're no better performance-wise, we're missing something.
There's got to be something else serializing them.
Tom.