From: Jeff Layton Date: Wed, 16 Jun 2010 17:40:16 +0000 (-0400) Subject: cifs: pass instantiated filp back after open call X-Git-Tag: v2.6.35-rc4~66^2~5 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6ca9f3bae8b1854794dfa63cdd3b88b7dfe24c13;p=pandora-kernel.git cifs: pass instantiated filp back after open call The current scheme of sticking open files on a list and assuming that cifs_open will scoop them off of it is broken and leads to "Busy inodes after umount..." errors at unmount time. The problem is that there is no guarantee that cifs_open will always be called after a ->lookup or ->create operation. If there are permissions or other problems, then it's quite likely that it *won't* be called. Fix this by fully instantiating the filp whenever the file is created and pass that filp back to the VFS. If there is a problem, the VFS can clean up the references. Signed-off-by: Jeff Layton Reviewed-and-Tested-by: Suresh Jayaraman --- Reading git-diff-tree failed