fs/nfs/filelayout/filelayout.c
Source file repositories/reference/linux-study-clean/fs/nfs/filelayout/filelayout.c
File Facts
- System
- Linux kernel
- Corpus path
fs/nfs/filelayout/filelayout.c- Extension
.c- Size
- 31860 bytes
- Lines
- 1154
- Domain
- Core OS
- Bucket
- VFS And Filesystem Core
- Inferred role
- Core OS: exported/initcall integration point
- Status
- integration implementation candidate
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Exports symbols or registers init work; inspect boot/module ordering and who consumes the exported contract.
- Uses kernel synchronization; read lock ordering, sleepability, and interrupt context assumptions before translating.
- Allocates kernel memory; connect allocation flags and lifetime to context constraints.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/nfs_fs.hlinux/nfs_page.hlinux/module.hlinux/backing-dev.hlinux/sunrpc/metrics.h../nfs4session.h../internal.h../delegation.hfilelayout.h../nfs4trace.h
Detected Declarations
function filelayout_get_dense_offsetfunction filelayout_get_dserver_offsetfunction filelayout_reset_writefunction filelayout_reset_readfunction filelayout_async_handle_errorfunction filelayout_read_done_cbfunction filelayout_set_layoutcommitfunction filelayout_test_devid_unavailablefunction filelayout_reset_to_mdsfunction filelayout_read_preparefunction filelayout_read_call_donefunction filelayout_read_count_statsfunction filelayout_write_done_cbfunction filelayout_commit_done_cbfunction filelayout_write_preparefunction filelayout_write_call_donefunction filelayout_write_count_statsfunction filelayout_commit_preparefunction filelayout_commit_count_statsfunction filelayout_read_pagelistfunction filelayout_write_pagelistfunction filelayout_check_deviceidfunction filelayout_check_layoutfunction _filelayout_free_lsegfunction filelayout_decode_layoutfunction filelayout_free_lsegfunction filelayout_alloc_lsegfunction filelayout_lseg_is_stripedfunction filelayout_pg_testfunction fl_pnfs_update_layoutfunction filelayout_pg_init_readfunction filelayout_pg_init_writefunction select_bucket_indexfunction filelayout_mark_request_commitfunction calc_ds_index_from_commitfunction select_ds_fh_from_commitfunction filelayout_initiate_commitfunction filelayout_commit_pagelistfunction filelayout_alloc_deviceid_nodefunction filelayout_free_deviceid_nodefunction filelayout_alloc_layout_hdrfunction filelayout_free_layout_hdrfunction filelayout_get_ds_infofunction filelayout_setup_ds_infofunction filelayout_release_ds_infofunction nfs4filelayout_initfunction nfs4filelayout_exitmodule init nfs4filelayout_init
Annotated Snippet
module_init(nfs4filelayout_init);
module_exit(nfs4filelayout_exit);
Annotation
- Immediate include surface: `linux/nfs_fs.h`, `linux/nfs_page.h`, `linux/module.h`, `linux/backing-dev.h`, `linux/sunrpc/metrics.h`, `../nfs4session.h`, `../internal.h`, `../delegation.h`.
- Detected declarations: `function filelayout_get_dense_offset`, `function filelayout_get_dserver_offset`, `function filelayout_reset_write`, `function filelayout_reset_read`, `function filelayout_async_handle_error`, `function filelayout_read_done_cb`, `function filelayout_set_layoutcommit`, `function filelayout_test_devid_unavailable`, `function filelayout_reset_to_mds`, `function filelayout_read_prepare`.
- Atlas domain: Core OS / VFS And Filesystem Core.
- Implementation status: integration implementation candidate.
- Synchronization appears in or near this file; preserve lock ordering, sleepability, and interrupt-context constraints.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.