LINUX.ORG.RU

как убить процесс в D state

 , , , ,


0

1

Кдешный дольфин при использовании поиска по файлам в директории в некоторых случаях создаёт зависший процесс kioslave5 в состоянии D, и этот процесс никуда не девается даже если поиск остановить. Есть ли какой-нибудь костыль, чтобы хоть как-то этот процесс убить без ребута?


Ответ на: комментарий от Hertz

cat /proc/19816/stack

[<0>] request_wait_answer+0x83/0x1e0 [fuse]
[<0>] fuse_simple_request+0x1b4/0x2a0 [fuse]
[<0>] fuse_send_open+0x109/0x140 [fuse]
[<0>] fuse_file_open+0xba/0x150 [fuse]
[<0>] fuse_open_common+0x86/0x150 [fuse]
[<0>] do_dentry_open+0x1cf/0x400
[<0>] path_openat+0xd1a/0x11a0
[<0>] do_filp_open+0xa1/0x130
[<0>] do_sys_openat2+0x74/0x130
[<0>] __x64_sys_openat+0x5c/0x70
[<0>] do_syscall_64+0x34/0x80
[<0>] entry_SYSCALL_64_after_hwframe+0x46/0xb0
fadi1s
() автор топика
Ответ на: комментарий от Stil

D state это не зависший процесс, это waiting for disk IO

Это uninterruptable sleep.

В случае с fuse как у ТС - достаточно просто убить соответствующий фузовый маунт (это fuse-бэкстор у него завис, а kioslave это просто следствие)

no-dashi-v2 ★★
()