<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Hi Alex,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I notice a patch you pushed in <a href="https://lkml.org/lkml/2019/2/18/1315">
https://lkml.org/lkml/2019/2/18/1315</a><o:p></o:p></p>
<p class="MsoNormal">You said the previous commit you pushed may prone to deadlock, could you please share the details about how to reproduce the deadlock scene if you know it.<o:p></o:p></p>
<p class="MsoNormal">I met a similar question that all lspci command went into D state and libvirtd went into Z state when destroy a VM with a GPU passthrou. The stack like that:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726514+07:00|err|kernel[-]|[2427373.553663] INFO: task ps:112058 blocked for more than 120 seconds.<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726576+07:00|err|kernel[-]|[2427373.553667] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726599+07:00|info|kernel[-]|[2427373.553669] ps              D 0000000000000000     0 112058      1 0x00000004<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726620+07:00|warning|kernel[-]|[2427373.553673] Call Trace:<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726640+07:00|warning|kernel[-]|[2427373.553682]  [<ffffffff816b7069>] schedule_preempt_disabled+0x29/0x70<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726668+07:00|warning|kernel[-]|[2427373.553684]  [<ffffffff816b4a21>] __mutex_lock_slowpath+0xe1/0x170<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726689+07:00|warning|kernel[-]|[2427373.553689]  [<ffffffff816b400f>] mutex_lock+0x1f/0x2f<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726707+07:00|warning|kernel[-]|[2427373.553695]  [<ffffffff81379337>] pci_bus_save_and_disable+0x37/0x70<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726725+07:00|warning|kernel[-]|[2427373.553697]  [<ffffffff8137aeb8>] pci_try_reset_bus+0x38/0x80<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726743+07:00|warning|kernel[-]|[2427373.553730]  [<ffffffffa0261045>] vfio_pci_release+0x3d5/0x430 [vfio_pci]<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726761+07:00|warning|kernel[-]|[2427373.553737]  [<ffffffffa0260640>] ? vfio_pci_rw+0xc0/0xc0 [vfio_pci]<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726779+07:00|warning|kernel[-]|[2427373.553745]  [<ffffffffa02529f2>] vfio_device_fops_release+0x22/0x40 [vfio]<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726798+07:00|warning|kernel[-]|[2427373.553751]  [<ffffffff812179dc>] __fput+0xec/0x260<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726821+07:00|warning|kernel[-]|[2427373.553754]  [<ffffffff81217c8e>] ____fput+0xe/0x10<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726840+07:00|warning|kernel[-]|[2427373.553758]  [<ffffffff810b684a>] task_work_run+0xaa/0xe0<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726858+07:00|warning|kernel[-]|[2427373.553763]  [<ffffffff8102ac12>] do_notify_resume+0x92/0xb0<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726876+07:00|warning|kernel[-]|[2427373.553767]  [<ffffffff816c264f>] int_signal+0x12/0x17<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726892+07:00|err|kernel[-]|[2427373.553771] INFO: task lspci:139540 blocked for more than 120 seconds.<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726910+07:00|err|kernel[-]|[2427373.553772] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726929+07:00|info|kernel[-]|[2427373.553773] lspci           D 0000000000000000     0 139540 139539 0x00000000<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726948+07:00|warning|kernel[-]|[2427373.553776] Call Trace:<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726970+07:00|warning|kernel[-]|[2427373.553778]  [<ffffffff816b5f79>] schedule+0x29/0x70<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.726989+07:00|warning|kernel[-]|[2427373.553782]  [<ffffffff81370ca0>] pci_wait_cfg+0xa0/0x110<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.727006+07:00|warning|kernel[-]|[2427373.553787]  [<ffffffff810cfe40>] ? wake_up_state+0x20/0x20<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.727023+07:00|warning|kernel[-]|[2427373.553790]  [<ffffffff81370e15>] pci_user_read_config_dword+0x105/0x110<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.727043+07:00|warning|kernel[-]|[2427373.553794]  [<ffffffff8137e974>] pci_read_config+0x114/0x2c0<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.727063+07:00|warning|kernel[-]|[2427373.553799]  [<ffffffff811f4835>] ? __kmalloc+0x55/0x240<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.727084+07:00|warning|kernel[-]|[2427373.553804]  [<ffffffff812992fe>] read+0xde/0x1f0<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.727103+07:00|warning|kernel[-]|[2427373.553807]  [<ffffffff81215a5f>] vfs_read+0x9f/0x170<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.727123+07:00|warning|kernel[-]|[2427373.553809]  [<ffffffff81216812>] SyS_pread64+0x92/0xc0<o:p></o:p></p>
<p class="MsoNormal">2019-03-20T13:37:14.727141+07:00|warning|kernel[-]|[2427373.553812]  [<ffffffff816c22ef>] system_call_fastpath+0x1c/0x21<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">It seems that lspci and vfio_pci_release are in deadlock.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
<p class="MsoNormal">Zongyong Wu<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>