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