aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/flexfilelayout
AgeCommit message (Expand)AuthorFilesLines
2026-06-08NFSv4/flexfiles: honor FF_FLAGS_NO_IO_THRU_MDS in pg_get_mirror_count_writeMike Snitzer2-0/+29
2026-06-08NFSv4/flexfiles: honor FF_FLAGS_NO_IO_THRU_MDS on fatal DS connect errorsMike Snitzer1-0/+16
2026-06-08NFSv4/flexfiles: reject zero filehandle version countMichael Bommarito1-0/+4
2026-06-08nfs: replace NFS_FILEID() and nfsi->fileid with inode->i_inoJeff Layton1-3/+3
2026-04-24Merge tag 'nfs-for-7.1-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-0/+5
2026-04-13pnfs/flexfiles: validate ds_versions_cnt is non-zeroJenny Guanni Qu1-0/+5
2026-03-06treewide: change inode->i_ino from unsigned long to u64Jeff Layton1-4/+4
2026-02-21treewide: Replace kmalloc with kmalloc_obj for non-scalar typesKees Cook2-18/+14
2026-01-04pnfs/flexfiles: Fix memory leak in nfs4_ff_alloc_deviceid_node()Zilin Guan1-1/+1
2025-10-13NFSv4/flexfiles: fix to allocate mirror->dss before useMike Snitzer1-14/+21
2025-09-26NFSv4/flexfiles: Add support for striped layoutsJonathan Curley2-92/+157
2025-09-26NFSv4/flexfiles: Update layout stats & error paths for striped layoutsJonathan Curley1-102/+208
2025-09-26NFSv4/flexfiles: Write path updates for striped layoutsJonathan Curley1-12/+30
2025-09-26NFSv4/flexfiles: Commit path updates for striped layoutsJonathan Curley1-16/+25
2025-09-26NFSv4/flexfiles: Read path updates for striped layoutsJonathan Curley1-24/+98
2025-09-26NFSv4/flexfiles: Update low level helper functions to be DS stripe aware.Jonathan Curley3-85/+115
2025-09-26NFSv4/flexfiles: Add data structure support for striped layoutsJonathan Curley3-98/+117
2025-09-26NFSv4/flexfiles: Remove cred local variable dependencyJonathan Curley1-2/+2
2025-09-23NFS: Update the flexfilelayout driver to use xdr_set_scratch_folio()Anna Schumaker2-9/+9
2025-09-08NFSv4/flexfiles: Fix layout merge mirror check.Jonathan Curley1-1/+1
2025-09-06flexfiles/pNFS: fix NULL checks on result of ff_layout_choose_ds_for_readTigran Mkrtchyan1-7/+12
2025-07-22pNFS/flexfiles: don't attempt pnfs on fatal DS errorsTigran Mkrtchyan2-13/+19
2025-06-26NFSv4/flexfiles: Fix handling of NFS level errors in I/OTrond Myklebust1-34/+84
2025-05-28flexfiles/pNFS: update stats on NFS4ERR_DELAY for v4.1 DSesTigran Mkrtchyan1-0/+2
2025-05-28NFS: always probe for LOCALIO support asynchronouslyMike Snitzer1-1/+1
2025-04-27nfs: don't share pNFS DS connections between net namespacesJeff Layton1-3/+3
2025-04-27pNFS/flexfiles: Record the RPC errors in the I/O tracepointsTrond Myklebust1-3/+3
2025-03-21pNFS/flexfiles: Report ENETDOWN as a connection errorTrond Myklebust1-0/+1
2025-03-21pNFS/flexfiles: Treat ENETUNREACH errors as fatal in containersTrond Myklebust1-2/+21
2025-01-22pnfs/flexfiles: retry getting layout segment for readsMike Snitzer1-6/+21
2025-01-14nfs: cache all open LOCALIO nfsd_file(s) in clientMike Snitzer2-12/+14
2024-09-23pnfs/flexfiles: enable localio supportTrond Myklebust2-4/+52
2024-09-23nfs: pass struct nfsd_file to nfs_init_pgio and nfs_init_commitMike Snitzer1-3/+3
2024-09-23nfs: factor out {encode,decode}_opaque_fixed to nfs_xdr.hMike Snitzer1-6/+0
2024-07-08NFSv4/pNFS: Do layout state recovery upon rebootTrond Myklebust1-1/+1
2024-05-21pNFS: rework pnfs_generic_pg_check_layout to check IO rangeOlga Kornievskaia1-10/+2
2024-03-16nfs: fix panic when nfs4_ff_layout_prepare_ds() failsJosef Bacik1-1/+1
2023-10-30Merge tag 'hardening-v6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-1/+1
2023-10-18pNFS/flexfiles: Check the layout validity in ff_layout_mirror_prepare_statsTrond Myklebust1-7/+10
2023-10-02NFS/flexfiles: Annotate struct nfs4_ff_layout_segment with __counted_byKees Cook1-1/+1
2023-09-13NFS/pNFS: Report EINVAL errors from connect() to the serverTrond Myklebust1-0/+1
2022-11-01cred: Do not default to init_cred in prepare_kernel_cred()Kees Cook1-2/+2
2022-10-06NFSv4/flexfiles: Cancel I/O if the layout is recalled or revokedTrond Myklebust1-3/+81
2022-10-03NFSv4/pNFS: Always return layout stats on layout return for flexfilesTrond Myklebust1-7/+18
2022-07-12NFS: Allow setting rsize / wsize to a multiple of PAGE_SIZEAnna Schumaker1-2/+4
2022-07-10pNFS/flexfiles: Report RDMA connection errors to the serverTrond Myklebust1-0/+4
2022-03-22pNFS/flexfiles: Ensure pNFS allocation modes are consistent with nfsiodTrond Myklebust1-29/+21
2022-02-25NFSv4/flexfiles: Convert GFP_NOFS to GFP_KERNELTrond Myklebust1-8/+9
2021-10-20SUNRPC: Trace calls to .rpc_call_doneChuck Lever1-2/+0
2021-10-03pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_dsBaptiste Lepers1-2/+2
2021-04-14pNFS/flexfiles: fix incorrect size check in decode_nfs_fh()Nikola Livic1-1/+1
2020-12-17Merge tag 'nfs-for-5.11-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-13/+4
2020-12-16NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read()Trond Myklebust1-1/+1
2020-12-16pNFS/flexfiles: Avoid spurious layout returns in ff_layout_choose_ds_for_readTrond Myklebust1-5/+1
2020-12-15Merge tag 'nfsd-5.11' of git://git.linux-nfs.org/projects/cel/cel-2.6Linus Torvalds2-2/+2
2020-12-02pNFS/flexfiles: Fix up layoutstats reporting for non-TCP transportsTrond Myklebust1-7/+2
2020-11-30SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer()Chuck Lever2-2/+2
2020-11-30pNFS/flexfiles: Fix array overflow when flexfiles mirroring is enabledTrond Myklebust1-6/+21
2020-09-18pNFS/flexfiles: Be consistent about mirror index typesTrond Myklebust1-17/+17
2020-09-18pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on readTrond Myklebust1-5/+6
2020-08-23treewide: Use fallthrough pseudo-keywordGustavo A. R. Silva1-2/+2
2020-08-12NFS: Fix flexfiles read failoverTrond Myklebust1-14/+36
2020-07-12pNFS/flexfiles: The mirror count could depend on the layout segment rangeTrond Myklebust1-2/+2
2020-07-12pNFS/flexfiles: Clean up redundant calls to pnfs_put_lseg()Trond Myklebust1-8/+2
2020-06-26pNFS/flexfiles: Fix list corruption if the mirror count changesTrond Myklebust1-4/+7
2020-03-27pNFS/flexfiles: Specify the layout segment range in LAYOUTGETTrond Myklebust1-4/+4
2020-03-27pNFS/flexfiles: remove requirement for whole file layoutsTrond Myklebust1-21/+0
2020-03-27pNFS/flexfiles: Check the layout segment range before doing I/OTrond Myklebust1-2/+10
2020-03-27pNFS/flexfile: Don't merge layout segments if the mirrors don't matchTrond Myklebust1-0/+19
2020-03-27NFS/pNFS: Clean up pNFS commit operationsTrond Myklebust1-7/+12
2020-03-27NFS: Remove bucket array from struct pnfs_ds_commit_infoTrond Myklebust1-76/+0
2020-03-27pNFS: Enable per-layout segment commit structuresTrond Myklebust1-0/+19
2020-03-27pNFS: Add infrastructure for cleaning up per-layout commit structuresTrond Myklebust1-0/+11
2020-03-27NFSv4/pnfs: Support a list of commit arrays in struct pnfs_ds_commit_infoTrond Myklebust1-0/+1
2020-03-26pNFS/flexfiles: Simplify allocation of the mirror arrayTrond Myklebust2-17/+6
2020-03-16NFSv4: Ensure layout headers are RCU safeTrond Myklebust1-3/+3
2020-03-16pNFS/flexfiles: Report DELAY and GRACE errors from the DS to the serverTrond Myklebust1-9/+11
2020-01-15pNFS/flexfiles: Add tracing for layout errorsTrond Myklebust1-9/+19
2020-01-15pNFS/flexfiles: Record resend attempts on I/O failureTrond Myklebust1-3/+3
2019-08-26pNFS/flexfiles: Don't time out requests on hard mountsTrond Myklebust1-2/+9
2019-08-26Revert "NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated"Trond Myklebust1-17/+0
2019-07-18pnfs/flexfiles: Add tracepoints for detecting pnfs fallback to MDSTrond Myklebust1-0/+26
2019-07-18pnfs/flexfiles: Fix PTR_ERR() dereferences in ff_layout_track_ds_errorTrond Myklebust1-1/+1
2019-06-28NFS/flexfiles: Use the correct TCP timeout for flexfiles I/OTrond Myklebust1-1/+1
2019-05-21treewide: Add SPDX license identifier - Makefile/KconfigThomas Gleixner1-0/+1
2019-05-21treewide: Add SPDX license identifier for more 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-3/+3
2019-04-25pNFS: Add tracking to limit the number of pNFS retriesTrond Myklebust1-0/+8
2019-03-23pNFS/flexfiles: Fix layoutstats handling during read failoversTrond Myklebust1-1/+4
2019-03-01NFS/flexfiles: Clean up mirror DS initialisationTrond Myklebust1-35/+31
2019-03-01NFS/flexfiles: Remove dead code in ff_layout_mirror_valid()Trond Myklebust1-15/+0
2019-03-01NFS/flexfile: Simplify nfs4_ff_layout_select_ds_stateid()Trond Myklebust3-26/+10
2019-03-01NFS/flexfile: Simplify nfs4_ff_layout_ds_version()Trond Myklebust2-5/+5
2019-03-01NFS/flexfiles: Simplify ff_layout_get_ds_cred()Trond Myklebust3-8/+9
2019-03-01NFS/flexfiles: Simplify nfs4_ff_find_or_create_ds_client()Trond Myklebust3-10/+6
2019-03-01NFS/flexfiles: Simplify nfs4_ff_layout_select_ds_fh()Trond Myklebust3-16/+5
2019-03-01NFS/flexfiles: Speed up read failover when DSes are downTrond Myklebust1-12/+62
2019-03-01NFS/flexfiles: Don't invalidate DS deviceids for being unresponsiveTrond Myklebust2-21/+3
2019-03-01NFS/flexfiles: Remove bogus checks for invalid deviceidsTrond Myklebust1-20/+0
2019-03-01NFS/flexfiles: Avoid unnecessary layout invalidationsTrond Myklebust1-3/+3
2019-03-01NFS/flexfiles: refactor calls to fs4_ff_layout_prepare_ds()Trond Myklebust3-22/+28
2019-03-01NFS/flexfiles: Send LAYOUTERROR when failing over mirrored readsTrond Myklebust3-6/+57
2019-03-01NFSv4/flexfiles: Abort I/O early if the layout segment was invalidatedTrond Myklebust1-0/+17
2019-03-01NFS/flexfiles: Fix up sparse RCU annotationsTrond Myklebust1-2/+2
2019-03-01NFSv4/flexfiles: Fix invalid deref in FF_LAYOUT_DEVID_NODE()Trond Myklebust1-13/+19
2019-02-25Merge tag 'nfs-rdma-for-5.1-1' of git://git.linux-nfs.org/projects/anna/linux...Trond Myklebust1-1/+1
2019-02-20NFS: Fix up documentation warningsTrond Myklebust1-3/+9
2019-02-13SUNRPC: Add xdr_stream::rqst fieldChuck Lever1-1/+1
2018-12-19NFS/NFSD/SUNRPC: replace generic creds with 'struct cred'.NeilBrown3-34/+23
2018-12-19SUNRPC: remove uid and gid from struct auth_credNeilBrown1-6/+8
2018-12-19SUNRPC: remove groupinfo from struct auth_cred.NeilBrown1-13/+1
2018-12-19SUNRPC: add 'struct cred *' to auth_cred and rpc_credNeilBrown1-0/+17
2018-12-02flexfiles: enforce per-mirror stateid only for v4 DSesTigran Mkrtchyan1-2/+4
2018-11-22flexfiles: use per-mirror specified stateid for IOTigran Mkrtchyan3-12/+32
2018-09-30nfs4: flex_file: ignore synthetic uid/gid for tightly coupled DSesTigran Mkrtchyan1-1/+1
2018-09-30pNFS: Don't allocate more pages than we need to fit a layoutget responseTrond Myklebust1-0/+1
2018-08-21pNFS/flexfiles: ff_layout_pg_init_read should exit on errorTrond Myklebust1-17/+11
2018-07-26pNFS/flexfiles: Ensure we always return a layout if it has layoutstatsTrond Myklebust1-0/+3
2018-06-22Merge tag 'nfs-for-4.18-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfsLinus Torvalds1-5/+16
2018-06-19pNFS/flexfiles: Process writeback resends from nfsiod context as wellTrond Myklebust1-2/+8
2018-06-19pNFS/flexfiles: Don't tie up all the rpciod threads in resendsTrond Myklebust1-3/+8
2018-06-12Merge tag 'overflow-v4.18-rc1-part2' of git://git.kernel.org/pub/scm/linux/ke...Linus Torvalds2-2/+3
2018-06-12treewide: kzalloc() -> kcalloc()Kees Cook2-2/+3
2018-05-31pnfs: Add layout driver flag PNFS_LAYOUTGET_ON_OPENFred Isaman1-0/+1
2017-11-17Merge tag 'nfs-for-4.15-1' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds2-11/+12
2017-11-17fs, nfs: convert nfs_client.cl_count from atomic_t to refcount_tElena Reshetova1-6/+6
2017-11-17fs, nfs: convert nfs4_ff_layout_mirror.ref from atomic_t to refcount_tElena Reshetova2-5/+6
2017-11-02License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseGreg Kroah-Hartman2-0/+2
2017-08-08nfs/flexfiles: fix leak of nfs4_ff_ds_version arraysWeston Andros Adamson1-0/+1
2017-07-19pNFS/flexfiles: Handle expired layout segments in ff_layout_initiate_commit()Trond Myklebust1-0/+4
2017-07-13PNFS for stateid errors retry against MDS firstOlga Kornievskaia1-33/+0
2017-05-24pNFS/flexfiles: missing error code in ff_layout_alloc_lseg()Dan Carpenter1-0/+1
2017-05-09pNFS/flexfiles: Always attempt to call layoutstats when flexfiles is enabledTrond Myklebust1-0/+11
2017-04-29pNFS/flexfiles: Fix up the ff_layout_write_pagelist failure pathTrond Myklebust1-3/+8
2017-04-25pNFS: Ensure we check layout segment validity in the pg_init() callbackTrond Myklebust1-0/+2
2017-04-20pNFS/flexfiles: Check the result of nfs4_pnfs_ds_connectTrond Myklebust1-1/+1
2017-04-20nfs: flexfilelayout: remove v3-only data server limitationTigran Mkrtchyan1-1/+7
2017-03-31Merge tag 'nfs-for-4.11-3' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds1-0/+4
2017-03-31nfs: flexfiles: fix kernel OOPS if MDS returns unsupported DS typeTigran Mkrtchyan1-0/+4
2017-03-17Merge tag 'nfs-for-4.11-2' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds2-3/+16
2017-03-17pNFS/flexfiles: never nfs4_mark_deviceid_unavailableWeston Andros Adamson2-2/+14
2017-03-17pNFS: return status from nfs4_pnfs_ds_connectWeston Andros Adamson1-1/+2
2017-03-01Merge tag 'nfs-for-4.11-1' of git://git.linux-nfs.org/projects/anna/linux-nfsLinus Torvalds1-39/+21
2017-02-27lib/vsprintf.c: remove %Z supportAlexey Dobriyan1-2/+2
2017-02-22pNFS/flexfiles: If the layout is invalid, it must be updated before retryingTrond Myklebust1-6/+7
2017-02-21NFSv4: Replace ad-hoc xdr encode/decode helpers with xdr_stream_* genericsTrond Myklebust1-4/+1
2017-01-30pNFS/flexfiles: Make local symbol layoutreturn_ops staticWei Yongjun1-1/+1
2017-01-30NFS: Use nfs4_setup_sequence() everywhereAnna Schumaker1-28/+12
2016-12-25ktime: Get rid of ktime_equal()Thomas Gleixner1-1/+1
2016-12-25ktime: Get rid of the unionThomas Gleixner1-2/+1
2016-12-19pNFS/flexfiles: delete deviceid, don't mark inactiveWeston Andros Adamson2-3/+5
2016-12-09pNFS/flexfiles: Ensure we have enough buffer for layoutreturnTrond Myklebust2-6/+27
2016-12-09pNFS/flexfiles: Remove a redundant parameter in ff_layout_encode_ioerr()Trond Myklebust1-6/+4
2016-12-08pNFS/flexfiles: Fix a deadlock on LAYOUTGETFred Isaman3-46/+43
2016-12-07pNFS/flexfiles: Fix ff_layout_add_ds_error_locked()Trond Myklebust1-1/+2
2016-12-03pNFS/flexfiles: Support sending layoutstats in layoutreturnTrond Myklebust2-6/+79
2016-12-03pNFS/flexfiles: Minor refactoring before adding iostats to layoutreturnTrond Myklebust1-25/+34
2016-12-03NFS: Fix up read of mirror statsTrond Myklebust1-0/+2
2016-12-03pNFS/flexfiles: Clean up layoutstatsTrond Myklebust1-20/+7
2016-12-03pNFS/flexfiles: Refactor encoding of the layoutreturn payloadTrond Myklebust3-31/+124
2016-12-02pNFS/flexfiles: Only send layoutstats updates for mirrors that were updatedTrond Myklebust2-0/+9
2016-12-02pNFS/flexfiles: Don't attempt to send layoutstats if there are no entriesTrond Myklebust1-0/+5
2016-12-01NFS: Remove unused authflavour parameter from nfs_get_client()Anna Schumaker1-2/+1
2016-12-01pNFS: Get rid of unnecessary layout parameter in encode_layoutreturn callbackTrond Myklebust1-2/+2
2016-12-01pNFS: consolidate the different range intersection testsTrond Myklebust1-25/+8
2016-12-01pNFS: Fix a deadlock between read resends and layoutreturnTrond Myklebust1-0/+4
2016-09-27NFSv4.x: Allow callers of nfs_remove_bad_delegation() to specify a stateidTrond Myklebust1-1/+1
2016-08-29pNFS/flexfiles: Fix an Oopsable condition when connection to the DS failsTrond Myklebust2-28/+28
2016-08-16pNFS/flexfiles: Set reasonable default retrans values for the data channelTrond Myklebust1-2/+2
2016-08-14pNFS/flexfiles: Fix layoutstat periodic reportingTrond Myklebust2-5/+5
2016-07-05pNFS: Files and flexfiles always need to commit before layoutcommitTrond Myklebust1-2/+5
2016-07-05pNFS/flexfiles: Clean up calls to pnfs_set_layoutcommit()Trond Myklebust1-9/+10
2016-07-05pNFS/flexfiles: Fix layoutcommit after a commit to DSTrond Myklebust1-2/+1
2016-05-26pnfs: pnfs_update_layout needs to consider if strict iomode checking is onTom Haynes1-13/+36
2016-05-26nfs/flexfiles: Use the layout segment for reading unless it a IOMODE_RW and r...Tom Haynes1-2/+3
2016-05-25nfs/flexfiles: Helper function to detect FF_FLAGS_NO_READ_IOTom Haynes2-1/+16
2016-05-17flexfiles: add kerneldoc header to nfs4_ff_layout_prepare_dsJeff Layton1-1/+17
2016-05-17flexfiles: remove pointless setting of NFS_LAYOUT_RETURN_REQUESTEDJeff Layton2-9/+1
2016-05-17pnfs: don't merge new ff lsegs with ones that have LAYOUTRETURN bit setJeff Layton1-2/+2
2016-05-17pNFS/flexfiles: When initing reads or writes, we might have to retry connecti...Tom Haynes1-4/+25
2016-05-17pNFS/flexfiles: When checking for available DSes, conditionally check for MDS ioTom Haynes3-3/+9
2016-05-17pNFS/flexfile: Fix erroneous fall back to read/write through the MDSTrond Myklebust1-17/+6
2016-05-17NFSv4: Label stateids with the typeTrond Myklebust2-4/+6
2016-05-09nfs: have flexfiles mirror keep creds for both ro and rw layoutsJeff Layton3-10/+30
2016-05-09nfs: get a reference to the credential in ff_layout_alloc_lsegJeff Layton3-54/+36
2016-05-09nfs: have ff_layout_get_ds_cred take a reference to the credJeff Layton2-10/+35
2016-05-09nfs: don't call nfs4_ff_layout_prepare_ds from ff_layout_get_ds_credJeff Layton1-5/+1
2016-05-09NFS: Save struct inode * inside nfs_commit_info to clarify usage of i_lockDave Wysochanski1-2/+2
2016-03-16nfs4: nfs4_ff_layout_prepare_ds should return NULL if connection failedJeff Layton1-0/+2
2016-01-27NFS: Cleanup - rename NFS_LAYOUT_RETURN_BEFORE_CLOSETrond Myklebust2-2/+2
2016-01-22Merge branch 'bugfixes'Trond Myklebust2-61/+40
2016-01-22pNFS/flexfiles: Fix an XDR encoding bug in layoutreturnTrond Myklebust1-4/+2
2016-01-21pNFS/flexfiles: Improve merging of errors in LAYOUTRETURNTrond Myklebust1-57/+38
2016-01-07Merge branch 'bugfixes'Trond Myklebust1-1/+1
2016-01-04Merge branch 'pnfs_generic'Trond Myklebust1-12/+1
2015-12-31NFS/pNFS: Fix up pNFS write reschedule layering violations and bugsTrond Myklebust1-12/+1
2015-12-30pNFS/flexfiles: Fix an Oopsable typo in ff_mirror_match_fh()Trond Myklebust1-1/+1
2015-12-28pNFS/flexfiles: Ensure we record layoutstats even if RPC is terminated earlyTrond Myklebust1-6/+31
2015-12-28pNFS: Add flag to track if we've called nfs4_ff_layout_stat_io_start_read/writeTrond Myklebust1-25/+70
2015-12-28pNFS/flexfiles: Fix a statistics gathering imbalanceTrond Myklebust1-1/+1