nvidia-settings hangs for some time after suspend
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
nvidia-settings (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: nvidia-settings
I have a Dell D620 laptop with a nvidia card that I bring with me between work and home. After resuming from suspend at work, I typically run nvidia-settings to switch to my external screen, but nvidia-settings tends to hang for a long time before opening its window. Minor annoyance, as it will usually come around.
Today I ran an strace, and I think this identifies the culprit. It ends like this:
stat64(
stat64(
stat64(
stat64(
stat64(
stat64(
stat64(
stat64(
stat64(
Now, "data" is an sshfs mount, which obviously got broken when I suspended the machine, and stat64 apparently hangs non-interruptedly for a long time when a mount has gone astray.
So, to reproduce it, I just did:
1. mount a disk over the net in your home directory
2. run nvidia-settings, verify that it pops up immediately
3. unplug the net
4. run nvidia-settings again, see that it hangs for a long time
5. reconnect net, check that net mount works
6. run nvidia-settings, immediate response again
Of course, this is easily worked around by mounting stuff in a subdirectory (i.e. ~/mnt/data) instead, but still, two questions:
1. Does the kernel/stat64 really need to wait this long for stat'ing a broken network mount? Couldn't it somehow be detected?
2. Does nvidia-settings *really* need to stat each and every file in my home directory?
description: | updated |