linux/drivers/mtd
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_ro.c mtd: Update copyright notices 2010-08-08 20:58:20 +01:00
mtdblock.c Fix common misspellings 2011-03-31 11:26:23 -03: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