Linux CIFS filesystem development
 help / color / mirror / Atom feed
* [Bug 15123] New: getxattr() on cifs sometimes hangs since kernel 5.14
@ 2022-07-15 21:17 samba-bugs
  2022-07-15 21:23 ` [Bug 15123] " samba-bugs
  0 siblings, 1 reply; 2+ messages in thread
From: samba-bugs @ 2022-07-15 21:17 UTC (permalink / raw)
  To: cifs-qa

https://bugzilla.samba.org/show_bug.cgi?id=15123

            Bug ID: 15123
           Summary: getxattr() on cifs sometimes hangs since kernel 5.14
           Product: CifsVFS
           Version: 5.x
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P5
         Component: kernel fs
          Assignee: sfrench@samba.org
          Reporter: forestix@sonic.net
        QA Contact: cifs-qa@samba.org
  Target Milestone: ---

Created attachment 17423
  --> https://bugzilla.samba.org/attachment.cgi?id=17423&action=edit
possible reproducer

When running on recent kernel versions, this system call on a cifs-mounted
file sometimes takes an unusually long time:

getxattr("/cifsmount/dir/image.jpg", "user.baloo.rating", NULL, 0)

The call normally returns in under 10 milliseconds, but on kernel 5.14+, it
sometimes takes over 30 seconds with no significant client or server load.

Discovered while using gwenview to browse 100+ 1.5 MiB images on a samba share
mounted via /etc/fstab. While quickly flipping through the images, the problem
often occurs within 20 seconds. Gwenview freezes until the call completes.

Client:
  kernel versions 5.14 and later
  mount.cifs 6.11
  Gwenview 20.12.3
  Debian Bullseye
  4-core amd64
Server:
  Samba 4.13.13-Debian
  Debian Bullseye
  6-core arm64 

A git bisect identified kernel commit 9e992755be8f as the problematic change.
The problem does not occur when any of the following are true:
- Client is running a kernel from before that commit.
- The nouser_xattr mount option is used on the cifs share.
- Gwenview accesses the files via smb:// URL instead of a cifs mount.

I don't know Gwenview's internals, but using its strace output as a guide, I
have written a potential reproducer. It succeeds at triggering slow getxattr()
calls, though not nearly as slow as those triggered by Gwenview. I will attach
it to this report.

Originally reported in May 2022 on the linux-cifs mailing list:
https://www.spinics.net/lists/linux-cifs/msg25316.html

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-07-15 21:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-15 21:17 [Bug 15123] New: getxattr() on cifs sometimes hangs since kernel 5.14 samba-bugs
2022-07-15 21:23 ` [Bug 15123] " samba-bugs

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox