*参照元 [#l14d7c75] #backlinks *説明 [#ef60a8d8] -パス: [[linux-4.4.1/include/linux/fs.h]] -FIXME: これは何? --説明 **参考 [#w46d7fa9] *実装 [#xce7a933] struct address_space { struct inode *host; /* owner: inode, block_device */ - --[[linux-4.4.1/inode]] struct radix_tree_root page_tree; /* radix tree of all pages */ - --[[linux-4.4.1/radix_tree_root]] spinlock_t tree_lock; /* and lock protecting it */ - --[[linux-4.4.1/spinlock_t]] atomic_t i_mmap_writable;/* count VM_SHARED mappings */ - --[[linux-4.4.1/atomic_t]] struct rb_root i_mmap; /* tree of private and shared mappings */ - --[[linux-4.4.1/rb_root]] struct rw_semaphore i_mmap_rwsem; /* protect tree, count, list */ - --[[linux-4.4.1/rw_semaphore]] /* Protected by tree_lock together with the radix tree */ unsigned long nrpages; /* number of total pages */ unsigned long nrshadows; /* number of shadow entries */ pgoff_t writeback_index;/* writeback starts here */ - --[[linux-4.4.1/pgoff_t]] const struct address_space_operations *a_ops; /* methods */ - --[[linux-4.4.1/address_space_operations]] unsigned long flags; /* error bits/gfp mask */ spinlock_t private_lock; /* for use by the address_space */ struct list_head private_list; /* ditto */ void *private_data; /* ditto */ - --[[linux-4.4.1/spinlock_t]] --[[linux-4.4.1/list_head]] } __attribute__((aligned(sizeof(long)))); /* * On most architectures that alignment is already the case; but * must be enforced here for CRIS, to let the least significant bit * of struct page's "mapping" pointer be used for PAGE_MAPPING_ANON. */ *コメント [#r71a9ecc]