aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/write.c
AgeCommit message (Expand)AuthorFilesLines
2024-03-16Merge tag 'nfs-for-6.9-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-5/+1
2024-03-09nfs: fix UAF in direct writesJosef Bacik1-1/+1
2024-03-09NFS: remove sync_mode test from nfs_writepage_locked()NeilBrown1-4/+0
2024-02-05nfs: adapt to breakup of struct file_lockJeff Layton1-3/+2
2024-02-05filelock: split common fields into struct file_lock_coreJeff Layton1-0/+1
2024-02-05nfs: convert to using new filelock helpersJeff Layton1-2/+2
2024-01-10Merge tag 'nfs-for-6.8-1' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds1-11/+0
2024-01-04nfs: Remove writepageMatthew Wilcox (Oracle)1-11/+0
2023-11-21fs: Rename mapping private membersMatthew Wilcox (Oracle)1-6/+6
2023-10-22NFSv4/pnfs: Allow layoutget to return EAGAIN for softerr mountsTrond Myklebust1-0/+2
2023-10-11NFS: Fix potential oops in nfs_inode_remove_request()Scott Mayhew1-1/+3
2023-09-28nfs: decrement nrequests counter before releasing the reqJeff Layton1-1/+1
2023-09-13NFS: Use the correct commit info in nfs_join_page_group()Trond Myklebust1-11/+12
2023-02-23Merge tag 'mm-stable-2023-02-20-13-37' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-3/+2
2023-02-22Merge tag 'nfs-for-6.3-1' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds1-186/+194
2023-02-14NFS: Improve tracing of nfs_wb_folio()Trond Myklebust1-2/+2
2023-02-14NFS: Remove unused function nfs_wb_page()Trond Myklebust1-5/+0
2023-02-14NFS: Convert buffered writes to use foliosTrond Myklebust1-173/+177
2023-02-14NFS: Convert the function nfs_wb_page() to use foliosTrond Myklebust1-19/+16
2023-02-14NFS: Add a helper nfs_wb_folio()Trond Myklebust1-0/+13
2023-02-14NFS: Add a helper to convert a struct nfs_page into an inodeTrond Myklebust1-4/+3
2023-02-02fs: convert writepage_t callback to pass a folioMatthew Wilcox (Oracle)1-3/+4
2023-01-11filelock: move file locking definitions to separate header fileJeff Layton1-0/+1
2022-11-30nfs: use locks_inode_context helperJeff Layton1-2/+2
2022-09-12Merge tag 'nfs-for-5.20-3' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-25/+0
2022-09-08NFSv4.2: Update mode bits after ALLOCATE and DEALLOCATEAnna Schumaker1-25/+0
2022-08-22Merge tag 'nfs-for-5.20-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-2/+4
2022-08-13NFS: Fix another fsync() issue after a server rebootTrond Myklebust1-2/+4
2022-08-10Merge tag 'nfs-for-5.20-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-23/+35
2022-08-09NFS: Improve write error tracingTrond Myklebust1-3/+5
2022-08-02NFS: nfs_async_write_reschedule_io must not recurse into the writeback codeTrond Myklebust1-2/+0
2022-08-02mm/migrate: Convert migrate_page() to migrate_folio()Matthew Wilcox (Oracle)1-1/+1
2022-08-02nfs: Convert to migrate_folioMatthew Wilcox (Oracle)1-8/+8
2022-07-23nfs: only issue commit in DIO codepath if we have uncommitted dataJeff Layton1-18/+30
2022-05-31NFSv4.1 mark qualified async operations as MOVEABLE tasksOlga Kornievskaia1-0/+4
2022-05-17NFS: Further fixes to the writeback error handlingTrond Myklebust1-21/+18
2022-05-17NFS: Don't report errors from nfs_pageio_complete() more than onceTrond Myklebust1-8/+1
2022-05-17NFS: Do not report EINTR/ERESTARTSYS as mapping errorsTrond Myklebust1-1/+1
2022-03-29Merge tag 'nfs-for-5.18-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-19/+24
2022-03-22Merge tag 'folio-5.18b' of git://git.infradead.org/users/willy/pagecacheLinus Torvalds1-4/+4
2022-03-22nfs: remove reliance on bdi congestionNeilBrown1-3/+11
2022-03-22NFS: Avoid writeback threads getting stuck in mempool_alloc()Trond Myklebust1-2/+8
2022-03-22NFS: nfsiod should not block forever in mempool_alloc()Trond Myklebust1-15/+9
2022-03-15nfs: Convert from invalidatepage to invalidate_folioMatthew Wilcox (Oracle)1-4/+4
2022-03-13SUNRPC: improve 'swap' handling: scheduling and PF_MEMALLOCNeilBrown1-0/+2
2022-02-25NFS: Use of mapping_set_error() results in spurious errorsTrond Myklebust1-1/+4
2022-02-25NFS: Replace last uses of NFS_INO_REVAL_PAGECACHETrond Myklebust1-1/+1
2022-01-10nfs: Implement cache I/O by accessing the cache directlyDavid Howells1-2/+5
2022-01-10nfs: Convert to new fscache volume/cookie APIDave Wysochanski1-0/+1
2021-10-21NFS: Remove redundant call to __set_page_dirty_nobuffersTrond Myklebust1-2/+0
2021-10-20SUNRPC: Trace calls to .rpc_call_doneChuck Lever1-3/+0
2021-10-20NFS: Fix up commit deadlocksTrond Myklebust1-3/+6
2021-10-10NFS: Fix deadlocks in nfs_scan_commit_list()Trond Myklebust1-15/+2
2021-10-10NFS: Instrument i_size_write()Chuck Lever1-0/+1
2021-10-03NFS: Fix up nfs_ctx_key_to_expire()Trond Myklebust1-13/+28
2021-07-08NFSv4.1 identify and mark RPC tasks that can move between transportsOlga Kornievskaia1-1/+5
2021-04-13NFSv4: Don't modify the change attribute cached in the inodeTrond Myklebust1-3/+0
2021-04-13NFS: Separate tracking of file mode cache validity from the uid/gidTrond Myklebust1-1/+1
2021-04-12NFS: Replace use of NFS_INO_REVAL_PAGECACHE when checking cache validityTrond Myklebust1-1/+1
2021-03-08NFS: Fix open coded versions of nfs_set_cache_invalid()Trond Myklebust1-4/+4
2021-02-16NFS: Add support for eager writesTrond Myklebust1-5/+12
2021-02-08NFS: Optimise sparse writes past the end of fileTrond Myklebust1-8/+12
2020-06-02mm/writeback: discard NR_UNSTABLE_NFS, use NR_WRITEBACK insteadNeilBrown1-2/+2
2020-05-13NFS/pnfs: Don't use RPC_TASK_CRED_NOREF with pnfsTrond Myklebust1-2/+2
2020-04-01NFS: Try to join page groups before an O_DIRECT retransmissionTrond Myklebust1-1/+1
2020-04-01NFS: Refactor nfs_lock_and_join_requests()Trond Myklebust1-66/+98
2020-04-01NFS: Clean up nfs_lock_and_join_requests()Trond Myklebust1-71/+20
2020-04-01NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests()Trond Myklebust1-2/+8
2020-04-01NFS: Fix a page leak in nfs_destroy_unlinked_subrequests()Trond Myklebust1-0/+1
2020-03-27NFS: Fix O_DIRECT commit verifier handlingTrond Myklebust1-2/+1
2020-03-26NFS/pNFS: Refactor pnfs_generic_commit_pagelist()Trond Myklebust1-4/+9
2020-03-16NFS: Assume cred is pinned by open context in I/O requestsTrond Myklebust1-1/+1
2020-01-15NFS: When resending after a short write, reset the reply count to zeroTrond Myklebust1-0/+2
2020-01-15NFS: Clean up generic file commit tracepointTrond Myklebust1-1/+1
2020-01-15NFS: Clean up generic writeback tracepointsTrond Myklebust1-4/+2
2020-01-15NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes()Trond Myklebust1-1/+3
2020-01-15NFS: Revalidate the file mapping on all fatal writeback errorsTrond Myklebust1-3/+4
2020-01-15NFS: Revalidate the file size on a fatal write errorTrond Myklebust1-0/+8
2020-01-15NFS: Introduce trace events triggered by page writeback errorsChuck Lever1-0/+3
2019-10-02nfs: Fix nfsi->nrequests count error on nfs_inode_remove_requestZhangXiaoxu1-2/+3
2019-08-27NFS: remove set but not used variable 'mapping'YueHaibing1-2/+0
2019-08-26NFS: Fix writepage(s) error handling to not report errors twiceTrond Myklebust1-8/+13
2019-08-26NFS: Fix spurious EIO read errorsTrond Myklebust1-12/+0
2019-08-19NFS: On fatal writeback errors, we need to call nfs_inode_remove_request()Trond Myklebust1-0/+3
2019-07-06NFS: Clean up writeback codeTrond Myklebust1-5/+2
2019-05-21treewide: Add SPDX license identifier for missed filesThomas Gleixner1-0/+1
2019-04-25NFS: Add a helper to return a pointer to the open context of a struct nfs_pageTrond Myklebust1-9/+11
2019-04-25pNFS: Add tracking to limit the number of pNFS retriesTrond Myklebust1-0/+5
2019-04-25NFS: Remove unused argument from nfs_create_request()Trond Myklebust1-1/+1
2019-04-25NFS: Replace custom error reporting mechanism with generic oneTrond Myklebust1-18/+22
2019-04-25NFS: Don't call generic_error_remove_page() while holding locksTrond Myklebust1-2/+1
2019-04-25NFS: Don't interrupt file writeout due to fatal errorsTrond Myklebust1-1/+1
2019-02-20NFS: Fix up documentation warningsTrond Myklebust1-1/+0
2019-02-20NFS: Ensure NFS writeback allocations don't recurse back into NFS.Trond Myklebust1-1/+6
2019-02-20NFS: Pass error information to the pgio error cleanup routineTrond Myklebust1-2/+9
2019-02-12NFS: Don't use page_file_mapping after removing the pageBenjamin Coddington1-5/+6
2019-01-29NFS: Fix up return value on fatal errors in nfs_page_async_flush()Trond Myklebust1-4/+5
2019-01-02Merge tag 'nfs-for-4.21-1' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds1-3/+21
2018-12-28mm: convert totalram_pages and totalhigh_pages variables to atomicArun KS1-1/+1
2018-12-19NFS/NFSD/SUNRPC: replace generic creds with 'struct cred'.NeilBrown1-1/+1
2018-12-19NFS: move credential expiry tracking out of SUNRPC into NFS.NeilBrown1-3/+21
2018-07-26NFS: Ensure we immediately start writeback on rescheduled writesTrond Myklebust1-0/+2
2018-05-31NFS: Move call to nfs4_state_protect() to nfs4_commit_setup()Anna Schumaker1-4/+1
2018-05-31NFS: Move call to nfs4_state_protect_write() to nfs4_write_setup()Anna Schumaker1-4/+1
2018-04-12Merge tag 'nfs-for-4.17-1' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds1-2/+6
2018-04-10NFSv4: Declare the size up to date after it was set.Trond Myklebust1-0/+1
2018-04-10NFS: More fine grained attribute trackingTrond Myklebust1-2/+5
2018-04-02Merge branch 'sched-wait-for-linus' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-3/+3
2018-03-20sched/wait, fs/nfs: Convert wait_on_atomic_t() usage to the new wait_var_even...Peter Zijlstra1-3/+3
2018-03-08NFS: Fix unstable write completionTrond Myklebust1-40/+43
2018-01-30Merge tag 'nfs-for-4.16-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-0/+2
2018-01-29Merge tag 'iversion-v4.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-5/+3
2018-01-29nfs: convert to new i_version APIJeff Layton1-5/+3
2018-01-14NFS: Add a cond_resched() to nfs_commit_release_pages()Trond Myklebust1-0/+2
2017-12-15nfs: don't wait on commit in nfs_commit_inode() if there were no commit requestsScott Mayhew1-0/+2
2017-11-17nfs/write: Use common error handling code in nfs_lock_and_join_requests()Markus Elfring1-8/+9
2017-09-11NFS: various changes relating to reporting IO errors.NeilBrown1-7/+0
2017-09-11NFS: Add static NFS I/O tracepointsChuck Lever1-0/+7
2017-09-09NFS: Count the bytes of skipped subrequests in nfs_lock_and_join_requests()Trond Myklebust1-1/+5
2017-09-09NFS: Don't hold the group lock when calling nfs_release_request()Trond Myklebust1-1/+1
2017-09-09NFS: Remove pnfs_generic_transfer_commit_list()Trond Myklebust1-0/+2
2017-09-09NFS: nfs_lock_and_join_requests and nfs_scan_commit_list can deadlockTrond Myklebust1-4/+11
2017-09-06NFS: don't expect errors from mempool_alloc().NeilBrown1-4/+2
2017-08-20Merge branch 'bugfixes'Trond Myklebust1-1/+1
2017-08-20NFS: Remove unused parameter gfp_flags from nfs_pageio_init()Trond Myklebust1-1/+1
2017-08-15NFS: Wait for requests that are locked on the commit listTrond Myklebust1-4/+13
2017-08-15NFS: Switch to using mapping->private_lock for page writeback lookups.Trond Myklebust1-11/+16
2017-08-15NFS: Use an atomic_long_t to count the number of commitsTrond Myklebust1-5/+7
2017-08-15NFS: Use an atomic_long_t to count the number of requestsTrond Myklebust1-13/+5
2017-08-15NFSv4: Use a mutex to protect the per-inode commit listsTrond Myklebust1-12/+12
2017-08-15NFS: Refactor nfs_page_find_head_request()Trond Myklebust1-12/+30
2017-08-15NFSv4: Convert nfs_lock_and_join_requests() to use nfs_page_find_head_request()Trond Myklebust1-15/+20
2017-08-15NFS: Fix up nfs_page_group_covers_page()Trond Myklebust1-12/+6
2017-08-15NFS: Remove unused parameter from nfs_page_group_lock()Trond Myklebust1-3/+3
2017-08-15NFS: Remove nfs_page_group_clear_bits()Trond Myklebust1-26/+3
2017-08-15NFS: Fix nfs_page_group_destroy() and nfs_lock_and_join_requests() race casesTrond Myklebust1-29/+29
2017-08-15NFS: Further optimise nfs_lock_and_join_requests()Trond Myklebust1-27/+18
2017-08-15NFS: Reduce inode->i_lock contention in nfs_lock_and_join_requests()Trond Myklebust1-18/+22
2017-08-15NFS: Remove page group limit in nfs_flush_incompatible()Trond Myklebust1-2/+0
2017-08-15NFS: Teach nfs_try_to_update_request() to deal with request page_groupsTrond Myklebust1-40/+20
2017-08-15NFS: Fix the inode request accounting when pages have subrequestsTrond Myklebust1-12/+15
2017-08-15NFS: Don't unlock writebacks before declaring PG_WB_ENDTrond Myklebust1-4/+4
2017-08-15NFS: Don't check request offset and size without holding a lockTrond Myklebust1-12/+12
2017-08-15NFS: Fix an ABBA issue in nfs_lock_and_join_requests()Trond Myklebust1-12/+17
2017-08-15NFS: Fix a reference and lock leak in nfs_lock_and_join_requests()Trond Myklebust1-2/+1
2017-08-15NFS: Reduce lock contention in nfs_try_to_update_request()Trond Myklebust1-5/+3
2017-08-15NFS: Reduce lock contention in nfs_page_find_head_request()Trond Myklebust1-3/+5
2017-08-15NFS: Simplify page writebackTrond Myklebust1-20/+10
2017-07-13NFS: Fix commit policy for non-blocking calls to nfs_write_inode()Trond Myklebust1-1/+1
2017-07-13NFS: Ensure we commit after writeback is completeTrond Myklebust1-0/+57
2017-05-10Merge tag 'nfs-for-4.12-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-65/+56
2017-05-08NFS append COMMIT after synchronous COPYOlga Kornievskaia1-30/+0
2017-04-26NFSv4: Don't special case "launder"Trond Myklebust1-16/+11
2017-04-25NFS: Don't write back further requests if there is a pending write errorTrond Myklebust1-4/+21
2017-04-20nfs: Convert to separately allocated bdiJan Kara1-7/+6
2017-04-20NFS: move rw_mode to nfs_pageio_headerBenjamin Coddington1-3/+5
2017-04-20NFS: Fix use after free in write error pathFred Isaman1-1/+1
2017-04-20NFS: fix usage of mempools.NeilBrown1-14/+21
2017-03-17NFS: fix the fault nrequests decreasing for nfs_inode COPYKinglong Mee1-2/+4
2017-02-08nfs: no PG_private waiters remain, remove wakerNicholas Piggin1-2/+0
2017-01-30sunrpc & nfs: Add and use dprintk_cont macrosJoe Perches1-3/+3
2016-12-24Replace <asm/uaccess.h> with <linux/uaccess.h> globallyLinus Torvalds1-1/+1
2016-12-01NFS: discard nfs_lockowner structure.NeilBrown1-1/+1
2016-12-01NFS: remove l_pid field from nfs_lockownerNeilBrown1-2/+1
2016-10-07mm: remove page_file_indexHuang Ying1-2/+2
2016-07-30Merge tag 'nfs-for-4.8-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-16/+28
2016-07-28mm: move most file-based accounting to the nodeMel Gorman1-1/+1
2016-07-24Merge branch 'writeback'Trond Myklebust1-13/+20
2016-07-22nfs: don't create zero-length requestsBenjamin Coddington1-1/+4
2016-07-19sunrpc: move NO_CRKEY_TIMEOUT to the auth->au_flagsScott Mayhew1-2/+4
2016-07-05NFSv4.2: Fix writeback races in nfs4_copy_file_rangeTrond Myklebust1-0/+18
2016-07-05NFS: Fix O_DIRECT verifier problemsTrond Myklebust1-1/+1
2016-06-22NFS: writepage of a single page should not be synchronousTrond Myklebust1-1/+1
2016-06-22NFS: Kill NFS_INO_NFS_INO_FLUSHING: it is a performance killerTrond Myklebust1-11/+0
2016-05-25nfs: avoid race that crashes nfs_init_commitWeston Andros Adamson1-0/+4
2016-05-25NFS: checking for NULL instead of IS_ERR() in nfs_commit_file()Dan Carpenter1-2/+2
2016-05-17NFS: Reclaim writes via writepage are opportunisticTrond Myklebust1-2/+1
2016-05-17NFS: Add nfs_commit_file()Anna Schumaker1-4/+37
2016-05-09NFS: Save struct inode * inside nfs_commit_info to clarify usage of i_lockDave Wysochanski1-8/+8
2016-04-04mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macrosKirill A. Shutemov1-2/+2
2016-01-21NFS: Simplify nfs_request_add_commit_list() argumentsAnna Schumaker1-4/+3
2016-01-07Merge branch 'bugfixes'Trond Myklebust1-3/+1
2016-01-07NFS: Use wait_on_atomic_t() for unlock after readaheadBenjamin Coddington1-8/+0
2016-01-04Merge branch 'pnfs_generic'Trond Myklebust1-38/+50
2015-12-31NFS: Relax requirements in nfs_flush_incompatibleTrond Myklebust1-1/+2
2015-12-31NFSv4.1/pNFS: Don't queue up a new commit if the layout segment is invalidTrond Myklebust1-0/+9
2015-12-31NFS: Allow multiple commit requests in flight per fileTrond Myklebust1-37/+33
2015-12-31NFS/pNFS: Fix up pNFS write reschedule layering violations and bugsTrond Myklebust1-0/+6
2015-12-28nfs: only remove page from mapping if launder_page failsPeng Tao1-16/+23
2015-12-28nfs: handle request add failure properlyPeng Tao1-1/+21
2015-12-28NFS: Flush reclaim writes using FLUSH_COND_STABLETrond Myklebust1-1/+1
2015-12-28NFS: Background flush should not be low priorityTrond Myklebust1-2/+0
2015-10-21NFSv4.1/pnfs: Retry through MDS when getting bad length of dataKinglong Mee1-0/+7
2015-10-02NFS: Fix a write performance regressionTrond Myklebust1-1/+1
2015-10-02NFS: Fix up page writeback accountingTrond Myklebust1-6/+6
2015-09-20NFS: Do cleanup before resetting pageio read/write to mdsKinglong Mee1-0/+3
2015-08-17NFS: Rename nfs_commit_unstable_pages() to nfs_write_inode()Anna Schumaker1-6/+1
2015-08-10NFSv4.1/pnfs: Fix atomicity of commit list updatesTrond Myklebust1-5/+24
2015-07-28Merge tag 'nfs-for-4.2-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-6/+9
2015-07-22NFSv4/pnfs: Ensure we don't miss a file extensionTrond Myklebust1-6/+9