This seems like a sort of known issue (unclear still). Cursory grepping in fs/cifs:
readdir.c::find_cifs_entry
/*
* If first entry in buf is zero then is first buffer
* in search response data which means it is likely . and ..
* will be in this buffer, although some servers do not return
* . and .. for the root of a drive and for those we need
* to start two entries earlier.
*/
It might be helpful to enable some more cifs debugging by booting with
dyndbg="file fs/cifs/readdir.c +p"
appended to the kernel commandline?
Also, is there a reason you are passing 'nounix' specifically? It seems like an uncommon option to need.
This seems like a sort of known issue (unclear still). Cursory grepping in fs/cifs:
readdir. c::find_ cifs_entry
/*
* If first entry in buf is zero then is first buffer
* in search response data which means it is likely . and ..
* will be in this buffer, although some servers do not return
* . and .. for the root of a drive and for those we need
* to start two entries earlier.
*/
It might be helpful to enable some more cifs debugging by booting with
dyndbg="file fs/cifs/readdir.c +p"
appended to the kernel commandline?
Also, is there a reason you are passing 'nounix' specifically? It seems like an uncommon option to need.