]> git.karo-electronics.de Git - linux-beck.git/commit
pNFS: Fix a deadlock between read resends and layoutreturn
authorTrond Myklebust <trond.myklebust@primarydata.com>
Sun, 27 Nov 2016 20:12:39 +0000 (15:12 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 9 Jan 2017 07:32:25 +0000 (08:32 +0100)
commitba15defe1807ff546ab4d14beb2f9602789c0170
tree20288e15fc4b004dbc1a116fe2f1ebc70923be13
parente523ce8c99f9bbd530fda7d46c35409fee88a50f
pNFS: Fix a deadlock between read resends and layoutreturn

commit 54e4a0dfa25d9365c4e80a639e80d9213eb6edbe upstream.

We must not call nfs_pageio_init_read() on a new nfs_pageio_descriptor
while holding a reference to a layout segment, as that can deadlock
pnfs_update_layout().

Fixes: d67ae825a59d6 ("pnfs/flexfiles: Add the FlexFile Layout Driver")
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/nfs/flexfilelayout/flexfilelayout.c
fs/nfs/pnfs.c