fs/ntfs/index.h
Source file repositories/reference/linux-study-clean/fs/ntfs/index.h
File Facts
- System
- Linux kernel
- Corpus path
fs/ntfs/index.h- Extension
.h- Size
- 4764 bytes
- Lines
- 120
- Domain
- Core OS
- Bucket
- VFS And Filesystem Core
- Inferred role
- Core OS: implementation source
- Status
- source 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.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/fs.hattrib.hmft.h
Detected Declarations
struct ntfs_index_context
Annotated Snippet
struct ntfs_index_context {
struct ntfs_inode *idx_ni;
__le16 *name;
u32 name_len;
struct index_entry *entry;
__le32 cr;
void *data;
u16 data_len;
bool is_in_root;
struct index_root *ir;
struct ntfs_attr_search_ctx *actx;
struct index_block *ib;
struct ntfs_inode *ia_ni;
int parent_pos[MAX_PARENT_VCN];
s64 parent_vcn[MAX_PARENT_VCN];
int pindex;
bool ib_dirty;
u32 block_size;
u8 vcn_size_bits;
bool sync_write;
};
int ntfs_index_root_inconsistent(struct ntfs_volume *vol,
const struct attr_record *a,
const struct index_root *ir, u64 inum);
int ntfs_index_block_inconsistent(struct ntfs_volume *vol,
const struct index_block *ib,
u32 block_size, s64 vcn,
__le32 cr, u64 inum);
int ntfs_index_entries_inconsistent(const struct ntfs_volume *vol,
const struct index_header *ih,
__le32 collation_rule, u64 inum);
struct ntfs_index_context *ntfs_index_ctx_get(struct ntfs_inode *ni, __le16 *name,
u32 name_len);
void ntfs_index_ctx_put(struct ntfs_index_context *ictx);
int ntfs_index_lookup(const void *key, const u32 key_len,
struct ntfs_index_context *ictx);
void ntfs_index_entry_mark_dirty(struct ntfs_index_context *ictx);
int ntfs_index_add_filename(struct ntfs_inode *ni, struct file_name_attr *fn, u64 mref);
int ntfs_index_remove(struct ntfs_inode *ni, const void *key, const u32 keylen);
struct ntfs_inode *ntfs_ia_open(struct ntfs_index_context *icx, struct ntfs_inode *ni);
struct index_entry *ntfs_index_walk_down(struct index_entry *ie, struct ntfs_index_context *ictx);
struct index_entry *ntfs_index_next(struct index_entry *ie, struct ntfs_index_context *ictx);
int ntfs_index_rm(struct ntfs_index_context *icx);
void ntfs_index_ctx_reinit(struct ntfs_index_context *icx);
int ntfs_ie_add(struct ntfs_index_context *icx, struct index_entry *ie);
int ntfs_icx_ib_sync_write(struct ntfs_index_context *icx);
#endif /* _LINUX_NTFS_INDEX_H */
Annotation
- Immediate include surface: `linux/fs.h`, `attrib.h`, `mft.h`.
- Detected declarations: `struct ntfs_index_context`.
- Atlas domain: Core OS / VFS And Filesystem Core.
- Implementation status: source implementation candidate.
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.