Re: [linux-cifs-client] [PATCH 0/4] cifs: fix "Busy inodes after umount" issues (RFC)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05/21/2010 11:55 PM, Jeff Layton wrote:
> We've had a spate of "Busy inodes after umount" problems in recent
> kernels. With the help of a reproducer that Suresh provided, I tracked
> down the cause of one of these and wrote it up here:
> 
>     https://bugzilla.samba.org/show_bug.cgi?id=7433
> 
> The main problem is that CIFS opens files during create operations,
> puts these files on a list and then expects that a subsequent open
> operation will find those on the list and make them full, productive
> members of society.
> 
> This expectation is wrong however. There's no guarantee that cifs_open
> will be called at all after a create. There are several scenarios that
> can prevent it from occuring. When this happens, these entries get left
> dangling on the list and nothing will ever clean them up. Recent changes
> have made it so that cifsFileInfo structs hold an inode reference as
> well, which is what actually leads to the busy inodes after umount
> problems.
> 
> This patch is intended to fix this in the right way. It has the create
> operations properly use lookup_instantiate_filp to create an open file
> during the operation that does the actual create. With this, there's
> no need to have cifs_open scrape these entries off the list.

I think this is how we should do it. This makes the code a lot cleaner
and simpler to follow.

> This fixes the busy inodes problem I was able to reproduce. It's not
> very well tested yet however, and I could stand for someone else to
> review it and help test it.
> 

However, I still see "VFS: Busy inode" errors with my reproducer (with
all patches except 1/4). Perhaps it has made the problem less frequent
or it has got something to do with quick inode recyling.

Nevertheless, I think this patchset is a good step in the right direction.

Thanks,

-- 
Suresh Jayaraman
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux