fs: introduce write_begin, write_end, and perform_write aops
These are intended to replace prepare_write and commit_write with more
flexible alternatives that are also able to avoid the buffered write
deadlock problems efficiently (which prepare_write is unable to do).
[
[email protected]: API design contributions, code review and fixes]
[
[email protected]: various fixes]
[
[email protected]: new aop block_write_begin fix]
Signed-off-by: Nick Piggin <[email protected]>
Signed-off-by: Mark Fasheh <[email protected]>
Signed-off-by: Dmitriy Monakhov <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>