Tim Chen
423e0ab086
VFS : mount lock scalability for internal mounts
...
For a number of file systems that don't have a mount point (e.g. sockfs
and pipefs), they are not marked as long term. Therefore in
mntput_no_expire, all locks in vfs_mount lock are taken instead of just
local cpu's lock to aggregate reference counts when we release
reference to file objects. In fact, only local lock need to have been
taken to update ref counts as these file systems are in no danger of
going away until we are ready to unregister them.
The attached patch marks file systems using kern_mount without
mount point as long term. The contentions of vfs_mount lock
is now eliminated. Before un-registering such file system,
kern_unmount should be called to remove the long term flag and
make the mount point ready to be freed.
Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2011-07-24 10:08:32 -04:00
..
chips
mtd: remove duplicate assignment of chip->state
2011-05-25 02:11:13 +01:00
devices
mtd: convert remaining users to mtd_device_register()
2011-05-25 02:25:00 +01:00
lpddr
mtd: remove duplicate assignment of chip->state
2011-05-25 02:11:13 +01:00
maps
Merge git://git.infradead.org/mtd-2.6
2011-05-27 20:06:53 -07:00
nand
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
2011-07-05 23:23:37 -07:00
onenand
mtd: convert remaining users to mtd_device_register()
2011-05-25 02:25:00 +01:00
tests
mtd: speedtest: fix integer overflow
2011-03-11 14:22:49 +00:00
ubi
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
2011-07-22 19:02:39 -07:00
afs.c
mtd: Update copyright notices
2010-08-08 20:58:20 +01:00
ar7part.c
cmdlinepart.c
mtd: Update copyright notices
2010-08-08 20:58:20 +01:00
ftl.c
Update broken web addresses in the kernel.
2010-10-18 11:03:14 +02:00
inftlcore.c
mtd: Update copyright notices
2010-08-08 20:58:20 +01:00
inftlmount.c
mtd: Remove obsolete <mtd/compatmac.h> include
2010-08-08 21:19:42 +01:00
Kconfig
Merge git://git.infradead.org/mtd-2.6
2011-05-27 20:06:53 -07:00
Makefile
mtd: kill CONFIG_MTD_PARTITIONS
2011-05-25 02:25:35 +01:00
mtd_blkdevs.c
mtd: mtd_blkdevs: fix error path in blktrans_open
2011-05-25 01:53:45 +01:00
mtdblock.c
Fix common misspellings
2011-03-31 11:26:23 -03:00
mtdblock_ro.c
mtd: Update copyright notices
2010-08-08 20:58:20 +01:00
mtdchar.c
VFS : mount lock scalability for internal mounts
2011-07-24 10:08:32 -04:00
mtdconcat.c
mtd: mtdconcat: fix NAND OOB write
2011-05-25 01:54:50 +01:00
mtdcore.c
mtd: remove add_mtd_partitions, add_mtd_device and friends
2011-05-25 02:25:16 +01:00
mtdcore.h
mtd: remove add_mtd_partitions, add_mtd_device and friends
2011-05-25 02:25:16 +01:00
mtdoops.c
Merge git://git.infradead.org/mtd-2.6
2011-01-17 11:15:30 -08:00
mtdpart.c
mtd: remove add_mtd_partitions, add_mtd_device and friends
2011-05-25 02:25:16 +01:00
mtdsuper.c
convert get_sb_mtd() users to ->mount()
2010-10-29 04:16:26 -04:00
mtdswap.c
mtd: mtdswap: fix possible null dereference
2011-05-25 02:11:44 +01:00
nftlcore.c
mtd: Update copyright notices
2010-08-08 20:58:20 +01:00
nftlmount.c
mtd: Update copyright notices
2010-08-08 20:58:20 +01:00
ofpart.c
mtd: Fix endianness issues from device tree
2010-10-25 00:55:56 +01:00
redboot.c
mtd: Update copyright notices
2010-08-08 20:58:20 +01:00
rfd_ftl.c
mtd: Update copyright notices
2010-08-08 20:58:20 +01:00
sm_ftl.c
Fix common misspellings
2011-03-31 11:26:23 -03:00
sm_ftl.h
mtd: sm_ftl: cosmetic, use bool when possible
2010-10-25 01:33:08 +01:00
ssfdc.c
mtd: Update copyright notices
2010-08-08 20:58:20 +01:00