<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:49:29 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-12079] lockless IO stucks if client has other lock already</title>
                <link>https://jira.whamcloud.com/browse/LU-12079</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;lockless write IO may stuck if client has other lock on the same page, e.g. PR lock from previous READ or GLIMPSE requests. WRITE IO cause blocking AST from server for that PR lock which tries to discard pages on client and stuck on cl_page_own() forever if that page is involved in lockless WRITE already.&lt;/p&gt;

&lt;p&gt;At first sign it seems that any lockless write must find and cancel all client locks on write range before IO is started. Though can be not enough because some other concurrent lock can be taken while lockless IO is being issued.&lt;/p&gt;</description>
                <environment></environment>
        <key id="55177">LU-12079</key>
            <summary>lockless IO stucks if client has other lock already</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="3">Duplicate</resolution>
                                        <assignee username="paf0186">Patrick Farrell</assignee>
                                    <reporter username="tappro">Mikhail Pershin</reporter>
                        <labels>
                    </labels>
                <created>Sun, 17 Mar 2019 09:17:56 +0000</created>
                <updated>Fri, 9 Jul 2021 20:04:59 +0000</updated>
                            <resolved>Fri, 9 Jul 2021 20:04:59 +0000</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                            <comments>
                            <comment id="244078" author="tappro" created="Sun, 17 Mar 2019 10:02:52 +0000"  >&lt;p&gt;I have found that while testing lock contention mechanism for DOM, which switches locks to lockless locks, but that is also true for normal files. That can be seen with hard lock contention settings with &lt;tt&gt;ns_contended_locks=0&lt;/tt&gt;&#160;and &lt;tt&gt;ns_max_nolock_size=some_big_value&lt;/tt&gt;. Running &lt;tt&gt;fsx&lt;/tt&gt; reveals such bug quite quickly.&lt;/p&gt;

&lt;p&gt;&#160;Interesting that &lt;tt&gt;ns_max_nolock_size&lt;/tt&gt; default value is &lt;tt&gt;0&lt;/tt&gt;. That means the lockless IO is always turned off in Lustre by default&lt;/p&gt;</comment>
                            <comment id="244080" author="pfarrell" created="Sun, 17 Mar 2019 17:20:51 +0000"  >&lt;p&gt;Ahh, I thought lockless i/o was off by default, because I never saw it turn on when working on shared file contention...&#160; It&apos;s good to know why.&lt;/p&gt;</comment>
                            <comment id="244081" author="tappro" created="Sun, 17 Mar 2019 18:46:18 +0000"  >&lt;p&gt;yes, I was thinking that lockless IO is good benefit when there is lock contention on server and client switches to using of server locks temporarily because there is no sense in lock caching and constant ping-pong with lock enqueue - lock cancel. But it is not working at all until ns_contended_locks will be set to some value and even being enabled it is not reliable because of possible deadlocks.&lt;/p&gt;</comment>
                            <comment id="306743" author="paf0186" created="Fri, 9 Jul 2021 20:04:59 +0000"  >&lt;p&gt;Duplicated/resolved by removal in &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-14838&quot; title=&quot;Remove old lockless code: Truncate &amp;amp; contention based lockless i/o&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-14838&quot;&gt;&lt;del&gt;LU-14838&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="53433">LU-11435</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|i00dfz:</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>