lkml.org 
[lkml]   [2012]   [Jul]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 1/8] vfs: Move noop_backing_dev_info check from sync into writeback
    Date
    In principle, a filesystem may want to have ->sync_fs() called during sync(1)
    although it does not have a bdi (i.e. s_bdi is set to noop_backing_dev_info).
    Only writeback code really needs bdi set to something reasonable. So move the
    checks where they are more logical.

    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Jan Kara <jack@suse.cz>
    ---
    fs/fs-writeback.c | 5 +++++
    fs/sync.c | 7 -------
    2 files changed, 5 insertions(+), 7 deletions(-)

    diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
    index 41a3ccf..8f660dd 100644
    --- a/fs/fs-writeback.c
    +++ b/fs/fs-writeback.c
    @@ -1315,6 +1315,8 @@ void writeback_inodes_sb_nr(struct super_block *sb,
    .reason = reason,
    };

    + if (sb->s_bdi == &noop_backing_dev_info)
    + return;
    WARN_ON(!rwsem_is_locked(&sb->s_umount));
    bdi_queue_work(sb->s_bdi, &work);
    wait_for_completion(&done);
    @@ -1398,6 +1400,9 @@ void sync_inodes_sb(struct super_block *sb)
    .reason = WB_REASON_SYNC,
    };

    + /* Nothing to do? */
    + if (sb->s_bdi == &noop_backing_dev_info)
    + return;
    WARN_ON(!rwsem_is_locked(&sb->s_umount));

    bdi_queue_work(sb->s_bdi, &work);
    diff --git a/fs/sync.c b/fs/sync.c
    index 11e3d1c..b3d2a00 100644
    --- a/fs/sync.c
    +++ b/fs/sync.c
    @@ -29,13 +29,6 @@
    */
    static int __sync_filesystem(struct super_block *sb, int wait)
    {
    - /*
    - * This should be safe, as we require bdi backing to actually
    - * write out data in the first place
    - */
    - if (sb->s_bdi == &noop_backing_dev_info)
    - return 0;
    -
    if (sb->s_qcop && sb->s_qcop->quota_sync)
    sb->s_qcop->quota_sync(sb, -1, wait);

    --
    1.7.1


    \
     
     \ /
      Last update: 2012-07-03 17:21    [W:0.024 / U:62.652 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site