<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:09:02 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-14357] Simplify locking in fid_request</title>
                <link>https://jira.whamcloud.com/browse/LU-14357</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;The lu_client_seq contains a mutex, lcs_mutex, which is used for serialising updates to the fid, in fid_request.&lt;/p&gt;

&lt;p&gt;It &lt;b&gt;also&lt;/b&gt; contains waitq and flag, lcs_waitq and lcs_update, which effectively provide a second mutex. This appear to add no value.&#160; The second mutex is held while and rpc to the server to get a new fid is pending.&lt;/p&gt;

&lt;p&gt;Originally there was just the one mutex, but in Commit 23e2a370c8a3 (&quot;b=24255 move seq_client_alloc_seq out of lcs_sem&quot;) the second was added.&#160; The apparent reason was that &quot;in a case of recovery the recovery thread takes&#160; &lt;span class=&quot;error&quot;&gt;&amp;#91;lcs_murex&amp;#93;&lt;/span&gt; too and deadlocks.&lt;/p&gt;

&lt;p&gt;This presumably refers to seq_client_flush as that seems to be the only relevant place which takes lcs_mutex but doesn&apos;t take the new open-coded mutex.&#160; However this was changed in Commit d1feb5c774d4 (&quot;&lt;a href=&quot;https://jira.whamcloud.com/browse/LU-662&quot; title=&quot;1.8&amp;lt;-&amp;gt;2.1 interop: LBUG: ASSERTION(!range_is_exhausted(&amp;amp;seq-&amp;gt;lcs_space)) failed&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-662&quot;&gt;&lt;del&gt;LU-662&lt;/del&gt;&lt;/a&gt; fix conflict between seq_client_flush and seq_client_alloc_fid&quot;) when it was noticed that there was a new race.&lt;/p&gt;

&lt;p&gt;As this doesn&apos;t appear to have brought back the deadlock that was originally a concern, we must assume that the deadlock possibility has disappeared for other reasons.&lt;/p&gt;

&lt;p&gt;So this open-coded mutex can be removed and the code simplified.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="62449">LU-14357</key>
            <summary>Simplify locking in fid_request</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="neilb">Neil Brown</assignee>
                                    <reporter username="neilb">Neil Brown</reporter>
                        <labels>
                    </labels>
                <created>Fri, 22 Jan 2021 02:42:16 +0000</created>
                <updated>Wed, 5 May 2021 12:42:07 +0000</updated>
                            <resolved>Wed, 5 May 2021 12:42:07 +0000</resolved>
                                                    <fixVersion>Lustre 2.15.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                            <comments>
                            <comment id="290106" author="gerrit" created="Fri, 22 Jan 2021 02:48:20 +0000"  >&lt;p&gt;Neil Brown (neilb@suse.de) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/41299&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/41299&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-14357&quot; title=&quot;Simplify locking in fid_request&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-14357&quot;&gt;&lt;del&gt;LU-14357&lt;/del&gt;&lt;/a&gt; fid: simplify locking for fid updates&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 61f1d7062368bb8ac1bd330c24d26d6432b485fa&lt;/p&gt;</comment>
                            <comment id="300504" author="gerrit" created="Wed, 5 May 2021 02:49:58 +0000"  >&lt;p&gt;Oleg Drokin (green@whamcloud.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/41299/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/41299/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-14357&quot; title=&quot;Simplify locking in fid_request&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-14357&quot;&gt;&lt;del&gt;LU-14357&lt;/del&gt;&lt;/a&gt; fid: simplify locking for fid updates&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: aba940fa10195579eac0701846922547c6ad0dae&lt;/p&gt;</comment>
                            <comment id="300538" author="pjones" created="Wed, 5 May 2021 12:42:07 +0000"  >&lt;p&gt;Landed for 2.15&lt;/p&gt;</comment>
                    </comments>
                    <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|i01jz3:</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>