Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pagemap.h: move dir_pages() over there

That function was declared in a lot of filesystems to calculate
directory pages.

Signed-off-by: Fabian Frederick <fabf@skynet.be>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

authored by

Fabian Frederick and committed by
Al Viro
b57c2cb9 e5e6e97f

+6 -38
-6
fs/exofs/dir.c
··· 44 44 page_cache_release(page); 45 45 } 46 46 47 - /* Accesses dir's inode->i_size must be called under inode lock */ 48 - static inline unsigned long dir_pages(struct inode *inode) 49 - { 50 - return (inode->i_size + PAGE_CACHE_SIZE - 1) >> PAGE_CACHE_SHIFT; 51 - } 52 - 53 47 static unsigned exofs_last_byte(struct inode *inode, unsigned long page_nr) 54 48 { 55 49 loff_t last_byte = inode->i_size;
-5
fs/ext2/dir.c
··· 70 70 page_cache_release(page); 71 71 } 72 72 73 - static inline unsigned long dir_pages(struct inode *inode) 74 - { 75 - return (inode->i_size+PAGE_CACHE_SIZE-1)>>PAGE_CACHE_SHIFT; 76 - } 77 - 78 73 /* 79 74 * Return the offset into page `page_nr' of the last valid 80 75 * byte in that page, plus one.
-7
fs/freevxfs/vxfs_lookup.c
··· 61 61 .iterate = vxfs_readdir, 62 62 }; 63 63 64 - 65 - static inline u_long 66 - dir_pages(struct inode *inode) 67 - { 68 - return (inode->i_size + PAGE_CACHE_SIZE - 1) >> PAGE_CACHE_SHIFT; 69 - } 70 - 71 64 static inline u_long 72 65 dir_blocks(struct inode *ip) 73 66 {
-5
fs/minix/dir.c
··· 45 45 return last_byte; 46 46 } 47 47 48 - static inline unsigned long dir_pages(struct inode *inode) 49 - { 50 - return (inode->i_size+PAGE_CACHE_SIZE-1)>>PAGE_CACHE_SHIFT; 51 - } 52 - 53 48 static int dir_commit_chunk(struct page *page, loff_t pos, unsigned len) 54 49 { 55 50 struct address_space *mapping = page->mapping;
-5
fs/nilfs2/dir.c
··· 61 61 page_cache_release(page); 62 62 } 63 63 64 - static inline unsigned long dir_pages(struct inode *inode) 65 - { 66 - return (inode->i_size+PAGE_CACHE_SIZE-1)>>PAGE_CACHE_SHIFT; 67 - } 68 - 69 64 /* 70 65 * Return the offset into page `page_nr' of the last valid 71 66 * byte in that page, plus one.
-5
fs/qnx6/dir.c
··· 32 32 return page; 33 33 } 34 34 35 - static inline unsigned long dir_pages(struct inode *inode) 36 - { 37 - return (inode->i_size+PAGE_CACHE_SIZE-1)>>PAGE_CACHE_SHIFT; 38 - } 39 - 40 35 static unsigned last_entry(struct inode *inode, unsigned long page_nr) 41 36 { 42 37 unsigned long last_byte = inode->i_size;
-5
fs/sysv/dir.c
··· 33 33 page_cache_release(page); 34 34 } 35 35 36 - static inline unsigned long dir_pages(struct inode *inode) 37 - { 38 - return (inode->i_size+PAGE_CACHE_SIZE-1)>>PAGE_CACHE_SHIFT; 39 - } 40 - 41 36 static int dir_commit_chunk(struct page *page, loff_t pos, unsigned len) 42 37 { 43 38 struct address_space *mapping = page->mapping;
+6
include/linux/pagemap.h
··· 670 670 return error; 671 671 } 672 672 673 + static inline unsigned long dir_pages(struct inode *inode) 674 + { 675 + return (unsigned long)(inode->i_size + PAGE_CACHE_SIZE - 1) >> 676 + PAGE_CACHE_SHIFT; 677 + } 678 + 673 679 #endif /* _LINUX_PAGEMAP_H */