On Friday, December 06, 2013 09:50:27 AM Patrick Noffke wrote:
> 
> 
> It seems like the "Getting info on" log message is missing a filename.  Would 
> this explain why it's hung until the server sends a RST?
> 
> There are also logs like the following before the cable is reattached:
> fs/cifs/misc.c: Null buffer passed to cifs_small_buf_release
> 

In inode.c, in the cifs_revalidate_dentry_attr function, if I add a check for 
an empty full_path (returning -ENOENT if empty), then the system recovers much 
faster, but my process gets an error opening the file it was trying to open 
when the cable was disconnected.  I noticed cifs logs following trying to call 
cifs_revalidate_dentry_attr with the last file path, but there is a NULL inode 
for several such calls.

I added this right after the check for a NULL full_path:

        if (0 != strcmp(full_path, "")) {
                cFYI(1, "Got empty full_path");
                rc = -ENOENT;
                goto out;
        }

I don't propose this as a patch -- I'm just curious if I'm on the right track.  
Could I return something else, or is there some other way to help the file 
system recover faster?

Thanks,
Patrick
--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to