pNFS/flexfiles: Fix list corruption if the mirror count changes
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Mon, 22 Jun 2020 19:04:15 +0000 (15:04 -0400)
committerSasha Levin <sashal@kernel.org>
Tue, 30 Jun 2020 19:37:12 +0000 (15:37 -0400)
commit02917bef8f1b08cde7027446177c5cb288456f99
tree29ca0d654fa55ad9ec77f75ce52a22b4e5a43167
parent7b99577ff376d58addf149eebe0ffff46351b3d7
pNFS/flexfiles: Fix list corruption if the mirror count changes

commit 8b04013737341442ed914b336cde866b902664ae upstream.

If the mirror count changes in the new layout we pick up inside
ff_layout_pg_init_write(), then we can end up adding the
request to the wrong mirror and corrupting the mirror->pg_list.

Fixes: d600ad1f2bdb ("NFS41: pop some layoutget errors to application")
Cc: stable@vger.kernel.org
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/nfs/flexfilelayout/flexfilelayout.c