Bug 454229 - kioslave5 keeps laptop from sleeping when searching in dolphin
Summary: kioslave5 keeps laptop from sleeping when searching in dolphin
Status: CONFIRMED
Alias: None
Product: frameworks-kio
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 5.98.0
Platform: Kubuntu Linux
: NOR normal
Target Milestone: ---
Assignee: KIO Bugs
URL:
Keywords: usability
Depends on:
Blocks:
 
Reported: 2022-05-22 18:17 UTC by JanLukas
Modified: 2024-02-12 11:33 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description JanLukas 2022-05-22 18:17:07 UTC
STEPS TO REPRODUCE
1. Open Dolphin File Manager (package version 4:21.12.3-0ubuntu1, current default on Kubuntu 22.04)
2. Go to any folder where searching for files takes a while (long enough to put laptop into sleep mode while it's searching), like "/"
3. Search for some string (which doesn't matter from what I can tell)
4. Try to go to sleep

OBSERVED RESULT
The desktop freezes on a blackscreen with only the mouse cursor still visible (but only occasionally moving for short times). Recently playing audio starts looping, and switching to login shells tty2-tty6 doesn't work. After 30-40 seconds (for me), it returns to the lock screen, as if the laptop had woken up from sleep. After waking up the searching doesn't continue, and even after all dolphin instances are closed, a kioslave5 program continues running, which uses up a lot of memory and cpu and is potentially leaking memory (I haven't found enough time to test this yet), and the memory usage of kio-fuse also increases potentially leaking more memory. This remaining kioslave5 program also stops subsequent tries to go to sleep, leading to the same results as described above and the same error messages described below. Killing this program (typically the kioslave5 program with the highest memory by far (>100MB) usage if no other file search is happening) resolves the problems, until you do the steps to reproduce again.

EXPECTED RESULT
The laptop goes to sleep successfully, after waking up the file search continues and kio-fuse and kioslave5 don't have high memory usage/memory leaks

SOFTWARE/OS VERSIONS:
Linux Kernel: 5.15.0-30-generic (64bit)
KDE Plasma Version: 5.24.4
KDE Frameworks Version: 5.92.0
Qt Version: 5.15.3

ADDITIONAL INFORMATION
Hardware: Acer Aspire 5 Laptop  with Intel 11th Gen i5-1135G7, 15.4 GiB RAM

When using sudo dmesg to get the kernel log, I get this error message:

[ 2311.801748] Freezing user space processes ...

...

[ 2331.806769] Freezing of tasks failed after 20.005 seconds (5 tasks refusing to freeze, wq_busy=0):
[ 2331.806960] task:kioslave5       state:D stack:    0 pid:11294 ppid:     1 flags:0x00004006
[ 2331.806967] Call Trace:
[ 2331.806970]  <TASK>
[ 2331.806973]  __schedule+0x23d/0x590
[ 2331.806982]  schedule+0x4e/0xb0
[ 2331.806986]  request_wait_answer+0xa6/0x210
[ 2331.806991]  ? wait_woken+0x70/0x70
[ 2331.806996]  fuse_simple_request+0x1b1/0x360
[ 2331.806999]  fuse_send_open+0xb7/0x110
[ 2331.807003]  fuse_file_open+0xdf/0x180
[ 2331.807007]  fuse_open_common+0x9c/0x190
[ 2331.807011]  ? fuse_dir_release+0x20/0x20
[ 2331.807014]  fuse_dir_open+0x13/0x20
[ 2331.807016]  do_dentry_open+0x157/0x380
[ 2331.807021]  vfs_open+0x2d/0x30
[ 2331.807025]  do_open+0x205/0x3d0
[ 2331.807029]  path_openat+0x10e/0x2b0
[ 2331.807032]  do_filp_open+0xb2/0x150
[ 2331.807035]  ? __check_object_size+0x19/0x20
[ 2331.807039]  do_sys_openat2+0x9b/0x160
[ 2331.807043]  __x64_sys_openat+0x55/0x90
[ 2331.807047]  do_syscall_64+0x59/0xc0
[ 2331.807052]  ? exit_to_user_mode_prepare+0x37/0xb0
[ 2331.807057]  ? syscall_exit_to_user_mode+0x27/0x50
[ 2331.807060]  ? __x64_sys_read+0x19/0x20
[ 2331.807063]  ? do_syscall_64+0x69/0xc0
[ 2331.807067]  ? exit_to_user_mode_prepare+0x37/0xb0
[ 2331.807070]  ? syscall_exit_to_user_mode+0x27/0x50
[ 2331.807073]  ? __x64_sys_write+0x19/0x20
[ 2331.807075]  ? do_syscall_64+0x69/0xc0
[ 2331.807079]  ? asm_sysvec_apic_timer_interrupt+0xa/0x20
[ 2331.807084]  entry_SYSCALL_64_after_hwframe+0x44/0xae
[ 2331.807088] RIP: 0033:0x7f6544e1bbcc
[ 2331.807092] RSP: 002b:00007ffc3fc40b90 EFLAGS: 00000287 ORIG_RAX: 0000000000000101
[ 2331.807096] RAX: ffffffffffffffda RBX: 00007ffc3fc40f30 RCX: 00007f6544e1bbcc
[ 2331.807098] RDX: 0000000000090800 RSI: 0000561f997bd018 RDI: 00000000ffffff9c
[ 2331.807100] RBP: 00007ffc3fc40f20 R08: 0000000000090800 R09: 0000561f997bd018
[ 2331.807102] R10: 0000000000000000 R11: 0000000000000287 R12: 00007ffc3fc40ce8
[ 2331.807104] R13: 00007ffc3fc40da8 R14: 00007ffc3fc40da8 R15: 00007ffc3fc40f00
[ 2331.807107]  </TASK>
[ 2331.807110] task:kioslave5       state:D stack:    0 pid:11347 ppid:  1041 flags:0x00004006
[ 2331.807115] Call Trace:
[ 2331.807116]  <TASK>
[ 2331.807117]  __schedule+0x23d/0x590
[ 2331.807122]  schedule+0x4e/0xb0
[ 2331.807126]  request_wait_answer+0xa6/0x210
[ 2331.807129]  ? wait_woken+0x70/0x70
[ 2331.807132]  fuse_simple_request+0x1b1/0x360
[ 2331.807135]  fuse_send_open+0xb7/0x110
[ 2331.807139]  fuse_file_open+0xdf/0x180
[ 2331.807143]  fuse_open_common+0x9c/0x190
[ 2331.807147]  ? fuse_dir_release+0x20/0x20
[ 2331.807150]  fuse_dir_open+0x13/0x20
[ 2331.807153]  do_dentry_open+0x157/0x380
[ 2331.807156]  vfs_open+0x2d/0x30
[ 2331.807160]  do_open+0x205/0x3d0
[ 2331.807163]  path_openat+0x10e/0x2b0
[ 2331.807166]  do_filp_open+0xb2/0x150
[ 2331.807170]  ? __check_object_size+0x19/0x20
[ 2331.807173]  ? alloc_fd+0x53/0x170
[ 2331.807178]  do_sys_openat2+0x9b/0x160
[ 2331.807182]  __x64_sys_openat+0x55/0x90
[ 2331.807185]  do_syscall_64+0x59/0xc0
[ 2331.807189]  ? exit_to_user_mode_prepare+0x37/0xb0
[ 2331.807193]  ? syscall_exit_to_user_mode+0x27/0x50
[ 2331.807196]  ? __x64_sys_write+0x19/0x20
[ 2331.807198]  ? do_syscall_64+0x69/0xc0
[ 2331.807201]  ? syscall_exit_to_user_mode+0x27/0x50
[ 2331.807204]  ? __x64_sys_write+0x19/0x20
[ 2331.807206]  ? do_syscall_64+0x69/0xc0
[ 2331.807210]  ? asm_common_interrupt+0x8/0x40
[ 2331.807213]  entry_SYSCALL_64_after_hwframe+0x44/0xae
[ 2331.807217] RIP: 0033:0x7fb189f8abcc
[ 2331.807219] RSP: 002b:00007ffe3d060d90 EFLAGS: 00000287 ORIG_RAX: 0000000000000101
[ 2331.807221] RAX: ffffffffffffffda RBX: 00007ffe3d061130 RCX: 00007fb189f8abcc
[ 2331.807223] RDX: 0000000000090800 RSI: 0000559a8a96ca68 RDI: 00000000ffffff9c
[ 2331.807225] RBP: 00007ffe3d061120 R08: 0000000000090800 R09: 0000559a8a96ca68
[ 2331.807226] R10: 0000000000000000 R11: 0000000000000287 R12: 00007ffe3d060ee8
[ 2331.807228] R13: 00007ffe3d060fa8 R14: 00007ffe3d060fa8 R15: 00007ffe3d061100
[ 2331.807230]  </TASK>
[ 2331.807232] task:kioslave5       state:D stack:    0 pid:11351 ppid:  1041 flags:0x00004006
[ 2331.807235] Call Trace:
[ 2331.807236]  <TASK>
[ 2331.807237]  __schedule+0x23d/0x590
[ 2331.807242]  schedule+0x4e/0xb0
[ 2331.807246]  request_wait_answer+0xa6/0x210
[ 2331.807248]  ? wait_woken+0x70/0x70
[ 2331.807252]  fuse_simple_request+0x1b1/0x360
[ 2331.807255]  fuse_dentry_revalidate+0x177/0x3c0
[ 2331.807260]  lookup_fast+0xd9/0x160
[ 2331.807262]  ? inode_permission+0x6c/0x190
[ 2331.807265]  walk_component+0x43/0x1b0
[ 2331.807268]  ? path_init+0x2bc/0x3e0
[ 2331.807271]  path_lookupat+0x6e/0x1b0
[ 2331.807274]  filename_lookup+0xcf/0x1d0
[ 2331.807278]  ? __check_object_size+0x19/0x20
[ 2331.807280]  ? strncpy_from_user+0x44/0x140
[ 2331.807285]  ? getname_flags.part.0+0x4c/0x1b0
[ 2331.807288]  ? restore_fpregs_from_fpstate+0x4e/0xc0
[ 2331.807294]  user_path_at_empty+0x3f/0x60
[ 2331.807298]  path_getxattr+0x4a/0xb0
[ 2331.807302]  ? do_syscall_64+0x69/0xc0
[ 2331.807306]  __x64_sys_getxattr+0x24/0x30
[ 2331.807310]  do_syscall_64+0x59/0xc0
[ 2331.807314]  ? __x64_sys_readlink+0x1e/0x30
[ 2331.807317]  ? do_syscall_64+0x69/0xc0
[ 2331.807321]  ? do_syscall_64+0x69/0xc0
[ 2331.807324]  ? asm_sysvec_irq_work+0xa/0x20
[ 2331.807328]  entry_SYSCALL_64_after_hwframe+0x44/0xae
[ 2331.807332] RIP: 0033:0x7f84fbf4924e
[ 2331.807333] RSP: 002b:00007ffc5a5125a8 EFLAGS: 00000246 ORIG_RAX: 00000000000000bf
[ 2331.807336] RAX: ffffffffffffffda RBX: 0000000000008000 RCX: 00007f84fbf4924e
[ 2331.807337] RDX: 00007ffc5a5125b0 RSI: 00007f84fbac0000 RDI: 0000560a80b0eae8
[ 2331.807339] RBP: 00007ffc5a512700 R08: 00000000ffffffff R09: 0000000000000010
[ 2331.807340] R10: 0000000000000084 R11: 0000000000000246 R12: 0000560a80b0eae8
[ 2331.807342] R13: 00007ffc5a5125b0 R14: 00007f84fbac0000 R15: 00007ffc5a512780
[ 2331.807345]  </TASK>
[ 2331.807346] task:kioslave5       state:D stack:    0 pid:11372 ppid:     1 flags:0x00004006
[ 2331.807349] Call Trace:
[ 2331.807350]  <TASK>
[ 2331.807351]  __schedule+0x23d/0x590
[ 2331.807355]  schedule+0x4e/0xb0
[ 2331.807359]  request_wait_answer+0xa6/0x210
[ 2331.807362]  ? wait_woken+0x70/0x70
[ 2331.807365]  fuse_simple_request+0x1b1/0x360
[ 2331.807368]  fuse_dentry_revalidate+0x177/0x3c0
[ 2331.807373]  lookup_fast+0xd9/0x160
[ 2331.807376]  walk_component+0x43/0x1b0
[ 2331.807379]  path_lookupat+0x6e/0x1b0
[ 2331.807382]  filename_lookup+0xcf/0x1d0
[ 2331.807386]  ? __check_object_size+0x19/0x20
[ 2331.807388]  ? strncpy_from_user+0x44/0x140
[ 2331.807391]  ? getname_flags.part.0+0x4c/0x1b0
[ 2331.807395]  user_path_at_empty+0x3f/0x60
[ 2331.807398]  vfs_statx+0x7a/0x120
[ 2331.807402]  do_statx+0x45/0x80
[ 2331.807406]  ? restore_fpregs_from_fpstate+0x4e/0xc0
[ 2331.807410]  ? switch_fpu_return+0x4e/0xc0
[ 2331.807415]  __x64_sys_statx+0x1f/0x30
[ 2331.807419]  do_syscall_64+0x59/0xc0
[ 2331.807422]  ? do_syscall_64+0x69/0xc0
[ 2331.807426]  ? exit_to_user_mode_prepare+0x92/0xb0
[ 2331.807430]  ? syscall_exit_to_user_mode+0x27/0x50
[ 2331.807432]  ? __x64_sys_getxattr+0x24/0x30
[ 2331.807436]  ? do_syscall_64+0x69/0xc0
[ 2331.807440]  ? do_syscall_64+0x69/0xc0
[ 2331.807443]  ? do_syscall_64+0x69/0xc0
[ 2331.807447]  ? do_syscall_64+0x69/0xc0
[ 2331.807450]  ? syscall_exit_to_user_mode+0x27/0x50
[ 2331.807453]  ? __x64_sys_getxattr+0x24/0x30
[ 2331.807456]  ? do_syscall_64+0x69/0xc0
[ 2331.807460]  ? syscall_exit_to_user_mode+0x27/0x50
[ 2331.807462]  ? __x64_sys_getxattr+0x24/0x30
[ 2331.807466]  ? do_syscall_64+0x69/0xc0
[ 2331.807469]  ? do_syscall_64+0x69/0xc0
[ 2331.807473]  ? asm_sysvec_reschedule_ipi+0xa/0x20
[ 2331.807477]  entry_SYSCALL_64_after_hwframe+0x44/0xae
[ 2331.807480] RIP: 0033:0x7f54635401ee
[ 2331.807481] RSP: 002b:00007ffd23532568 EFLAGS: 00000246 ORIG_RAX: 000000000000014c
[ 2331.807483] RAX: ffffffffffffffda RBX: 000000000000001f RCX: 00007f54635401ee
[ 2331.807485] RDX: 0000000000000100 RSI: 0000563157c24328 RDI: 00000000ffffff9c
[ 2331.807486] RBP: 00007ffd23532780 R08: 00007ffd235325e0 R09: 0000563157c1d120
[ 2331.807488] R10: 0000000000000a79 R11: 0000000000000246 R12: 0000000000000000
[ 2331.807490] R13: 00007ffd235327a8 R14: 0000000000000002 R15: 00007ffd235325e0
[ 2331.807492]  </TASK>
[ 2331.807494] task:kioslave5       state:D stack:    0 pid:11376 ppid:     1 flags:0x00004006
[ 2331.807496] Call Trace:
[ 2331.807497]  <TASK>
[ 2331.807498]  __schedule+0x23d/0x590
[ 2331.807503]  schedule+0x4e/0xb0
[ 2331.807507]  request_wait_answer+0xa6/0x210
[ 2331.807509]  ? wait_woken+0x70/0x70
[ 2331.807512]  fuse_simple_request+0x1b1/0x360
[ 2331.807515]  fuse_send_open+0xb7/0x110
[ 2331.807519]  fuse_file_open+0xdf/0x180
[ 2331.807523]  fuse_open_common+0x9c/0x190
[ 2331.807527]  ? fuse_dir_release+0x20/0x20
[ 2331.807529]  fuse_dir_open+0x13/0x20
[ 2331.807532]  do_dentry_open+0x157/0x380
[ 2331.807536]  vfs_open+0x2d/0x30
[ 2331.807539]  do_open+0x205/0x3d0
[ 2331.807542]  path_openat+0x10e/0x2b0
[ 2331.807546]  do_filp_open+0xb2/0x150
[ 2331.807549]  ? __check_object_size+0x19/0x20
[ 2331.807552]  ? alloc_fd+0x53/0x170
[ 2331.807556]  do_sys_openat2+0x9b/0x160
[ 2331.807560]  __x64_sys_openat+0x55/0x90
[ 2331.807564]  do_syscall_64+0x59/0xc0
[ 2331.807567]  ? exit_to_user_mode_prepare+0x37/0xb0
[ 2331.807571]  ? syscall_exit_to_user_mode+0x27/0x50
[ 2331.807574]  ? do_syscall_64+0x69/0xc0
[ 2331.807577]  ? exit_to_user_mode_prepare+0x37/0xb0
[ 2331.807581]  ? syscall_exit_to_user_mode+0x27/0x50
[ 2331.807584]  ? __x64_sys_read+0x19/0x20
[ 2331.807586]  ? do_syscall_64+0x69/0xc0
[ 2331.807590]  ? do_syscall_64+0x69/0xc0
[ 2331.807593]  ? do_syscall_64+0x69/0xc0
[ 2331.807597]  ? do_syscall_64+0x69/0xc0
[ 2331.807600]  ? do_syscall_64+0x69/0xc0
[ 2331.807604]  ? asm_sysvec_apic_timer_interrupt+0xa/0x20
[ 2331.807607]  entry_SYSCALL_64_after_hwframe+0x44/0xae
[ 2331.807611] RIP: 0033:0x7fa07543abcc
[ 2331.807612] RSP: 002b:00007ffed572d6b0 EFLAGS: 00000287 ORIG_RAX: 0000000000000101
[ 2331.807614] RAX: ffffffffffffffda RBX: 00007ffed572da50 RCX: 00007fa07543abcc
[ 2331.807615] RDX: 0000000000090800 RSI: 0000557777328ae8 RDI: 00000000ffffff9c
[ 2331.807617] RBP: 00007ffed572da40 R08: 0000000000090800 R09: 0000557777328ae8
[ 2331.807618] R10: 0000000000000000 R11: 0000000000000287 R12: 00007ffed572d808
[ 2331.807620] R13: 00007ffed572d8c8 R14: 00007ffed572d8c8 R15: 00007ffed572da20
[ 2331.807622]  </TASK>

[ 2331.807630] OOM killer enabled.
[ 2331.807631] Restarting tasks ... done.
Comment 1 JanLukas 2022-10-26 19:47:51 UTC
I just upgraded to 22.10, and this bug is still present, but with a few crucial changes:

NEW STEPS TO REPRODUCE
1. Open Dolphin File Manager (package version 4:22.08.2-0ubuntu1, default on Kubuntu 22.10)
2. File-search ANYWHERE for ANYTHING
3. Try to go to sleep. It doesn't matter if you do it while searching, or long after it finished

NEW OBSERVED RESULT
Again the desktop freezes on a black screen and/or the login screen for about 20 seconds (my machine), after which it returns to the lock screen. Now, instead of just killing the kioslave5 program, you have to kill kio-fuse, to get your laptop to sleep properly again, as killing kioslave5 doesn't do anything (not through the GUI nor using the terminal).

STILL EXPECTED RESULT
The laptop goes to sleep successfully.

HARDWARE/SOFTWARE VERSIONS
Operating System: Kubuntu 22.10
KDE Plasma Version: 5.25.5
KDE Frameworks Version: 5.98.0
Qt Version: 5.15.6
Kernel Version: 5.19.0-23-generic (64-bit)
Graphics Platform: Wayland
Processors: 8 × 11th Gen Intel® Core™ i5-1135G7 @ 2.40GHz
Memory: 15,4 GiB of RAM
Graphics Processor: Mesa Intel® Xe Graphics

ADDITIONAL INFORMATION

The dmesg is still really similar, so I won't copy that in here again
Comment 2 JanLukas 2024-02-12 11:33:06 UTC
Update for 23.10:

NEW STEPS TO REPRODUCE
1. Open Dolphin File Manager
2. Go to any folder where searching for files takes a while (long enough to put laptop into sleep mode while it's searching), like "/"
3. Search for some string (which doesn't matter from what I can tell)
4. Try to go to sleep

NEW OBSERVED RESULT
The desktop no longer freezes, and the laptop goes to sleep successfully. A kioslave5 with (on my machine) about 100MB of memory usage stays, and a baloorunner with about 80MB of memory use also stays. kio-fuse also stays, but doesn't have high memory usage.

EXPECTED RESULT
I am not sure if the processes described above and their high memory usage are intended, but because it's the same "problem" as in my previous bug reports, I want to report it again. The most annoying part of the bug, the freezing, is fixed however.

HARDWARE/SOFTWARE VERSIONS
Operating System: Kubuntu 23.10
KDE Plasma Version: 5.27.8
KDE Frameworks Version: 5.110.0
Qt Version: 5.15.10
Kernel Version: 6.5.0-15-generic (64-bit)
Graphics Platform: Wayland
Processors: 8 × 11th Gen Intel® Core™ i5-1135G7 @ 2.40GHz
Memory: 15,4 GiB of RAM
Graphics Processor: Mesa Intel® Xe Graphics

ADDITIONAL INFORMATION

dmesg doesn't show the previously described error messages anymore