Trond Myklebust a073dbff35 NFSv4.1: Fix a race in pNFS layoutcommit
We need to clear the NFS_LSEG_LAYOUTCOMMIT bits atomically with the
NFS_INO_LAYOUTCOMMIT bit, otherwise we may end up with situations
where the two are out of sync.
The first half of the problem is to ensure that pnfs_layoutcommit_inode
clears the NFS_LSEG_LAYOUTCOMMIT bit through pnfs_list_write_lseg.
We still need to keep the reference to those segments until the RPC call
is finished, so in order to make it clear _where_ those references come
from, we add a helper pnfs_list_write_lseg_done() that cleans up after
pnfs_list_write_lseg.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Acked-by: Benny Halevy <bhalevy@tonian.com>
Cc: stable@vger.kernel.org
2013-03-21 10:31:19 -04:00
..
2012-12-06 00:30:44 +01:00
2013-02-22 23:31:31 -05:00
2012-12-20 22:19:42 +00:00
2013-03-02 16:46:07 -08:00
2012-10-02 08:17:02 -07:00
2012-07-30 19:06:41 -04:00
2013-02-22 23:31:31 -05:00
2012-07-30 19:06:46 -04:00
2013-02-22 23:31:31 -05:00
2012-07-30 19:06:52 -04:00
2013-02-24 10:07:36 -05:00
2013-02-22 23:31:31 -05:00