<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:11:41 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-7759] umount hanging in modern distros when OST is unavailable</title>
                <link>https://jira.whamcloud.com/browse/LU-7759</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;It looks like modern distros: SLES12, Fedora 21+ (possibly earlier) always do statfs on the mountpoint before issuing the umount call.&lt;/p&gt;

&lt;p&gt;In case one of the OSTs is not available at that time - the statfs will hang.&lt;/p&gt;

&lt;p&gt;In our tests there&apos;s a bunch of tests in conf-sanity that have this problem and it was &quot;dealt with&quot; in &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-5472&quot; title=&quot;conf-sanity test_32a: failed with 1&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-5472&quot;&gt;&lt;del&gt;LU-5472&lt;/del&gt;&lt;/a&gt; by just adding the -f umount option.&lt;br/&gt;
But this still leaves palces like recovery-single test 89 and something in recovery-small at the very least.&lt;/p&gt;

&lt;p&gt;And most of all regular users would be affected too. So I wonder if we should deal with this issue somewhat more intelligently so that the unmount does not really hang in such a case?&lt;/p&gt;</description>
                <environment></environment>
        <key id="34559">LU-7759</key>
            <summary>umount hanging in modern distros when OST is unavailable</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.whamcloud.com/images/icons/priorities/major.svg">Major</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="ys">Yang Sheng</assignee>
                                    <reporter username="green">Oleg Drokin</reporter>
                        <labels>
                            <label>easy</label>
                            <label>sles12</label>
                    </labels>
                <created>Mon, 8 Feb 2016 22:53:16 +0000</created>
                <updated>Sun, 26 Nov 2017 22:01:07 +0000</updated>
                            <resolved>Sun, 26 Nov 2017 22:01:07 +0000</resolved>
                                    <version>Lustre 2.8.0</version>
                    <version>Lustre 2.9.0</version>
                                    <fixVersion>Lustre 2.9.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>12</watches>
                                                                            <comments>
                            <comment id="141646" author="adilger" created="Tue, 9 Feb 2016 18:19:22 +0000"  >&lt;p&gt;One possible solution is to add a &lt;tt&gt;$sbin/umount.lustre&lt;/tt&gt; script that calls &lt;tt&gt;lctl set_param llite.$fsname-&amp;#42;.lazystatfs=1&lt;/tt&gt; so that the statfs() doesn&apos;t hang?  The &lt;tt&gt;$fsname-&amp;#42;&lt;/tt&gt; might be further refined to be the specific mountpoint, but I don&apos;t know offhand how to translate a mountpoint to an instance in &lt;tt&gt;/proc/fs/lustre&lt;/tt&gt; and it probably isn&apos;t critical to handle the dual mount case (normally only used for testing).  The &lt;tt&gt;$fsname&lt;/tt&gt; part can be extracted from the device section of &lt;tt&gt;/proc/mounts&lt;/tt&gt; line:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;mgsnode:/fsname        mountpoint     fstype     options stuff
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I&apos;m also not sure what the requirements for &lt;tt&gt;umount.lustre&lt;/tt&gt; are, whether it is run by &lt;tt&gt;umount&lt;/tt&gt; before the filesystem is unmounted, or instead of the regular &lt;tt&gt;umount&lt;/tt&gt; processing?&lt;/p&gt;</comment>
                            <comment id="142215" author="pjones" created="Mon, 15 Feb 2016 19:09:46 +0000"  >&lt;p&gt;Yang Sheng&lt;/p&gt;

&lt;p&gt;Could you please look into this issue?&lt;/p&gt;

&lt;p&gt;Thanks&lt;/p&gt;

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="142544" author="ys" created="Thu, 18 Feb 2016 04:47:27 +0000"  >&lt;p&gt;Looks like umount.lustre is called after statfs. Since umount need figure out fstype before invoke umount.{fstype}. This is why it call statfs.The hard part is no way to tell kernel the statfs called from umount. So avoid invoke statfs is only thing we can do. Of course, skip unavailable OST maybe a reasonable solution?&lt;/p&gt;</comment>
                            <comment id="142546" author="adilger" created="Thu, 18 Feb 2016 07:14:54 +0000"  >&lt;p&gt;I guess it is possible to check &lt;tt&gt;strstr(&quot;unmount&quot;, current-&amp;gt;comm)&lt;/tt&gt; and set &lt;tt&gt;sbi-&amp;gt;ll_statfs |= LL_SBI_LAZYSTATFS&lt;/tt&gt; on the filesystem, but this would add overhead to every statfs() call.&lt;/p&gt;

&lt;p&gt;It might be possible to set LL_SBI_LAZYSTATFS by default, but that may also cause problems with the recovery tests that wait on &quot;df&quot; to return to indicate recovery is complete.&lt;/p&gt;</comment>
                            <comment id="144369" author="ys" created="Wed, 2 Mar 2016 02:57:03 +0000"  >&lt;p&gt;I found a way to handle it. We can add a entry to utab(default located at /run/mount/utab) when mount a lustre filesystem. Then umount will use this entry to find out fstype to avoid invoke statfs. What we need to do just change mount_lustre.c is enough. I&apos;ll produce a patch.&lt;/p&gt;</comment>
                            <comment id="144899" author="gerrit" created="Tue, 8 Mar 2016 17:33:42 +0000"  >&lt;p&gt;Yang Sheng (yang.sheng@intel.com) uploaded a new patch: &lt;a href=&quot;http://review.whamcloud.com/18820&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/18820&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-7759&quot; title=&quot;umount hanging in modern distros when OST is unavailable&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-7759&quot;&gt;&lt;del&gt;LU-7759&lt;/del&gt;&lt;/a&gt; utils: build mount.lustre with libmount&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: ffebbb3e30c247e453480f9219985effdf035b05&lt;/p&gt;</comment>
                            <comment id="147221" author="gerrit" created="Tue, 29 Mar 2016 17:35:18 +0000"  >&lt;p&gt;Andreas Dilger (andreas.dilger@intel.com) uploaded a new patch: &lt;a href=&quot;http://review.whamcloud.com/19195&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/19195&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-7759&quot; title=&quot;umount hanging in modern distros when OST is unavailable&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-7759&quot;&gt;&lt;del&gt;LU-7759&lt;/del&gt;&lt;/a&gt; llite: handle inactive OSTs better in statfs&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 169a33aaf665fdaef6fc5734665a04d758a443e9&lt;/p&gt;</comment>
                            <comment id="148334" author="gerrit" created="Mon, 11 Apr 2016 02:51:42 +0000"  >&lt;p&gt;Oleg Drokin (oleg.drokin@intel.com) merged in patch &lt;a href=&quot;http://review.whamcloud.com/18820/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/18820/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-7759&quot; title=&quot;umount hanging in modern distros when OST is unavailable&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-7759&quot;&gt;&lt;del&gt;LU-7759&lt;/del&gt;&lt;/a&gt; utils: build mount.lustre with libmount&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: f1de339d881958de8fc47065fb31a5c8e0c14b60&lt;/p&gt;</comment>
                            <comment id="157049" author="gerrit" created="Mon, 27 Jun 2016 18:56:27 +0000"  >&lt;p&gt;Oleg Drokin (oleg.drokin@intel.com) merged in patch &lt;a href=&quot;http://review.whamcloud.com/19195/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/19195/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-7759&quot; title=&quot;umount hanging in modern distros when OST is unavailable&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-7759&quot;&gt;&lt;del&gt;LU-7759&lt;/del&gt;&lt;/a&gt; llite: handle inactive OSTs better in statfs&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 23fde1f89bec0adf4f7181ccce5a236eac371a38&lt;/p&gt;</comment>
                            <comment id="157089" author="ys" created="Tue, 28 Jun 2016 05:23:42 +0000"  >&lt;p&gt;Patch landed. Close ticket.&lt;/p&gt;</comment>
                            <comment id="213936" author="jay" created="Thu, 16 Nov 2017 18:29:02 +0000"  >&lt;p&gt;There is a new occurrence on recent test: &lt;a href=&quot;https://testing.hpdd.intel.com/test_sets/0d7d92de-cad2-11e7-9840-52540065bddc&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://testing.hpdd.intel.com/test_sets/0d7d92de-cad2-11e7-9840-52540065bddc&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The test failure looks the same but not sure if they are the same.&lt;/p&gt;</comment>
                            <comment id="214646" author="adilger" created="Sun, 26 Nov 2017 22:01:07 +0000"  >&lt;p&gt;Rather than open up an old ticket that hasn&apos;t been seen in 2+ years, it is better to open up a new ticket for the new problem, and if they seem related they can be linked together.  Otherwise, tracking the old re-opened issue fix version is more difficult than necessary.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="25947">LU-5472</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="21223">LU-4039</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="39122">LU-8544</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="40804">LU-8731</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="28666">LU-6233</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="36398">LU-8069</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|hzy0p3:</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>