<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:51:59 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-12368] concurrent statfs() calls on the client should be blocked</title>
                <link>https://jira.whamcloud.com/browse/LU-12368</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;If multiple threads on a client are executing &lt;tt&gt;statfs()&lt;/tt&gt; calls concurrently, and the &lt;tt&gt;obd_statfs()&lt;/tt&gt; cache has expired, then each thread will send an &lt;tt&gt;OST_STATFS&lt;/tt&gt; RPC to each OST.  With certain &lt;tt&gt;statfs&lt;/tt&gt;-heavy workloads on many-core client nodes, this can result in thousands of needless RPCs being sent from each client every few seconds.&lt;/p&gt;

&lt;p&gt;Since all of the callers funnel through &lt;tt&gt;obd_statfs()&lt;/tt&gt;, and there is no benefit to having multiple &lt;tt&gt;OST_STATFS&lt;/tt&gt; or &lt;tt&gt;MDS_STATFS&lt;/tt&gt; replies from the same target (they return the same data, and all threads are blocked on the reply) it makes sense to just allow one thread to execute the statfs and other threads to (interruptibly) wait for it to complete.&lt;/p&gt;</description>
                <environment></environment>
        <key id="55810">LU-12368</key>
            <summary>concurrent statfs() calls on the client should be blocked</summary>
                <type id="4" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11310&amp;avatarType=issuetype">Improvement</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="adilger">Andreas Dilger</assignee>
                                    <reporter username="adilger">Andreas Dilger</reporter>
                        <labels>
                            <label>easy</label>
                    </labels>
                <created>Fri, 31 May 2019 19:22:04 +0000</created>
                <updated>Wed, 12 Aug 2020 17:55:27 +0000</updated>
                            <resolved>Fri, 8 Nov 2019 18:13:58 +0000</resolved>
                                    <version>Lustre 2.10.8</version>
                    <version>Lustre 2.12.3</version>
                                    <fixVersion>Lustre 2.13.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>7</watches>
                                                                            <comments>
                            <comment id="249949" author="gerrit" created="Tue, 25 Jun 2019 04:58:11 +0000"  >&lt;p&gt;Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/35311&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35311&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12368&quot; title=&quot;concurrent statfs() calls on the client should be blocked&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12368&quot;&gt;&lt;del&gt;LU-12368&lt;/del&gt;&lt;/a&gt; ptlrpc: make DEBUG_REQ messages consistent&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 5548152268223786e8acc9df6d470672d8b6e403&lt;/p&gt;</comment>
                            <comment id="250348" author="gerrit" created="Sat, 29 Jun 2019 01:19:58 +0000"  >&lt;p&gt;Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/35380&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35380&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12368&quot; title=&quot;concurrent statfs() calls on the client should be blocked&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12368&quot;&gt;&lt;del&gt;LU-12368&lt;/del&gt;&lt;/a&gt; obdclass: don&apos;t send multiple statfs RPCs&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: acb1b155fd18a7bc835c9d31ffb7fa06e2c009fa&lt;/p&gt;</comment>
                            <comment id="250357" author="gerrit" created="Sat, 29 Jun 2019 09:20:58 +0000"  >&lt;p&gt;Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/35383&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35383&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12368&quot; title=&quot;concurrent statfs() calls on the client should be blocked&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12368&quot;&gt;&lt;del&gt;LU-12368&lt;/del&gt;&lt;/a&gt; obdclass: allow &apos;lfs df&apos; to specify cache age&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 2448d63aed511658f4b1b6e61789271c77fb0390&lt;/p&gt;</comment>
                            <comment id="251206" author="gerrit" created="Fri, 12 Jul 2019 05:22:52 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/35380/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35380/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12368&quot; title=&quot;concurrent statfs() calls on the client should be blocked&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12368&quot;&gt;&lt;del&gt;LU-12368&lt;/del&gt;&lt;/a&gt; obdclass: don&apos;t send multiple statfs RPCs&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 1c41a6ac390bf74a135861efcd576a3b433d3c49&lt;/p&gt;</comment>
                            <comment id="251262" author="gerrit" created="Fri, 12 Jul 2019 16:13:38 +0000"  >&lt;p&gt;Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/35485&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35485&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12368&quot; title=&quot;concurrent statfs() calls on the client should be blocked&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12368&quot;&gt;&lt;del&gt;LU-12368&lt;/del&gt;&lt;/a&gt; obdclass: don&apos;t send multiple statfs RPCs&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_12&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: f0819a6e0b676fb80b9a612ce5c48786242da864&lt;/p&gt;</comment>
                            <comment id="251997" author="bobhawkins" created="Thu, 25 Jul 2019 00:25:55 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12368&quot; title=&quot;concurrent statfs() calls on the client should be blocked&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12368&quot;&gt;&lt;del&gt;LU-12368&lt;/del&gt;&lt;/a&gt; testing is underway right now at the customer site, running ExaScaler 4.2 and DDN Lustre 2.10.7_ddn5. We noted the default llite.*.statfs_max_age was set to 1. (or 1 second)&lt;/p&gt;

&lt;p&gt;When testing with the default age of 1, we observed a regular occurrence (~1 in 10) of slow app timesteps in which each timestep made numerous statfs calls.&lt;/p&gt;

&lt;p&gt;Increasing the statfs_max_age to 30 seconds, we did see a marked, positive change in behavior in which we only saw 1 in 900 slow app timesteps.&lt;/p&gt;</comment>
                            <comment id="252001" author="adilger" created="Thu, 25 Jul 2019 04:33:53 +0000"  >&lt;p&gt;Bob, the default statfs cache age has been 1s since the beginning of Lustre.  Increasing it to 30s is pretty reasonable, as (IMHO) applications shouldn&apos;t really put too much stock in the amount of free space in the filesystem anyway, given that there may be a large number of jobs running concurrently and allocating and freeing space, space is reserved by clients, quota limits may intervene before the filesystem runs out of space, etc.  Either there is lots of free space, and the application shouldn&apos;t care, or there &lt;em&gt;isn&apos;t&lt;/em&gt; lots of space and the application may run out of space &lt;em&gt;even&lt;/em&gt; if it checks in advance (e.g. some other process consumes the remaining space).&lt;/p&gt;

&lt;p&gt;Is there any clear indication &lt;em&gt;why&lt;/em&gt; the application is doing so many &lt;tt&gt;statfs()&lt;/tt&gt; calls?&lt;/p&gt;</comment>
                            <comment id="252085" author="gerrit" created="Fri, 26 Jul 2019 18:53:34 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/35485/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35485/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12368&quot; title=&quot;concurrent statfs() calls on the client should be blocked&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12368&quot;&gt;&lt;del&gt;LU-12368&lt;/del&gt;&lt;/a&gt; obdclass: don&apos;t send multiple statfs RPCs&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_12&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 1839debbba0e70dd5cc9f11c8bc83bcead0114d4&lt;/p&gt;</comment>
                            <comment id="252274" author="pfarrell" created="Tue, 30 Jul 2019 17:04:09 +0000"  >&lt;p&gt;Andreas,&lt;/p&gt;

&lt;p&gt;Any reason this ticket is still open?&#160; I think we&apos;ve got the patches all merged.&lt;/p&gt;</comment>
                            <comment id="252318" author="adilger" created="Wed, 31 Jul 2019 14:44:09 +0000"  >&lt;p&gt;Patrick, there is still patch &lt;a href=&quot;https://review.whamcloud.com/35383&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35383&lt;/a&gt; &quot;&lt;tt&gt;obdclass: allow &apos;lfs df&apos; to specify cache age&lt;/tt&gt;&quot; still open. I added that patch while working on &quot;&lt;tt&gt;obdclass: don&apos;t send multiple statfs RPCs&lt;/tt&gt;&quot; but I&apos;m not sure if it is actually useful to land or not.&lt;/p&gt;</comment>
                            <comment id="254362" author="gerrit" created="Mon, 9 Sep 2019 01:13:48 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/35311/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/35311/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12368&quot; title=&quot;concurrent statfs() calls on the client should be blocked&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12368&quot;&gt;&lt;del&gt;LU-12368&lt;/del&gt;&lt;/a&gt; ptlrpc: make DEBUG_REQ messages consistent&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: c0fa0ba4a8efcd774f1fe27986a0217c76dedf6d&lt;/p&gt;</comment>
                            <comment id="258842" author="gerrit" created="Tue, 26 Nov 2019 16:26:04 +0000"  >&lt;p&gt;Minh Diep (mdiep@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/36874&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/36874&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-12368&quot; title=&quot;concurrent statfs() calls on the client should be blocked&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-12368&quot;&gt;&lt;del&gt;LU-12368&lt;/del&gt;&lt;/a&gt; ptlrpc: make DEBUG_REQ messages consistent&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_12&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: bcf0777c27333aade617e92b9cfe03877e568e4e&lt;/p&gt;</comment>
                            <comment id="264104" author="shadow" created="Wed, 26 Feb 2020 18:11:04 +0000"  >&lt;p&gt;In fact - fix is incorrect. Lets look to &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-13296&quot; title=&quot;statfs isn&amp;#39;t work properly with MDT statfs proxy&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-13296&quot;&gt;&lt;del&gt;LU-13296&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="58185">LU-13296</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </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|i00hc7:</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>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>