summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2009-09-18 13:05:44 -0700
committerAl Viro <viro@zeniv.linux.org.uk>2009-09-24 07:47:25 -0400
commit22fe404218156328a27e66349b1175cd0baa4990 (patch)
treef03f8eb0b346a6950815212a5fa86c6b7e65bd16 /include
parentaf0d9ae811d11de8a01d6bc922c5e062be01bd7f (diff)
downloadlinux-3.10-22fe404218156328a27e66349b1175cd0baa4990.tar.gz
linux-3.10-22fe404218156328a27e66349b1175cd0baa4990.tar.bz2
linux-3.10-22fe404218156328a27e66349b1175cd0baa4990.zip
vfs: split generic_forget_inode() so that hugetlbfs does not have to copy it
Hugetlbfs needs to do special things instead of truncate_inode_pages(). Currently, it copied generic_forget_inode() except for truncate_inode_pages() call which is asking for trouble (the code there isn't trivial). So create a separate function generic_detach_inode() which does all the list magic done in generic_forget_inode() and call it from hugetlbfs_forget_inode(). Signed-off-by: Jan Kara <jack@suse.cz> Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include')
-rw-r--r--include/linux/fs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 51803528b09..955e34615cb 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -2156,6 +2156,7 @@ extern ino_t iunique(struct super_block *, ino_t);
extern int inode_needs_sync(struct inode *inode);
extern void generic_delete_inode(struct inode *inode);
extern void generic_drop_inode(struct inode *inode);
+extern int generic_detach_inode(struct inode *inode);
extern struct inode *ilookup5_nowait(struct super_block *sb,
unsigned long hashval, int (*test)(struct inode *, void *),