From: Boaz Harrosh <bharrosh@panasas.com>
To: Jan Kara <jack@suse.cz>
Cc: Christoph Hellwig <hch@infradead.org>,
Al Viro <viro@ZenIV.linux.org.uk>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>,
Trond Myklebust <Trond.Myklebust@netapp.com>,
Benny Halevy <bhalevy@panasas.com>
Subject: Re: [RFC] vfs/inode: For none-block-based filesystems default to sb->s_bdi
Date: Tue, 05 Oct 2010 11:29:55 -0400 [thread overview]
Message-ID: <4CAB4473.1070408@panasas.com> (raw)
In-Reply-To: <20101005150913.GB14516@quack.suse.cz>
On 10/05/2010 11:09 AM, Jan Kara wrote:
> On Tue 05-10-10 09:53:41, Boaz Harrosh wrote:
>> On 10/05/2010 04:32 AM, Jan Kara wrote:
>>> Hi Boaz,
>>>
>>> On Mon 04-10-10 18:02:13, Boaz Harrosh wrote:
>>>> Sorry I've just seen Jan's patch:
>>>> From: Jan Kara <jack@suse.cz>
>>>> Date: Mon, 27 Sep 2010 23:56:48 +0200
>>>> Subject: [PATCH] bdi: Initialize inode->i_mapping.backing_dev_info to sb->s_bdi
>>> ...
>>>> That works for me as well. Was it decided how to solve this? Other wise
>>>> I'll need to patch exofs, ASAP for this -rc
>>> In the end, we'll use Christoph's patch
>>> (http://lkml.org/lkml/2010/9/29/76) changing inode_to_bdi() to be
>>> more conservative and also the warning will be gone. So you don't have to
>>> patch anything...
>>>
>> I would still like to fix it. Currently each inode->mapping.backing_dev_info in my
>> none-block-filesystem is set to &default_backing_dev_info. This sounds scary!
>> what about the future patches that will schedule a wakup on set_inode_dirty ?
>> Will they not need my proper sb->s_bdi on each ->mapping?
> Yes, but Christoph is working on separating the bdi handling from
> handling of writeback (pointed from superblock) and that should solve this
> problem as well.
>
If you are right and inode->i_mapping.backing_dev_info will only be used for bdev
inodes, then I prefer if it would be NULL by default and not pointing to
&default_backing_dev_info. Will that be fixed as well?
diff --git a/fs/inode.c b/fs/inode.c
index 8646433..0ec4c47 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -168,7 +168,7 @@ int inode_init_always(struct super_block *sb, struct inode *inode)
mapping->flags = 0;
mapping_set_gfp_mask(mapping, GFP_HIGHUSER_MOVABLE);
mapping->assoc_mapping = NULL;
- mapping->backing_dev_info = &default_backing_dev_info;
+ mapping->backing_dev_info = NULL;
mapping->writeback_index = 0;
/*
Current code in inode_init_always() looks really ugly with that if(sb->s_bdev) ...
surely you want to fix that too, No?
> Honza
Boaz
next prev parent reply other threads:[~2010-10-05 15:30 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-04 21:46 [RFC] vfs/inode: For none-block-based filesystems default to sb->s_bdi Boaz Harrosh
2010-10-04 22:02 ` Boaz Harrosh
2010-10-05 8:32 ` Jan Kara
2010-10-05 13:53 ` Boaz Harrosh
2010-10-05 13:54 ` Boaz Harrosh
2010-10-05 15:12 ` Jan Kara
2010-10-05 15:09 ` Jan Kara
2010-10-05 15:29 ` Boaz Harrosh [this message]
2010-10-05 15:50 ` Jan Kara
2010-10-06 8:55 ` Christoph Hellwig
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=4CAB4473.1070408@panasas.com \
--to=bharrosh@panasas.com \
--cc=Trond.Myklebust@netapp.com \
--cc=bhalevy@panasas.com \
--cc=hch@infradead.org \
--cc=jack@suse.cz \
--cc=linux-fsdevel@vger.kernel.org \
--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.