summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorBenjamin Coddington <bcodding@redhat.com>2016-08-22 14:11:16 -0400
committerTrond Myklebust <trond.myklebust@primarydata.com>2016-08-23 11:41:38 -0400
commit41963c10c47a35185e68cb9049f7a3493c94d2d7 (patch)
treea561ace1f94987e1a66cf15d2f218b386bdd8487 /net
parentb88fa69eaa8649f11828158c7b65c4bcd886ebd5 (diff)
downloadlinux-41963c10c47a35185e68cb9049f7a3493c94d2d7.tar.gz
linux-41963c10c47a35185e68cb9049f7a3493c94d2d7.tar.bz2
linux-41963c10c47a35185e68cb9049f7a3493c94d2d7.zip
pnfs/blocklayout: update last_write_offset atomically with extents
Block/SCSI layout write completion may add committable extents to the extent tree before updating the layout's last-written byte under the inode lock. If a sync happens before this value is updated, then prepare_layoutcommit may find and encode these extents which would produce a LAYOUTCOMMIT request whose encoded extents are larger than the request's loca_length. Fix this by using a last-written byte value that is updated atomically with the extent tree so that commitable extents always match. Signed-off-by: Benjamin Coddington <bcodding@redhat.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'net')
0 files changed, 0 insertions, 0 deletions