bug#68283: ls -l issues on cifs mounted directories
Collin Funk <[email protected]>
| Newsgroups | gmane.comp.gnu.core-utils.bugs |
|---|---|
| Message-ID | <[email protected]> |
Hey Bjoern, Bjoern Voigt wrote: > After upgrading coreutils from version 9.3 to 9.4, "ls -l" shows error > messages, if the files or directories are in a cifs/smb3 mounted directory. > > Example: > /mnt/cifstest here is mounted with "mount -t cifs -o username=myuser > //192.168.1.2/all /mnt/cifstest/". The server is a Samba 4.19.2 server. > The kernel is version 6.1.71. > # ls -l /mnt/cifstest/ > ls: /mnt/cifstest/: Resource temporarily unavailable > ls: /mnt/cifstest/opt: Resource temporarily unavailable > [...] > > "ls -l" from coreutils 9.3 does not show any errors. > > Probably it is not just the error message. "dmesg -w" shows several > errors after executing "ls -l": > > [17563.999109] smb2_reconnect: 3 callbacks suppressed > [17563.999113] CIFS: VFS: reconnect tcon failed rc = -11 > [17564.160117] CIFS: VFS: reconnect tcon failed rc = -11 > [17564.192244] CIFS: VFS: reconnect tcon failed rc = -11 > [17564.223303] CIFS: VFS: reconnect tcon failed rc = -11 > [17564.256080] CIFS: VFS: reconnect tcon failed rc = -11 > [17564.287887] CIFS: VFS: reconnect tcon failed rc = -11 > [17564.410323] CIFS: VFS: reconnect tcon failed rc = -11 > [17564.442095] CIFS: VFS: reconnect tcon failed rc = -11 > [17564.474065] CIFS: VFS: reconnect tcon failed rc = -11 > [17564.569435] CIFS: VFS: reconnect tcon failed rc = -11 > > I debugged this problem a bit. The changes in > coreutils-9.4/lib/file-has-acl.c:file_has_acl are probably responsible > for the errors. The system call listxttr produces the error message > "Resource temporarily unavailable". I could not find the reasons for > error messages shown with "dmesg". > > The listxattr.c test program in the manual page (man listxattr) shows > the following output: > > # ./listxattr /mnt/cifstest/ > listxattr: Resource temporarily unavailable > > Work-around are to downgrade to coreutils 9.3 or not to use the "-l" > option for ls. Thanks for the details and analysis. Pádraig Brady suggested this may have been a CIFS bug at the time: > Thanks for the details. > EAGAIN is not a documented return from listxattr, > and it seems like the cifs client should not let that leak. > [...] > Perhaps something to ask at linux-cifs <at> vger.kernel.org ? I am two years late (sorry), but I see another user reported the same symptoms on linux-cifs a few days after your email [1]. There the culprit was statfs and listxattr, as you noticed. There is also a GitHub thread linked where someone who ran into the same issue noted the same 'dmesg' logs you did [2]. From the linux-cifs thread, it looks like the issue got fixed and backported quickly. So, I don't think any changes in coreutils are needed. I'll go ahead and close this. Thanks again for the well written report. Collin [1] https://lore.kernel.org/regressions/[email protected]/ [2] https://github.com/home-assistant/operating-system/issues/3041#issuecomment-1878989390