diff options
author | Fred Isaman <fred.isaman@gmail.com> | 2016-09-30 14:37:41 -0400 |
---|---|---|
committer | Trond Myklebust <trond.myklebust@primarydata.com> | 2016-12-08 21:49:57 -0500 |
commit | 65990d1afbd2d6fc23c6ecbd6f1899aa760a024f (patch) | |
tree | 3a18ac67020a08d0e7aec06158902b10f0644c4f /Documentation | |
parent | 2f065ddb64193ebf9cd600395d4782287cd0f58e (diff) |
pNFS/flexfiles: Fix a deadlock on LAYOUTGET
We encountered a deadlock where the SEQUENCE that accompanied the
LAYOUTGET triggered a session drain, while ff_layout_alloc_lseg
triggered a GETDEVICEINFO. The GETDEVICEINFO hung waiting for the
session drain, while the LAYOUTGET held the slot waiting for
alloc_lseg to finish.
Avoid this by moving the call to nfs4_find_get_deviceid out of
ff_layout_alloc_lseg and into nfs4_ff_layout_prepare_ds.
Signed-off-by: Fred Isaman <fred.isaman@gmail.com>
[dros@primarydata.com: pNFS/flexfiles: fix races in ff_layout_mirror_valid]
Signed-off-by: Weston Andros Adamson <dros@primarydata.com>
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'Documentation')
0 files changed, 0 insertions, 0 deletions