lkml.org 
[lkml]   [2006]   [Aug]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 07/18] [PATCH] BLOCK: Remove dependence on existence of blockdev_superblock [try #3]
    Date
    From: David Howells <dhowells@redhat.com>

    Move blockdev_superblock extern declaration from fs/fs-writeback.c to a
    headerfile and remove the dependence on it by wrapping it in a macro.

    Signed-Off-By: David Howells <dhowells@redhat.com>
    ---

    fs/fs-writeback.c | 8 +++-----
    include/linux/blkdev.h | 4 ++++
    2 files changed, 7 insertions(+), 5 deletions(-)

    diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
    index 892643d..d9de186 100644
    --- a/fs/fs-writeback.c
    +++ b/fs/fs-writeback.c
    @@ -23,8 +23,6 @@ #include <linux/blkdev.h>
    #include <linux/backing-dev.h>
    #include <linux/buffer_head.h>

    -extern struct super_block *blockdev_superblock;
    -
    /**
    * __mark_inode_dirty - internal function
    * @inode: inode to mark
    @@ -320,7 +318,7 @@ sync_sb_inodes(struct super_block *sb, s

    if (!bdi_cap_writeback_dirty(bdi)) {
    list_move(&inode->i_list, &sb->s_dirty);
    - if (sb == blockdev_superblock) {
    + if (sb_is_blkdev_sb(sb)) {
    /*
    * Dirty memory-backed blockdev: the ramdisk
    * driver does this. Skip just this inode
    @@ -337,14 +335,14 @@ sync_sb_inodes(struct super_block *sb, s

    if (wbc->nonblocking && bdi_write_congested(bdi)) {
    wbc->encountered_congestion = 1;
    - if (sb != blockdev_superblock)
    + if (!sb_is_blkdev_sb(sb))
    break; /* Skip a congested fs */
    list_move(&inode->i_list, &sb->s_dirty);
    continue; /* Skip a congested blockdev */
    }

    if (wbc->bdi && bdi != wbc->bdi) {
    - if (sb != blockdev_superblock)
    + if (!sb_is_blkdev_sb(sb))
    break; /* fs has the wrong queue */
    list_move(&inode->i_list, &sb->s_dirty);
    continue; /* blockdev has wrong queue */
    diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
    index 04a11f7..311538e 100644
    --- a/include/linux/blkdev.h
    +++ b/include/linux/blkdev.h
    @@ -16,6 +16,10 @@ #include <linux/stringify.h>

    #include <asm/scatterlist.h>

    +extern struct super_block *blockdev_superblock;
    +
    +#define sb_is_blkdev_sb(sb) ((sb) == blockdev_superblock)
    +
    struct scsi_ioctl_command;

    struct request_queue;
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2006-08-25 16:53    [W:0.022 / U:30.856 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site