<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:01:49 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-6624] LBUG in osc_lru_reclaim</title>
                <link>https://jira.whamcloud.com/browse/LU-6624</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;According to the existing code, I can guess that cl_client_cache-&amp;gt;ccc_lru needs spin_lock when being referred but the below code looks violating the rule.&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeHeader panelHeader&quot; style=&quot;border-bottom-width: 1px;&quot;&gt;&lt;b&gt;osc_lru_reclaim&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;&lt;span class=&quot;code-object&quot;&gt;long&lt;/span&gt; osc_lru_reclaim(struct client_obd *cli)
{
        struct cl_env_nest nest;
        struct lu_env *env;
        struct cl_client_cache *cache = cli-&amp;gt;cl_cache;
        &lt;span class=&quot;code-object&quot;&gt;long&lt;/span&gt; rc = 0;
        &lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt; max_scans;
        ENTRY;

        LASSERT(cache != NULL);
        LASSERT(!list_empty(&amp;amp;cache-&amp;gt;ccc_lru)); &amp;lt;--- HERE

        .....

        spin_lock(&amp;amp;cache-&amp;gt;ccc_lru_lock);
                                  &amp;lt;---- The LASSERT should be here, isn&apos;t it ?
        cache-&amp;gt;ccc_lru_shrinkers++;

        ....
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Actually I sometimes see LBUG in osc_lru_reclaim when running multiple WRITEs in the same time. So I&apos;m convinced this LASSERT should be moved to the locked section, or the LASSERT can touch ccc_lru while the other is doing linked list operation on ccc_lru. &lt;/p&gt;</description>
                <environment></environment>
        <key id="30296">LU-6624</key>
            <summary>LBUG in osc_lru_reclaim</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="2" iconUrl="https://jira.whamcloud.com/images/icons/priorities/critical.svg">Critical</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="jay">Jinshan Xiong</assignee>
                                    <reporter username="nozaki">Hiroya Nozaki</reporter>
                        <labels>
                            <label>patch</label>
                    </labels>
                <created>Thu, 21 May 2015 06:34:35 +0000</created>
                <updated>Fri, 5 Jun 2015 15:06:20 +0000</updated>
                            <resolved>Fri, 5 Jun 2015 15:06:20 +0000</resolved>
                                    <version>Lustre 2.7.0</version>
                                    <fixVersion>Lustre 2.8.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                            <comments>
                            <comment id="116080" author="nozaki" created="Thu, 21 May 2015 06:35:32 +0000"  >&lt;p&gt;I&apos;ll upload a trivial patch soon.&lt;/p&gt;</comment>
                            <comment id="116081" author="gerrit" created="Thu, 21 May 2015 06:51:46 +0000"  >&lt;p&gt;Hiroya Nozaki (nozaki.hiroya@jp.fujitsu.com) uploaded a new patch: &lt;a href=&quot;http://review.whamcloud.com/14901&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/14901&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-6624&quot; title=&quot;LBUG in osc_lru_reclaim&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-6624&quot;&gt;&lt;del&gt;LU-6624&lt;/del&gt;&lt;/a&gt; osc: LBUG in osc_lru_reclaim&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 3782cd123a74302c22735db5f9c5cafda625280e&lt;/p&gt;</comment>
                            <comment id="116111" author="jay" created="Thu, 21 May 2015 16:31:58 +0000"  >&lt;p&gt;cache-&amp;gt;ccc_lru is the LRU list of all OSCs. Now that osc_lru_reclaim() is called, which means there exists at least one OSC, so this list shouldn&apos;t be NULL.&lt;/p&gt;

&lt;p&gt;Can you post the backtrace to this ticket when you see it next time?&lt;/p&gt;</comment>
                            <comment id="116169" author="nozaki" created="Fri, 22 May 2015 00:37:52 +0000"  >&lt;p&gt;OK, I&apos;ll post the backtrace when this case is reproduced.&lt;br/&gt;
Btw, IMHO, if some cl_lru_osc()s are under list_move_tail() operation, ccc_lru can be empty temporarily, isn&apos;t it ?&lt;/p&gt;
</comment>
                            <comment id="116245" author="jay" created="Fri, 22 May 2015 19:17:21 +0000"  >&lt;p&gt;Good point, if there is only one OSC, it could be empty temporarily.&lt;/p&gt;</comment>
                            <comment id="117530" author="gerrit" created="Fri, 5 Jun 2015 01:43:11 +0000"  >&lt;p&gt;Oleg Drokin (oleg.drokin@intel.com) merged in patch &lt;a href=&quot;http://review.whamcloud.com/14901/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/14901/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-6624&quot; title=&quot;LBUG in osc_lru_reclaim&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-6624&quot;&gt;&lt;del&gt;LU-6624&lt;/del&gt;&lt;/a&gt; osc: LBUG in osc_lru_reclaim&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 1fee634f1ebfeccb1770951ca7b576f8b6e733a0&lt;/p&gt;</comment>
                            <comment id="117578" author="pjones" created="Fri, 5 Jun 2015 15:06:20 +0000"  >&lt;p&gt;Landed for 2.8&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|hzxdrr:</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>