<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:21:10 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-8858] o_lcookie is not swabbed properly</title>
                <link>https://jira.whamcloud.com/browse/LU-8858</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;We hit a problem when using Sparc Client vs x86_64 Lustre server(Server is 2.1.6)&lt;/p&gt;

&lt;p&gt;Call Trace:&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff886ed601&amp;gt;&amp;#93;&lt;/span&gt; libcfs_debug_dumpstack+0x51/0x60 &lt;span class=&quot;error&quot;&gt;&amp;#91;libcfs&amp;#93;&lt;/span&gt;&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff886edb08&amp;gt;&amp;#93;&lt;/span&gt; lbug_with_loc+0x48/0x90 &lt;span class=&quot;error&quot;&gt;&amp;#91;libcfs&amp;#93;&lt;/span&gt;&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff89032f87&amp;gt;&amp;#93;&lt;/span&gt; filter_cancel_cookies_cb+0x1e7/0x5a0 &lt;span class=&quot;error&quot;&gt;&amp;#91;obdfilter&amp;#93;&lt;/span&gt;&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff88e2b7c7&amp;gt;&amp;#93;&lt;/span&gt; fsfilt_ldiskfs_cb_func+0x17/0x160 &lt;span class=&quot;error&quot;&gt;&amp;#91;fsfilt_ldiskfs&amp;#93;&lt;/span&gt;&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff88d46b00&amp;gt;&amp;#93;&lt;/span&gt; jbd2_journal_commit_transaction+0xbb8/0x1120 &lt;span class=&quot;error&quot;&gt;&amp;#91;jbd2&amp;#93;&lt;/span&gt;&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff8003dddd&amp;gt;&amp;#93;&lt;/span&gt; lock_timer_base+0x1b/0x3c&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff88d4a2c3&amp;gt;&amp;#93;&lt;/span&gt; kjournald2+0x9a/0x1ec &lt;span class=&quot;error&quot;&gt;&amp;#91;jbd2&amp;#93;&lt;/span&gt;&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff800a3cdf&amp;gt;&amp;#93;&lt;/span&gt; autoremove_wake_function+0x0/0x2e&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff88d4a229&amp;gt;&amp;#93;&lt;/span&gt; kjournald2+0x0/0x1ec &lt;span class=&quot;error&quot;&gt;&amp;#91;jbd2&amp;#93;&lt;/span&gt;&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff800a3ac7&amp;gt;&amp;#93;&lt;/span&gt; keventd_create_kthread+0x0/0xc4&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff80032c4f&amp;gt;&amp;#93;&lt;/span&gt; kthread+0xfe/0x132&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff8005dfc1&amp;gt;&amp;#93;&lt;/span&gt; child_rip+0xa/0x11&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff800a3ac7&amp;gt;&amp;#93;&lt;/span&gt; keventd_create_kthread+0x0/0xc4&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff80032b51&amp;gt;&amp;#93;&lt;/span&gt; kthread+0x0/0x132&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;lt;ffffffff8005dfb7&amp;gt;&amp;#93;&lt;/span&gt; child_rip+0x0/0x11&lt;/p&gt;

&lt;p&gt;Kernel panic - not syncing: LBUG&lt;/p&gt;

&lt;p&gt;But we could mount x86_64 client using same Lustre version, problems seems come to&lt;br/&gt;
o_lcookie is not swabbed properly so that it caused problems. and we applied fix, Sparc&lt;br/&gt;
client could mount Server without problems.&lt;/p&gt;

&lt;p&gt;I still could not see where master branch fix the problem, so i think latest master branch&lt;br/&gt;
aslo have this problem.&lt;/p&gt;</description>
                <environment></environment>
        <key id="41728">LU-8858</key>
            <summary>o_lcookie is not swabbed properly</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="4" iconUrl="https://jira.whamcloud.com/images/icons/priorities/minor.svg">Minor</priority>
                        <status id="6" iconUrl="https://jira.whamcloud.com/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="1">Fixed</resolution>
                                        <assignee username="wc-triage">WC Triage</assignee>
                                    <reporter username="wangshilong">Wang Shilong</reporter>
                        <labels>
                    </labels>
                <created>Tue, 22 Nov 2016 05:41:15 +0000</created>
                <updated>Tue, 22 Nov 2016 11:42:17 +0000</updated>
                            <resolved>Tue, 22 Nov 2016 11:42:17 +0000</resolved>
                                    <version>Lustre 1.8.x (1.8.0 - 1.8.5)</version>
                    <version>Lustre 2.1.6</version>
                                    <fixVersion>Lustre 2.8.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                            <comments>
                            <comment id="174607" author="gerrit" created="Tue, 22 Nov 2016 05:45:23 +0000"  >&lt;p&gt;Wang Shilong (wshilong@ddn.com) uploaded a new patch: &lt;a href=&quot;http://review.whamcloud.com/23891&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/23891&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-8858&quot; title=&quot;o_lcookie is not swabbed properly&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-8858&quot;&gt;&lt;del&gt;LU-8858&lt;/del&gt;&lt;/a&gt; ptlrpc: swab o_lcookie propely&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 3ee629a0134d137f0364dbf8f883d53c804a009b&lt;/p&gt;</comment>
                            <comment id="174626" author="adilger" created="Tue, 22 Nov 2016 09:10:38 +0000"  >&lt;p&gt;Since 2.8 the client does not pass o_lcookie from the MDS at all, it is only used internally by the OSP on the MDS.  All of the code to pass the cookie from the MDS to the OSS via the client was removed in patch &lt;a href=&quot;http://review.whamcloud.com/12922&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/12922&lt;/a&gt; &quot;&lt;a href=&quot;https://jira.whamcloud.com/browse/LU-6017&quot; title=&quot;remove llog cookie handling from client/server&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-6017&quot;&gt;&lt;del&gt;LU-6017&lt;/del&gt;&lt;/a&gt; obd: remove destroy cookie handling&quot;.  It was kept from 2.4 to 2.7 for compatibility with older MDSes, but it wasn&apos;t expected that 2.8 clients would be used with 2.1 servers.&lt;/p&gt;

&lt;p&gt;Even on 2.3 and earlier clients, the cookie is opaque to the client and is only passed through the client from the MDS to the OSS, so the client shouldn&apos;t be swabbing this structure.&lt;/p&gt;

&lt;p&gt;Do you have the actual LASSERT() that is failing?  Is it:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;&lt;span class=&quot;code-keyword&quot;&gt;static&lt;/span&gt; inline struct llog_ctxt *llog_group_get_ctxt(struct obd_llog_group *olg,
                                                    &lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt; index)
{
        struct llog_ctxt *ctxt;

        LASSERT(index &amp;gt;= 0 &amp;amp;&amp;amp; index &amp;lt; LLOG_MAX_CTXTS);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This shouldn&apos;t be LASSERTing on data from the network.  Do you have any idea what values were being sent for &lt;tt&gt;index&lt;/tt&gt;?&lt;/p&gt;

&lt;p&gt;I&apos;m not against adding the swabbing on the client, but I don&apos;t think that is actually fixing the right problem.  It may be that the 2.8 client is just sending garbage values in this field and swabbing won&apos;t make any difference.&lt;/p&gt;</comment>
                            <comment id="174633" author="wangshilong" created="Tue, 22 Nov 2016 10:46:41 +0000"  >&lt;p&gt;Hi Andreas,&lt;/p&gt;

&lt;p&gt;  Sorry, i did not make it clear enough,  Problem Client version is b1_8 based. and We applied this patch in the Server&lt;br/&gt;
Side, b1_8 Sparc clients could mount without problems then.&lt;/p&gt;</comment>
                            <comment id="174636" author="wangshilong" created="Tue, 22 Nov 2016 11:26:55 +0000"  >&lt;p&gt;I checked codes again, In the 1.8 series and 2.1 series branch, I could see o_lcookie passed from Clients to MDS.&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;
[root@localhost lustre-release]# git grep o_lcookie
lustre/include/lustre/lustre_idl.h:        struct llog_cookie      o_lcookie;      /* destroy: unlink cookie from MDS */
lustre/obdclass/obdo.c:                dst-&amp;gt;o_lcookie = src-&amp;gt;o_lcookie;
lustre/obdfilter/filter.c:                        *fcc = oa-&amp;gt;o_lcookie;
lustre/obdfilter/filter.c:                        fcc = &amp;amp;oa-&amp;gt;o_lcookie;
lustre/obdfilter/filter.c:                        *fcc = oa-&amp;gt;o_lcookie;
lustre/obdfilter/filter_log.c:        oa-&amp;gt;o_lcookie = *cookie;
lustre/obdfilter/filter_log.c:        oinfo.oi_oa-&amp;gt;o_lcookie = *cookie;
lustre/osc/osc_request.c:                oinfo-&amp;gt;oi_oa-&amp;gt;o_lcookie = *oti-&amp;gt;oti_logcookies;
lustre/osc/osc_request.c:                        *oti-&amp;gt;oti_logcookies = oa-&amp;gt;o_lcookie;
lustre/osc/osc_request.c:                oa-&amp;gt;o_lcookie = *oti-&amp;gt;oti_logcookies;
lustre/ost/ost_handler.c:                oti-&amp;gt;oti_logcookies = &amp;amp;body-&amp;gt;oa.o_lcookie;
lustre/ost/ost_handler.c:        oti-&amp;gt;oti_logcookies = &amp;amp;repbody-&amp;gt;oa.o_lcookie;
lustre/ptlrpc/wiretest.c:        LASSERTF((int)offsetof(struct obdo, o_lcookie) == 136, &quot; found %lld\n&quot;,
lustre/ptlrpc/wiretest.c:                 (long long)(int)offsetof(struct obdo, o_lcookie));
lustre/ptlrpc/wiretest.c:        LASSERTF((int)sizeof(((struct obdo *)0)-&amp;gt;o_lcookie) == 32, &quot; found %lld\n&quot;,
lustre/ptlrpc/wiretest.c:                 (long long)(int)sizeof(((struct obdo *)0)-&amp;gt;o_lcookie));
lustre/utils/wirecheck.c:        CHECK_MEMBER(obdo, o_lcookie);
lustre/utils/wiretest.c:        LASSERTF((int)offsetof(struct obdo, o_lcookie) == 136, &quot; found %lld\n&quot;,
lustre/utils/wiretest.c:                 (long long)(int)offsetof(struct obdo, o_lcookie));
lustre/utils/wiretest.c:        LASSERTF((int)sizeof(((struct obdo *)0)-&amp;gt;o_lcookie) == 32, &quot; found %lld\n&quot;,
lustre/utils/wiretest.c:                 (long long)(int)sizeof(((struct obdo *)0)-&amp;gt;o_lcookie));
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;But in the latest master codes Clients won&apos;t pass o_lcookie to server any more.&lt;/p&gt;

</comment>
                            <comment id="174637" author="wangshilong" created="Tue, 22 Nov 2016 11:42:17 +0000"  >&lt;p&gt;Problem dose not exist in the latest master.&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|hzywaf:</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>