linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/13] read-only remount race fix v7
@ 2011-10-12 14:48 Miklos Szeredi
  2011-10-12 14:48 ` [PATCH 01/13] vfs: ignore error on forced remount Miklos Szeredi
                   ` (14 more replies)
  0 siblings, 15 replies; 28+ messages in thread
From: Miklos Szeredi @ 2011-10-12 14:48 UTC (permalink / raw)
  To: viro; +Cc: linux-fsdevel, linux-kernel, jack, hch, akpm, toshi.okajima,
	mszeredi

Here's an update of the read-only remount race fixes.

It should now fix the races after unlink.  I haven't been able to
trigger the bad behavior with the test scripts provided by Toshiyuki
Okajima.

Toshiyuki-san, could you please test these patches too?

Thanks,
Miklos
---

Miklos Szeredi (13):
      vfs: ignore error on forced remount
      vfs: keep list of mounts for each superblock
      vfs: protect remounting superblock read-only
      vfs: fs_may_remount_ro: turn unnecessary check into a WARN_ON
      hypfs: remove unnecessary nlink setting
      jfs: remove unnecessary nlink setting
      ocfs2: remove unnecessary nlink setting
      logfs: remove unnecessary nlink setting
      filesystems: add missing nlink wrappers
      filesystems: add set_nlink()
      vfs: protect i_nlink
      vfs: count unlinked inodes
      vfs: prevent remount read-only if pending removes

---
 arch/s390/hypfs/inode.c          |    6 +--
 drivers/mtd/mtdchar.c            |    2 +-
 drivers/staging/pohmelfs/inode.c |    2 +-
 fs/9p/vfs_inode.c                |    4 +-
 fs/9p/vfs_inode_dotl.c           |    4 +-
 fs/adfs/inode.c                  |    2 +-
 fs/affs/amigaffs.c               |    4 +-
 fs/affs/inode.c                  |    8 ++--
 fs/affs/namei.c                  |    6 +-
 fs/afs/fsclient.c                |    2 +-
 fs/afs/inode.c                   |    4 +-
 fs/autofs4/inode.c               |    2 +-
 fs/befs/linuxvfs.c               |    2 +-
 fs/bfs/dir.c                     |    2 +-
 fs/bfs/inode.c                   |    2 +-
 fs/binfmt_misc.c                 |    2 +-
 fs/btrfs/delayed-inode.c         |    2 +-
 fs/btrfs/disk-io.c               |    2 +-
 fs/btrfs/inode.c                 |    4 +-
 fs/btrfs/tree-log.c              |    2 +-
 fs/ceph/caps.c                   |    2 +-
 fs/ceph/inode.c                  |    2 +-
 fs/cifs/inode.c                  |    6 +-
 fs/cifs/link.c                   |    2 +-
 fs/coda/coda_linux.c             |    2 +-
 fs/coda/dir.c                    |    2 +-
 fs/devpts/inode.c                |    4 +-
 fs/ecryptfs/inode.c              |   12 +++---
 fs/efs/inode.c                   |    2 +-
 fs/exofs/inode.c                 |    2 +-
 fs/ext2/ialloc.c                 |    2 +-
 fs/ext2/inode.c                  |    2 +-
 fs/ext3/ialloc.c                 |    2 +-
 fs/ext3/inode.c                  |    2 +-
 fs/ext3/namei.c                  |    6 +-
 fs/ext4/ialloc.c                 |    2 +-
 fs/ext4/inode.c                  |    2 +-
 fs/ext4/migrate.c                |    2 +-
 fs/ext4/namei.c                  |    8 ++--
 fs/fat/inode.c                   |    4 +-
 fs/fat/namei_msdos.c             |    2 +-
 fs/fat/namei_vfat.c              |    2 +-
 fs/file_table.c                  |   23 ----------
 fs/freevxfs/vxfs_inode.c         |    2 +-
 fs/fuse/control.c                |    2 +-
 fs/fuse/inode.c                  |    2 +-
 fs/gfs2/glops.c                  |    2 +-
 fs/hfs/dir.c                     |    4 +-
 fs/hfs/inode.c                   |    4 +-
 fs/hfsplus/dir.c                 |    4 +-
 fs/hfsplus/inode.c               |   10 ++--
 fs/hostfs/hostfs_kern.c          |    2 +-
 fs/hpfs/dir.c                    |    2 +-
 fs/hpfs/inode.c                  |   10 ++--
 fs/hpfs/namei.c                  |    8 ++--
 fs/hppfs/hppfs.c                 |    2 +-
 fs/hugetlbfs/inode.c             |    2 +-
 fs/inode.c                       |   83 +++++++++++++++++++++++++++++++++++++-
 fs/internal.h                    |    1 +
 fs/isofs/inode.c                 |    4 +-
 fs/isofs/rock.c                  |    4 +-
 fs/jffs2/dir.c                   |    6 +-
 fs/jffs2/fs.c                    |    6 +-
 fs/jfs/jfs_imap.c                |    6 +-
 fs/jfs/jfs_inode.c               |    2 +-
 fs/jfs/namei.c                   |   12 +++---
 fs/jfs/super.c                   |    1 -
 fs/libfs.c                       |    2 +-
 fs/logfs/dir.c                   |    8 ++--
 fs/logfs/inode.c                 |    3 +-
 fs/logfs/readwrite.c             |    2 +-
 fs/minix/inode.c                 |    4 +-
 fs/namespace.c                   |   57 +++++++++++++++++++++++++-
 fs/ncpfs/inode.c                 |    2 +-
 fs/nfs/inode.c                   |    6 +-
 fs/nilfs2/inode.c                |    4 +-
 fs/nilfs2/namei.c                |    2 +-
 fs/ntfs/inode.c                  |    8 ++--
 fs/ocfs2/dir.c                   |    4 +-
 fs/ocfs2/dlmglue.c               |    2 +-
 fs/ocfs2/inode.c                 |    4 +-
 fs/ocfs2/namei.c                 |   18 ++++-----
 fs/openpromfs/inode.c            |    4 +-
 fs/proc/base.c                   |   12 +++---
 fs/proc/generic.c                |    2 +-
 fs/proc/inode.c                  |    2 +-
 fs/proc/proc_sysctl.c            |    2 +-
 fs/qnx4/inode.c                  |    2 +-
 fs/reiserfs/inode.c              |   10 ++--
 fs/reiserfs/namei.c              |   16 ++++----
 fs/romfs/super.c                 |    2 +-
 fs/squashfs/inode.c              |   18 ++++----
 fs/stack.c                       |    2 +-
 fs/super.c                       |   27 ++++++++++--
 fs/sysfs/inode.c                 |    2 +-
 fs/sysv/inode.c                  |    2 +-
 fs/ubifs/super.c                 |    2 +-
 fs/ubifs/xattr.c                 |    4 +-
 fs/udf/inode.c                   |    8 ++-
 fs/udf/namei.c                   |   15 +++----
 fs/ufs/ialloc.c                  |    2 +-
 fs/ufs/inode.c                   |    4 +-
 fs/xfs/xfs_iops.c                |    2 +-
 include/linux/fs.h               |   66 ++++++++++--------------------
 include/linux/mount.h            |    1 +
 mm/shmem.c                       |    2 +-
 106 files changed, 389 insertions(+), 286 deletions(-)


^ permalink raw reply	[flat|nested] 28+ messages in thread
* [PATCH 00/13] read-only remount race fix v9
@ 2011-10-28 12:13 Miklos Szeredi
  2011-10-28 12:13 ` [PATCH 10/13] filesystems: add set_nlink() Miklos Szeredi
  0 siblings, 1 reply; 28+ messages in thread
From: Miklos Szeredi @ 2011-10-28 12:13 UTC (permalink / raw)
  To: hch; +Cc: viro, linux-fsdevel, linux-kernel, jack, akpm, toshi.okajima,
	mszeredi

This update changes a WARN_ON to a rate limited printk and a small
update for 3.2.

git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git read-only-remount-fixes.v9

Thanks,
Miklos
---

Miklos Szeredi (13):
      vfs: ignore error on forced remount
      vfs: keep list of mounts for each superblock
      vfs: protect remounting superblock read-only
      vfs: fs_may_remount_ro: turn unnecessary check into a WARN_ON
      hypfs: remove unnecessary nlink setting
      jfs: remove unnecessary nlink setting
      ocfs2: remove unnecessary nlink setting
      logfs: remove unnecessary nlink setting
      filesystems: add missing nlink wrappers
      filesystems: add set_nlink()
      vfs: protect i_nlink
      vfs: count unlinked inodes
      vfs: prevent remount read-only if pending removes

---
 arch/s390/hypfs/inode.c          |    6 +--
 drivers/mtd/mtdchar.c            |    2 +-
 drivers/staging/pohmelfs/inode.c |    2 +-
 fs/9p/vfs_inode.c                |    4 +-
 fs/9p/vfs_inode_dotl.c           |    4 +-
 fs/adfs/inode.c                  |    2 +-
 fs/affs/amigaffs.c               |    4 +-
 fs/affs/inode.c                  |    8 ++--
 fs/affs/namei.c                  |    6 +-
 fs/afs/fsclient.c                |    2 +-
 fs/afs/inode.c                   |    4 +-
 fs/autofs4/inode.c               |    2 +-
 fs/befs/linuxvfs.c               |    2 +-
 fs/bfs/dir.c                     |    2 +-
 fs/bfs/inode.c                   |    2 +-
 fs/binfmt_misc.c                 |    2 +-
 fs/btrfs/delayed-inode.c         |    2 +-
 fs/btrfs/disk-io.c               |    2 +-
 fs/btrfs/inode.c                 |    4 +-
 fs/btrfs/tree-log.c              |    2 +-
 fs/ceph/caps.c                   |    2 +-
 fs/ceph/inode.c                  |    2 +-
 fs/cifs/inode.c                  |    6 +-
 fs/cifs/link.c                   |    2 +-
 fs/coda/coda_linux.c             |    2 +-
 fs/coda/dir.c                    |    2 +-
 fs/devpts/inode.c                |    4 +-
 fs/ecryptfs/inode.c              |   12 +++---
 fs/efs/inode.c                   |    2 +-
 fs/exofs/inode.c                 |    2 +-
 fs/ext2/ialloc.c                 |    2 +-
 fs/ext2/inode.c                  |    2 +-
 fs/ext3/ialloc.c                 |    2 +-
 fs/ext3/inode.c                  |    2 +-
 fs/ext3/namei.c                  |    6 +-
 fs/ext4/ialloc.c                 |    2 +-
 fs/ext4/inode.c                  |    2 +-
 fs/ext4/migrate.c                |    2 +-
 fs/ext4/namei.c                  |    8 ++--
 fs/fat/inode.c                   |    4 +-
 fs/fat/namei_msdos.c             |    2 +-
 fs/fat/namei_vfat.c              |    2 +-
 fs/file_table.c                  |   23 ----------
 fs/freevxfs/vxfs_inode.c         |    2 +-
 fs/fuse/control.c                |    2 +-
 fs/fuse/inode.c                  |    2 +-
 fs/gfs2/glops.c                  |    2 +-
 fs/hfs/dir.c                     |    4 +-
 fs/hfs/inode.c                   |    4 +-
 fs/hfsplus/dir.c                 |    4 +-
 fs/hfsplus/inode.c               |   10 ++--
 fs/hostfs/hostfs_kern.c          |    2 +-
 fs/hpfs/dir.c                    |    2 +-
 fs/hpfs/inode.c                  |   10 ++--
 fs/hpfs/namei.c                  |    8 ++--
 fs/hppfs/hppfs.c                 |    2 +-
 fs/hugetlbfs/inode.c             |    2 +-
 fs/inode.c                       |   87 +++++++++++++++++++++++++++++++++++++-
 fs/internal.h                    |    1 +
 fs/isofs/inode.c                 |    4 +-
 fs/isofs/rock.c                  |    4 +-
 fs/jffs2/dir.c                   |    6 +-
 fs/jffs2/fs.c                    |    6 +-
 fs/jfs/jfs_imap.c                |    6 +-
 fs/jfs/jfs_inode.c               |    2 +-
 fs/jfs/namei.c                   |   12 +++---
 fs/jfs/super.c                   |    1 -
 fs/libfs.c                       |    2 +-
 fs/logfs/dir.c                   |    8 ++--
 fs/logfs/inode.c                 |    3 +-
 fs/logfs/readwrite.c             |    2 +-
 fs/minix/inode.c                 |    4 +-
 fs/namespace.c                   |   57 ++++++++++++++++++++++++-
 fs/ncpfs/inode.c                 |    2 +-
 fs/nfs/inode.c                   |    6 +-
 fs/nilfs2/inode.c                |    4 +-
 fs/nilfs2/namei.c                |    2 +-
 fs/ntfs/inode.c                  |    8 ++--
 fs/ocfs2/dir.c                   |    4 +-
 fs/ocfs2/dlmglue.c               |    2 +-
 fs/ocfs2/inode.c                 |    4 +-
 fs/ocfs2/namei.c                 |   18 ++++----
 fs/openpromfs/inode.c            |    4 +-
 fs/proc/base.c                   |   12 +++---
 fs/proc/generic.c                |    2 +-
 fs/proc/inode.c                  |    2 +-
 fs/proc/proc_sysctl.c            |    2 +-
 fs/qnx4/inode.c                  |    2 +-
 fs/reiserfs/inode.c              |   10 ++--
 fs/reiserfs/namei.c              |   16 ++++----
 fs/romfs/super.c                 |    2 +-
 fs/squashfs/inode.c              |   18 ++++----
 fs/stack.c                       |    2 +-
 fs/super.c                       |   27 ++++++++++--
 fs/sysfs/inode.c                 |    2 +-
 fs/sysv/inode.c                  |    2 +-
 fs/ubifs/super.c                 |    2 +-
 fs/ubifs/xattr.c                 |    4 +-
 fs/udf/inode.c                   |    8 ++-
 fs/udf/namei.c                   |   15 +++----
 fs/ufs/ialloc.c                  |    2 +-
 fs/ufs/inode.c                   |    4 +-
 fs/xfs/xfs_iops.c                |    2 +-
 include/linux/fs.h               |   66 ++++++++++-------------------
 include/linux/mount.h            |    1 +
 mm/shmem.c                       |    2 +-
 106 files changed, 393 insertions(+), 286 deletions(-)

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2011-10-28 12:13 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-10-12 14:48 [PATCH 0/13] read-only remount race fix v7 Miklos Szeredi
2011-10-12 14:48 ` [PATCH 01/13] vfs: ignore error on forced remount Miklos Szeredi
2011-10-12 14:48 ` [PATCH 02/13] vfs: keep list of mounts for each superblock Miklos Szeredi
2011-10-12 14:48 ` [PATCH 03/13] vfs: protect remounting superblock read-only Miklos Szeredi
2011-10-12 14:48 ` [PATCH 04/13] vfs: fs_may_remount_ro: turn unnecessary check into a WARN_ON Miklos Szeredi
2011-10-12 14:48 ` [PATCH 05/13] hypfs: remove unnecessary nlink setting Miklos Szeredi
2011-10-12 14:48 ` [PATCH 06/13] jfs: " Miklos Szeredi
2011-10-12 15:26   ` Dave Kleikamp
2011-10-12 14:49 ` [PATCH 07/13] ocfs2: " Miklos Szeredi
2011-10-12 14:49 ` [PATCH 08/13] logfs: " Miklos Szeredi
2011-10-12 14:49 ` [PATCH 09/13] filesystems: add missing nlink wrappers Miklos Szeredi
2011-10-12 14:49 ` [PATCH 10/13] filesystems: add set_nlink() Miklos Szeredi
2011-10-13 16:33   ` Steven Whitehouse
2011-10-14 15:04     ` Miklos Szeredi
2011-10-12 14:49 ` [PATCH 11/13] vfs: protect i_nlink Miklos Szeredi
2011-10-12 14:49 ` [PATCH 12/13] vfs: count unlinked inodes Miklos Szeredi
2011-10-28  6:08   ` Christoph Hellwig
2011-10-28  7:53     ` Miklos Szeredi
2011-10-28  8:04       ` Christoph Hellwig
2011-10-28  8:20         ` Miklos Szeredi
2011-10-28  8:29           ` Christoph Hellwig
2011-10-12 14:49 ` [PATCH 13/13] vfs: prevent remount read-only if pending removes Miklos Szeredi
2011-10-12 15:03 ` [PATCH 0/13] read-only remount race fix v7 Christoph Hellwig
2011-10-12 15:09   ` Miklos Szeredi
2011-10-13  7:10 ` Toshiyuki Okajima
2011-10-18  6:28   ` Toshiyuki Okajima
2011-10-18  9:02     ` Miklos Szeredi
  -- strict thread matches above, loose matches on Subject: below --
2011-10-28 12:13 [PATCH 00/13] read-only remount race fix v9 Miklos Szeredi
2011-10-28 12:13 ` [PATCH 10/13] filesystems: add set_nlink() Miklos Szeredi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).