lkml.org 
[lkml]   [2020]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[Question] How to deal D state on request_wait_answer?
Date
Hi
We recently detected a bug in virtiofs. Here, we created a
virtual machine as guest with Qemu and virtiofsd. We mounted
virtiofs on guest, for example /home/virtiofs. Then we killed
the virtiofsd in host and accessed /home/virtiofs in guest later.
This casued a process with D state which could not be killed.
The stack of the process as following:
wait_event_interruptible
[<0>] request_wait_answer+0x9d/0x210 [fuse]
[<0>] __fuse_request_send+0x75/0x80 [fuse]
[<0>] fuse_simple_request+0x164/0x270 [fuse]
[<0>] fuse_do_getattr+0xd5/0x2a0 [fuse]
[<0>] vfs_statx+0x89/0xe0
[<0>] __do_sys_newstat+0x39/0x70
[<0>] do_syscall_64+0x55/0x1c0
[<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
We have no idea to deal with the bug. Here, we have some
question about that:
1. Why not use timeout mechanism?
2. If timeout mechanism is used, the process will enter
wait_event after wait_event_interruptible_timeout?

\
 
 \ /
  Last update: 2020-11-17 10:03    [W:0.078 / U:0.180 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site