fs: do not assign default i_ino in new_inode
authorChristoph Hellwig <hch@lst.de>
Sat, 23 Oct 2010 15:19:54 +0000 (11:19 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Tue, 26 Oct 2010 01:26:11 +0000 (21:26 -0400)
commit85fe4025c616a7c0ed07bc2fc8c5371b07f3888c
tree7a5db7accb6192f2911f2473b4e3191227b914cc
parentf991bd2e14210fb93d722cb23e54991de20e8a3d
fs: do not assign default i_ino in new_inode

Instead of always assigning an increasing inode number in new_inode
move the call to assign it into those callers that actually need it.
For now callers that need it is estimated conservatively, that is
the call is added to all filesystems that do not assign an i_ino
by themselves.  For a few more filesystems we can avoid assigning
any inode number given that they aren't user visible, and for others
it could be done lazily when an inode number is actually needed,
but that's left for later patches.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
31 files changed:
drivers/infiniband/hw/ipath/ipath_fs.c
drivers/infiniband/hw/qib/qib_fs.c
drivers/misc/ibmasm/ibmasmfs.c
drivers/oprofile/oprofilefs.c
drivers/usb/core/inode.c
drivers/usb/gadget/f_fs.c
drivers/usb/gadget/inode.c
fs/anon_inodes.c
fs/autofs4/inode.c
fs/binfmt_misc.c
fs/configfs/inode.c
fs/debugfs/inode.c
fs/ext4/mballoc.c
fs/freevxfs/vxfs_inode.c
fs/fuse/control.c
fs/hugetlbfs/inode.c
fs/inode.c
fs/ocfs2/dlmfs/dlmfs.c
fs/pipe.c
fs/proc/base.c
fs/proc/proc_sysctl.c
fs/ramfs/inode.c
fs/xfs/linux-2.6/xfs_buf.c
include/linux/fs.h
ipc/mqueue.c
kernel/cgroup.c
mm/shmem.c
net/socket.c
net/sunrpc/rpc_pipe.c
security/inode.c
security/selinux/selinuxfs.c