diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2013-01-27 14:20:49 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2013-01-30 17:45:14 -0500 |
commit | edd2e36fe8bd3cec4fa67e746d4c4a9246d0830e (patch) | |
tree | d44df6639a2431212bcb50f6117ba7b1083dc67d /fs/nfs/nfs4state.c | |
parent | ab225417825963b6dc66be7ea80f94ac1378dfdf (diff) | |
download | lwn-edd2e36fe8bd3cec4fa67e746d4c4a9246d0830e.tar.gz lwn-edd2e36fe8bd3cec4fa67e746d4c4a9246d0830e.zip |
SUNRPC: When changing the queue priority, ensure that we change the owner
This fixes a livelock in the xprt->sending queue where we end up never
making progress on lower priority tasks because sleep_on_priority()
keeps adding new tasks with the same owner to the head of the queue,
and priority bumps mean that we keep resetting the queue->owner to
whatever task is at the head of the queue.
Regression introduced by commit c05eecf636101dd4347b2d8fa457626bf0088e0a
(SUNRPC: Don't allow low priority tasks to pre-empt higher priority ones).
Reported-by: Andy Adamson <andros@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4state.c')
0 files changed, 0 insertions, 0 deletions