<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt;" class="elementToProof">
<span class="elementToProof" style="color: rgb(0, 0, 0);">the process_ireq_truncate() is dead code which will be removed. I'm in the progress of cleaning up the kio code, and I'll submit patches removing unused code once completed.&nbsp;</span></div>
<div id="appendonsend"></div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<hr style="display: inline-block; width: 98%;">
<div id="divRplyFwdMsg">
<div style="direction: ltr; font-family: Calibri, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<b>From:</b>&nbsp;Pavel Tikhomirov &lt;ptikhomirov@virtuozzo.com&gt;<br>
<b>Sent:</b>&nbsp;23 October 2025 11:14<br>
<b>To:</b>&nbsp;Kui Liu &lt;kui.liu@virtuozzo.com&gt;; devel@openvz.org &lt;devel@openvz.org&gt;<br>
<b>Cc:</b>&nbsp;Andrey Zaitsev &lt;azaitsev@virtuozzo.com&gt;<br>
<b>Subject:</b>&nbsp;Re: [Devel] [PATCH VZ9] fs/fuse/kio: fix unwarranted warning due to flush request race</div>
<div style="direction: ltr;">&nbsp;</div>
</div>
<div style="font-size: 11pt;">On 10/15/25 19:07, Liu Kui wrote:<br>
&gt; diff --git a/fs/fuse/kio/pcs/pcs_map.c b/fs/fuse/kio/pcs/pcs_map.c<br>
&gt; index 62b083b4947f..8baff296aaa7 100644<br>
&gt; --- a/fs/fuse/kio/pcs/pcs_map.c<br>
&gt; +++ b/fs/fuse/kio/pcs/pcs_map.c<br>
&gt; @@ -1266,23 +1266,14 @@ void pcs_map_complete(struct pcs_map_entry *m, struct pcs_ioc_getmap *omap)<br>
&gt;&nbsp;&nbsp;<br>
&gt;&nbsp;&nbsp; /* Atomically schedule map resolve and push ireq to wait completion */<br>
&gt;&nbsp;&nbsp; static void pcs_map_queue_resolve(struct pcs_map_entry * m, struct pcs_int_request *ireq, int direction)<br>
&gt; +__releases(m-&gt;lock)<br>
&gt;&nbsp;&nbsp; {<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LIST_HEAD(l);<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int ret;<br>
&gt;&nbsp;&nbsp;<br>
&gt; -&nbsp;&nbsp;&nbsp;&nbsp; DTRACE(&quot;enter m:%p, state:%x, ireq:%p dir:%d \n&quot;, m, m-&gt;state, ireq, direction);<br>
&gt; -<br>
&gt; -&nbsp;&nbsp;&nbsp;&nbsp; spin_lock(&amp;m-&gt;lock);<br>
&gt; -&nbsp;&nbsp;&nbsp;&nbsp; /* This should not happen unless aio_dio/fsync vs truncate race */<br>
&gt; -&nbsp;&nbsp;&nbsp;&nbsp; if (m-&gt;state &amp; PCS_MAP_DEAD) {<br>
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; spin_unlock(&amp;m-&gt;lock);<br>
&gt; +&nbsp;&nbsp;&nbsp;&nbsp; assert_spin_locked(&amp;m-&gt;lock);<br>
<br>
This will crash when pcs_map_queue_resolve() is called from<br>
process_ireq_truncate().<br>
<br>
<a data-auth="NotApplicable" class="OWAAutoLink" id="OWAe2d31cf2-e1d5-1d2b-4e84-49a3d57e54c6" href="https://bitbucket.org/virtuozzocore/vzkernel.vzs/src/09103657f3bbe0b06f89337e52190aa4159882a1/fs/fuse/kio/pcs/pcs_map.c#lines-2630">https://bitbucket.org/virtuozzocore/vzkernel.vzs/src/09103657f3bbe0b06f89337e52190aa4159882a1/fs/fuse/kio/pcs/pcs_map.c#lines-2630</a><br>
<br>
<br>
<br>
--<br>
Best regards, Pavel Tikhomirov<br>
Senior Software Developer, Virtuozzo.<br>
<br>
</div>
</body>
</html>