All of lore.kernel.org
 help / color / mirror / Atom feed
From: Toshiyuki Okajima <toshi.okajima@jp.fujitsu.com>
To: Miklos Szeredi <miklos@szeredi.hu>
Cc: Toshiyuki Okajima <toshi.okajima@jp.fujitsu.com>,
	viro@ZenIV.linux.org.uk, linux-fsdevel@vger.kernel.org,
	linux-kernel@vger.kernel.org, jack@suse.cz, hch@infradead.org,
	akpm@linux-foundation.org, mszeredi@suse.cz
Subject: Re: [PATCH 0/13] read-only remount race fix v7
Date: Tue, 18 Oct 2011 15:28:03 +0900	[thread overview]
Message-ID: <4E9D1C73.3000205@jp.fujitsu.com> (raw)
In-Reply-To: <4E968EE7.2080803@jp.fujitsu.com>

Miklos-san,

(2011/10/13 16:10), Toshiyuki Okajima wrote:
> Hi.
> 
> (2011/10/12 23:48), Miklos Szeredi wrote:
>> 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?
> OK. I will test them with ext4. Please wait.
I have tested your latest patch set by my reproducer with ext4.

On my environment, this reproducer usually detects
 "EXT4-fs (xxx): Couldn't remount RDWR because of unprocessed orphan inode list"
message within 20 minutes when I use your previous patch set.
However, when I use your latest patche set, this producer has not yet 
detected the message for 2 days.

So, I think your latest patch set fixes the problem that delayed deletion 
can start when we remount a superblock read-only.

Tested-by: Toshiyuki Okajima <toshi.okajima@jp.fujitsu.com>

Regards,
Toshiyuki Okajima

> 
> Best Regards,
> Toshiyuki Okajima
> 
>>
>> 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(-)



  reply	other threads:[~2011-10-18  6:26 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
2011-10-18  9:02     ` Miklos Szeredi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4E9D1C73.3000205@jp.fujitsu.com \
    --to=toshi.okajima@jp.fujitsu.com \
    --cc=akpm@linux-foundation.org \
    --cc=hch@infradead.org \
    --cc=jack@suse.cz \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miklos@szeredi.hu \
    --cc=mszeredi@suse.cz \
    --cc=viro@ZenIV.linux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.