[linux-cifs-client] kernel BUG at fs/dcache.c:670

Suresh Jayaraman sjayaraman at suse.de
Sun Feb 21 09:05:00 MST 2010


Including the original reporter miha at krneki.org as I missed including
him in my response..

Miha: Please see Jeff's response below.


On 02/21/2010 09:23 PM, Jeff Layton wrote:
> On Sun, 21 Feb 2010 20:57:09 +0530
> Suresh Jayaraman <sjayaraman at suse.de> wrote:
> 
>> On 02/18/2010 01:10 AM, Jeff Layton wrote:
>>> On Wed, 17 Feb 2010 15:45:05 +0530
>>> Suresh Jayaraman <sjayaraman at suse.de> wrote:
>>>
>>>> On 02/04/2010 11:48 PM, Jeff Layton wrote:
>>>>> On Thu, 04 Feb 2010 19:07:26 +0100
>>>>> Miha Verlic <miha at krneki.org> wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> after upgrading to 2.6.32.x kernel, I've soon encountered the bug in the
>>>>>> attachment. After some testing I noticed it happens from 2.6.31.7 and
>>>>>> 2.6.32 onwards.
>>>>>>
>>>>>> Since I can reproduce it quite easily, I've bisected the bug down to
>>>>>> these two commits:
>>>>>>
>>>>>> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=ec06aedd44541129840ed52e6165afa3796a27bf
>>>>>> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=f534dc994397560343be4a3223b9bbaa8e739e1f
>>>>>>
>>>>>> To reproduce the bug all I have to do is mount some cifs shares, read
>>>>>> some data off the remove share and unmount the volume (no files are in
>>>>>> use when I unmount the share). Interestingly enough, it only happens
>>>>>> with one of the 5 shares I regulary mount.
>>>>>>
>>>>>> --
>>>>>> Miha
>>>>>
>>>>> cc'ing Steve French too...
>>>>>
>>>>> Interesting. Does the problem go away if you mount that share with '-o
>>>>> noserverino'? 
>>>>>
>>>>> That may be an side effect of this bug:
>>>>>
>>>>> http://bugzilla.kernel.org/show_bug.cgi?id=15088
>>>>>
>>>>
>>>> Jeff,
>>>>
>>>> I haven't had a look at your recent cache invalidation bug fixing
>>>> patches. Wondering whether that patch set addresses this kernel BUG too?
>>>>
>>>>
>>>> Thanks,
>>>
>>> Not sure, but it's certainly worth testing to see if it does. This
>>> commit in particular:
>>>
>>> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=f12f98dba6ea1517cd7fbb912208893b9c014c15
>>>
>>
>> I got this patch tested but didn't help. It resulted in similar BUG when
>> 'noserverino' mount option is not used.
>>
>>
> 
> The oops has this info:
> 
> [ 2589.444430] BUG: Dentry f04fcf00{i=2,n=/} still in use (1) [unmount of cifs cifs]
> 
> So the problem is the root inode, and it has i_ino of 2. That makes me
> wonder whether the problem might be in how we're autodisabling
> serverino.
> 
> When we find a server that doesn't support server inode numbers
> properly, we stop trying to get them. But...what of the inodes that
> we've already instantiated that are using server inode numbers?
> 
> Do we end up with more than one copy of the same inode, but with
> different uniqueid's? If so, maybe that's throwing off the refcount on
> one of the inodes.
> 
> Do you have a reproducer for this problem? You also mentioned that you
> don't see it on all of your cifs mounts. What sort of server are you
> seeing this against?
> 
> It probably won't help, but it might not hurt to test this patch too:
> 
> http://git.samba.org/?p=jlayton/cifs.git;a=commitdiff;h=314db603b4c83e0f30eb31c82cb32dc48a834d55
> 
> ...cifs_lookup does some funny stuff with the dcache...
> 


-- 
Suresh Jayaraman


More information about the linux-cifs-client mailing list