<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:24:21 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Whamcloud Community JIRA</title>
    <link>https://jira.whamcloud.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.4.14</version>
        <build-number>940014</build-number>
        <build-date>05-12-2023</build-date>
    </build-info>


<item>
            <title>[LU-16139] statahead: avoid new RPC and long wait in the statahead interpret callback</title>
                <link>https://jira.whamcloud.com/browse/LU-16139</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;The replay-dual/26 timeout with the following stack trace:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
[Tue Sep  6 05:21:32 2022] task:ptlrpcd_00_01   state:I stack:    0 pid: 8026 ppid:     2 flags:0x80004080
[Tue Sep  6 05:21:32 2022] Call Trace:
[Tue Sep  6 05:21:32 2022]  __schedule+0x2bd/0x760
[Tue Sep  6 05:21:32 2022]  schedule+0x37/0xa0
[Tue Sep  6 05:21:32 2022]  osc_extent_wait+0x44d/0x560 [osc]
[Tue Sep  6 05:21:32 2022]  ? finish_wait+0x80/0x80
[Tue Sep  6 05:21:32 2022]  osc_cache_wait_range+0x2b8/0x930 [osc]
[Tue Sep  6 05:21:32 2022]  osc_io_fsync_end+0x67/0x80 [osc]
[Tue Sep  6 05:21:32 2022]  cl_io_end+0x58/0x130 [obdclass]
[Tue Sep  6 05:21:32 2022]  lov_io_end_wrapper+0xcf/0xe0 [lov]
[Tue Sep  6 05:21:32 2022]  lov_io_fsync_end+0x6f/0x1c0 [lov]
[Tue Sep  6 05:21:32 2022]  cl_io_end+0x58/0x130 [obdclass]
[Tue Sep  6 05:21:32 2022]  cl_io_loop+0xa7/0x200 [obdclass]
[Tue Sep  6 05:21:32 2022]  cl_sync_file_range+0x2c9/0x340 [lustre]
[Tue Sep  6 05:21:32 2022]  vvp_prune+0x5d/0x1e0 [lustre]
[Tue Sep  6 05:21:32 2022]  cl_object_prune+0x58/0x130 [obdclass]
[Tue Sep  6 05:21:32 2022]  lov_layout_change.isra.47+0x1ba/0x640 [lov]
[Tue Sep  6 05:21:32 2022]  lov_conf_set+0x38d/0x4e0 [lov]
[Tue Sep  6 05:21:32 2022]  cl_conf_set+0x60/0x140 [obdclass]
[Tue Sep  6 05:21:32 2022]  cl_file_inode_init+0xc8/0x380 [lustre]
[Tue Sep  6 05:21:32 2022]  ll_update_inode+0x432/0x6e0 [lustre]
[Tue Sep  6 05:21:32 2022]  ll_iget+0x227/0x320 [lustre]
[Tue Sep  6 05:21:32 2022]  ll_prep_inode+0x344/0xb60 [lustre]
[Tue Sep  6 05:21:32 2022]  ll_statahead_interpret_common.isra.26+0x69/0x830 [lustre]
[Tue Sep  6 05:21:32 2022]  ll_statahead_interpret+0x2c8/0x5b0 [lustre]
[Tue Sep  6 05:21:32 2022]  mdc_intent_getattr_async_interpret+0x14a/0x3e0 [mdc]
[Tue Sep  6 05:21:32 2022]  ptlrpc_check_set+0x5b8/0x1fe0 [ptlrpc]
[Tue Sep  6 05:21:32 2022]  ptlrpcd+0x6c6/0xa50 [ptlrpc]
[Tue Sep  6 05:21:32 2022]  ? do_wait_intr_irq+0xb0/0xb0
[Tue Sep  6 05:21:32 2022]  ? ptlrpcd_add_req+0x2f0/0x2f0 [ptlrpc]
[Tue Sep  6 05:21:32 2022]  kthread+0x116/0x130
[Tue Sep  6 05:21:32 2022]  ? kthread_flush_work_fn+0x10/0x10
[Tue Sep  6 05:21:32 2022]  ret_from_fork+0x35/0x40
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The reason is that we wait for file range sync during the layout change for the regular file, it is dangerous to block the ptlrpcd interpret callback context for a long time.&lt;/p&gt;

&lt;p&gt;The solution is use work queue to do the @ll_prep_inode call in a separate thread. &lt;/p&gt;</description>
                <environment></environment>
        <key id="72218">LU-16139</key>
            <summary>statahead: avoid new RPC and long wait in the statahead interpret callback</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="4" iconUrl="https://jira.whamcloud.com/images/icons/priorities/minor.svg">Minor</priority>
                        <status id="5" iconUrl="https://jira.whamcloud.com/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="1">Fixed</resolution>
                                        <assignee username="qian_wc">Qian Yingjin</assignee>
                                    <reporter username="qian_wc">Qian Yingjin</reporter>
                        <labels>
                    </labels>
                <created>Wed, 7 Sep 2022 08:26:55 +0000</created>
                <updated>Tue, 25 Oct 2022 19:04:09 +0000</updated>
                            <resolved>Tue, 25 Oct 2022 19:04:09 +0000</resolved>
                                                    <fixVersion>Lustre 2.16.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                            <comments>
                            <comment id="345860" author="qian_wc" created="Wed, 7 Sep 2022 09:19:32 +0000"  >&lt;p&gt;&lt;a href=&quot;https://review.whamcloud.com/#/c/fs/lustre-release/+/48451&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/#/c/fs/lustre-release/+/48451&lt;/a&gt; &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16139&quot; title=&quot;statahead: avoid new RPC and long wait in the statahead interpret callback&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16139&quot;&gt;&lt;del&gt;LU-16139&lt;/del&gt;&lt;/a&gt; statahead: avoid to block ptlrpcd interpret context&lt;/p&gt;</comment>
                            <comment id="350714" author="gerrit" created="Tue, 25 Oct 2022 17:24:40 +0000"  >&lt;p&gt;&quot;Oleg Drokin &amp;lt;green@whamcloud.com&amp;gt;&quot; merged in patch &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/48451/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/48451/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-16139&quot; title=&quot;statahead: avoid new RPC and long wait in the statahead interpret callback&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-16139&quot;&gt;&lt;del&gt;LU-16139&lt;/del&gt;&lt;/a&gt; statahead: avoid to block ptlrpcd interpret context&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 2e0897439014338553a51fae338fb2c1b655f067&lt;/p&gt;</comment>
                            <comment id="350744" author="pjones" created="Tue, 25 Oct 2022 19:04:09 +0000"  >&lt;p&gt;Landed for 2.16&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="61685">LU-14139</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                            <customfield id="customfield_10890" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10390" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|i02zbr:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10060" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Severity</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10022"><![CDATA[3]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>