summaryrefslogtreecommitdiff
path: root/fs/dax.c
diff options
context:
space:
mode:
authorDarrick J. Wong <darrick.wong@oracle.com>2016-09-19 10:26:25 +1000
committerDave Chinner <david@fromorbit.com>2016-09-19 10:26:25 +1000
commit385d655861d221bb43ae69a9cfa9adbefe31ad00 (patch)
treedfca3c3c000bed9dcabddc6fea374aa8611f27f2 /fs/dax.c
parentc611cc0360cd924448c23ccd70ce8be703fcb4a6 (diff)
downloadlinux-385d655861d221bb43ae69a9cfa9adbefe31ad00.tar.gz
linux-385d655861d221bb43ae69a9cfa9adbefe31ad00.tar.xz
xfs: defer should allow ->finish_item to request a new transaction
When xfs_defer_finish calls ->finish_item, it's possible that (refcount) won't be able to finish all the work in a single transaction. When this happens, the ->finish_item handler should shorten the log done item's list count, update the work item to reflect where work should continue, and return -EAGAIN so that defer_finish knows to retain the pending item on the pending list, roll the transaction, and restart processing where we left off. Plumb in the code and document how this mechanism is supposed to work. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Diffstat (limited to 'fs/dax.c')
0 files changed, 0 insertions, 0 deletions