<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:32:30 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-3278] osd_internal.h:747:osd_fid2oi()) ASSERTION( osd-&gt;od_oi_table != ((void *)0) &amp;&amp; osd-&gt;od_oi_count &gt;= 1 ) failed</title>
                <link>https://jira.whamcloud.com/browse/LU-3278</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Running recovery-small.sh hit this very fast after test start.&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;[  838.403817] Lustre: DEBUG MARKER: == replay-single test 2b: touch == 00:56:23 (1367729783)
[  839.177827] LustreError: 6825:0:(osd_handler.c:1119:osd_ro()) *** setting lustre-MDT0000 read-only ***
[  839.178349] Turning device loop0 (0x700000) read-only
[  839.231722] Lustre: DEBUG MARKER: mds1 REPLAY BARRIER on lustre-MDT0000
[  839.261830] Lustre: DEBUG MARKER: local REPLAY BARRIER on lustre-MDT0000
[  839.589175] Lustre: Failing over lustre-MDT0000
[  839.716258] LustreError: 6547:0:(osd_internal.h:747:osd_fid2oi()) ASSERTION( osd-&amp;gt;od_oi_table != ((void *)0) &amp;amp;&amp;amp; osd-&amp;gt;od_oi_count &amp;gt;= 1 ) failed: 
[  839.716797] LustreError: 6547:0:(osd_internal.h:747:osd_fid2oi()) LBUG
[  839.717086] Pid: 6547, comm: ll_mgs_0002
[  839.717336] 
[  839.717337] Call Trace:
[  839.717752]  [&amp;lt;ffffffffa04018a5&amp;gt;] libcfs_debug_dumpstack+0x55/0x80 [libcfs]
[  839.718105]  [&amp;lt;ffffffffa0401ea7&amp;gt;] lbug_with_loc+0x47/0xb0 [libcfs]
[  839.718362]  [&amp;lt;ffffffffa0c51911&amp;gt;] __osd_oi_lookup+0x2f1/0x3e0 [osd_ldiskfs]
[  839.718654]  [&amp;lt;ffffffffa0c51aa6&amp;gt;] osd_oi_lookup+0xa6/0x150 [osd_ldiskfs]
[  839.718941]  [&amp;lt;ffffffffa0c49d60&amp;gt;] osd_object_init+0x5a0/0xcb0 [osd_ldiskfs]
[  839.719261]  [&amp;lt;ffffffffa05ad3ed&amp;gt;] lu_object_alloc+0xcd/0x300 [obdclass]
[  839.719551]  [&amp;lt;ffffffffa05ad769&amp;gt;] ? htable_lookup+0x119/0x1c0 [obdclass]
[  839.719817]  [&amp;lt;ffffffffa05adf55&amp;gt;] lu_object_find_at+0x205/0x360 [obdclass]
[  839.720074]  [&amp;lt;ffffffff814fc8bc&amp;gt;] ? __mutex_lock_slowpath+0x21c/0x2c0
[  839.720342]  [&amp;lt;ffffffffa05b04ca&amp;gt;] dt_locate_at+0x3a/0x140 [obdclass]
[  839.720602]  [&amp;lt;ffffffffa058ec2f&amp;gt;] llog_osd_open+0x14f/0xbf0 [obdclass]
[  839.720895]  [&amp;lt;ffffffffa055a28d&amp;gt;] llog_open+0xbd/0x2d0 [obdclass]
[  839.721206]  [&amp;lt;ffffffffa07501a2&amp;gt;] llog_origin_handle_read_header+0x162/0x5e0 [ptlrpc]
[  839.721671]  [&amp;lt;ffffffffa0b7b064&amp;gt;] mgs_handle+0xad4/0x11d0 [mgs]
[  839.721955]  [&amp;lt;ffffffffa0412361&amp;gt;] ? libcfs_debug_msg+0x41/0x50 [libcfs]
[  839.722262]  [&amp;lt;ffffffffa0747898&amp;gt;] ptlrpc_server_handle_request+0x3a8/0xc70 [ptlrpc]
[  839.722742]  [&amp;lt;ffffffffa04025ee&amp;gt;] ? cfs_timer_arm+0xe/0x10 [libcfs]
[  839.723028]  [&amp;lt;ffffffffa0413e9f&amp;gt;] ? lc_watchdog_touch+0x6f/0x170 [libcfs]
[  839.723349]  [&amp;lt;ffffffffa073efe1&amp;gt;] ? ptlrpc_wait_event+0xb1/0x2a0 [ptlrpc]
[  839.723656]  [&amp;lt;ffffffff8105ad10&amp;gt;] ? default_wake_function+0x0/0x20
[  839.723961]  [&amp;lt;ffffffffa0748ba5&amp;gt;] ptlrpc_main+0xa45/0x1650 [ptlrpc]
[  839.724266]  [&amp;lt;ffffffffa0748160&amp;gt;] ? ptlrpc_main+0x0/0x1650 [ptlrpc]
[  839.724545]  [&amp;lt;ffffffff8100c10a&amp;gt;] child_rip+0xa/0x20
[  839.724845]  [&amp;lt;ffffffffa0748160&amp;gt;] ? ptlrpc_main+0x0/0x1650 [ptlrpc]
[  839.725143]  [&amp;lt;ffffffffa0748160&amp;gt;] ? ptlrpc_main+0x0/0x1650 [ptlrpc]
[  839.725426]  [&amp;lt;ffffffff8100c100&amp;gt;] ? child_rip+0x0/0x20
[  839.725683] 
[  839.741236] Kernel panic - not syncing: LBUG
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;I have a crashdump in /exports/crashdumps/192.168.10.221-2013-05-05-00\:56\:27&lt;br/&gt;
source tag in my tree: master-20130505&lt;/p&gt;</description>
                <environment></environment>
        <key id="18713">LU-3278</key>
            <summary>osd_internal.h:747:osd_fid2oi()) ASSERTION( osd-&gt;od_oi_table != ((void *)0) &amp;&amp; osd-&gt;od_oi_count &gt;= 1 ) failed</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="yong.fan">nasf</assignee>
                                    <reporter username="green">Oleg Drokin</reporter>
                        <labels>
                    </labels>
                <created>Sun, 5 May 2013 22:17:45 +0000</created>
                <updated>Thu, 7 Nov 2019 16:09:07 +0000</updated>
                            <resolved>Tue, 7 May 2013 08:13:17 +0000</resolved>
                                    <version>Lustre 2.4.0</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>5</watches>
                                                                            <comments>
                            <comment id="57707" author="yong.fan" created="Mon, 6 May 2013 05:02:20 +0000"  >&lt;p&gt;The direct reason for the failure is that the OI files may be not ready or already be closed when the LLOG processing. But the real issue is that the LLOG handling should not trigger OI files lookup.&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-object&quot;&gt;int&lt;/span&gt; osd_oi_lookup(struct osd_thread_info *info, struct osd_device *osd,
                  &lt;span class=&quot;code-keyword&quot;&gt;const&lt;/span&gt; struct lu_fid *fid, struct osd_inode_id *id,
                  bool check_fld)
{
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (unlikely(fid_is_last_id(fid)))
                &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; osd_obj_spec_lookup(info, osd, fid, id);

===&amp;gt;        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ((check_fld &amp;amp;&amp;amp; fid_is_on_ost(info, osd, fid)) || fid_is_llog(fid))
                &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; osd_obj_map_lookup(info, osd, fid, id);

        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (fid_is_fs_root(fid)) {
                osd_id_gen(id, osd_sb(osd)-&amp;gt;s_root-&amp;gt;d_inode-&amp;gt;i_ino,
                           osd_sb(osd)-&amp;gt;s_root-&amp;gt;d_inode-&amp;gt;i_generation);
                &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; 0;
        }

        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (unlikely(fid_is_acct(fid)))
                &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; osd_acct_obj_lookup(info, osd, fid, id);

        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (!osd-&amp;gt;od_igif_inoi &amp;amp;&amp;amp; fid_is_igif(fid)) {
                osd_id_gen(id, lu_igif_ino(fid), lu_igif_gen(fid));
                &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; 0;
        }

        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; __osd_oi_lookup(info, osd, fid, id);
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;That means the &quot;fid_is_llog(fid)&quot; returned false for this case.&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 &lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt; fid_is_llog(&lt;span class=&quot;code-keyword&quot;&gt;const&lt;/span&gt; struct lu_fid *fid)
{               
        &lt;span class=&quot;code-comment&quot;&gt;/* file with OID == 1 is not llog but contains last oid */&lt;/span&gt;
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; fid_seq_is_llog(fid_seq(fid)) &amp;amp;&amp;amp; fid_oid(fid) &amp;gt; 1;
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;But the old &quot;fid_is_llog(fid)&quot; was like that:&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 &lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt; fid_is_llog(&lt;span class=&quot;code-keyword&quot;&gt;const&lt;/span&gt; struct lu_fid *fid)
{
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; fid_seq_is_llog(fid_seq(fid));
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I am not sure whether it is related with above code changes. I have add debug information in the patch (&lt;a href=&quot;http://review.whamcloud.com/#change,6267&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/#change,6267&lt;/a&gt;) to catch the &quot;@fid&quot; when the failure reproduced.&lt;/p&gt;</comment>
                            <comment id="57740" author="tappro" created="Mon, 6 May 2013 16:25:44 +0000"  >&lt;p&gt;The file with OID == 1 is not llog but /seq-1-lastid which stores last generated fid oid for llogs, it doesn&apos;t need osd_obj_map_xxx, it is just ordinary file in the root directory. But you said above it can be used before OI is initialized, probably that is the reason, though I am not sure why llog is allowed to work over OSD which is not ready, probably OI should be set up early?&lt;/p&gt;</comment>
                            <comment id="57809" author="yong.fan" created="Tue, 7 May 2013 08:12:24 +0000"  >&lt;p&gt;More study the log and code analysis, I think the failure caused by that the OI files closed before the MGS service thread stopped. So the solution is NOT setup OI early, instead, we should cleanup the OI some later.&lt;/p&gt;

&lt;p&gt;It is another instance of &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-3275&quot; title=&quot;sanity-scrub.sh test_11: osd_seq_load() ASSERTION( map-&amp;gt;om_root ) failed&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-3275&quot;&gt;&lt;del&gt;LU-3275&lt;/del&gt;&lt;/a&gt;. I have made patch for such bug.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://review.whamcloud.com/#change,6267&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/#change,6267&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="57810" author="yong.fan" created="Tue, 7 May 2013 08:13:17 +0000"  >&lt;p&gt;Another failure instance of &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-3275&quot; title=&quot;sanity-scrub.sh test_11: osd_seq_load() ASSERTION( map-&amp;gt;om_root ) failed&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-3275&quot;&gt;&lt;del&gt;LU-3275&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="257931" author="bzzz" created="Thu, 7 Nov 2019 16:09:07 +0000"  >&lt;p&gt;not sure whether to file a new ticket, but I&apos;ve hit this locally few times yet:&lt;/p&gt;

&lt;p&gt;Lustre: DEBUG MARKER: == replay-dual test 23b: c1 rmdir d1, M1 drop reply and fail M0/M1, c2 mkdir d1 ====================== 20:38:18 (1573141098)&lt;br/&gt;
LustreError: 30344:0:(osd_internal.h:994:osd_fid2oi()) ASSERTION( osd-&amp;gt;od_oi_table != NULL &amp;amp;&amp;amp; osd-&amp;gt;od_oi_count &amp;gt;= 1 ) failed: &lt;span class=&quot;error&quot;&gt;&amp;#91;0xa:0x9:0x0&amp;#93;&lt;/span&gt;&lt;br/&gt;
LustreError: 30344:0:(osd_internal.h:994:osd_fid2oi()) LBUG&lt;br/&gt;
Call Trace:&lt;br/&gt;
 ? __schedule+0x2ad/0xb00&lt;br/&gt;
 schedule+0x34/0x80&lt;br/&gt;
 lbug_with_loc+0x79/0x80 &lt;span class=&quot;error&quot;&gt;&amp;#91;libcfs&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? __osd_oi_lookup.isra.0+0x32b/0x3d0 &lt;span class=&quot;error&quot;&gt;&amp;#91;osd_ldiskfs&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? osd_object_init+0x290/0x2110 &lt;span class=&quot;error&quot;&gt;&amp;#91;osd_ldiskfs&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? __raw_spin_lock_init+0x28/0x50&lt;br/&gt;
 ? lu_object_start.isra.0+0x68/0x100 &lt;span class=&quot;error&quot;&gt;&amp;#91;obdclass&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? lu_object_find_at+0x30b/0x9e0 &lt;span class=&quot;error&quot;&gt;&amp;#91;obdclass&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? dt_locate_at+0x13/0xa0 &lt;span class=&quot;error&quot;&gt;&amp;#91;obdclass&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? llog_osd_open+0x2b0/0xf90 &lt;span class=&quot;error&quot;&gt;&amp;#91;obdclass&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? __raw_spin_lock_init+0x28/0x50&lt;br/&gt;
 ? llog_open+0x1a7/0x3f0 &lt;span class=&quot;error&quot;&gt;&amp;#91;obdclass&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? llog_origin_handle_read_header+0x178/0x500 &lt;span class=&quot;error&quot;&gt;&amp;#91;ptlrpc&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? tgt_llog_read_header+0x26/0xb0 &lt;span class=&quot;error&quot;&gt;&amp;#91;ptlrpc&amp;#93;&lt;/span&gt;&lt;br/&gt;
 ? tgt_request_handle+0x411/0x17f0 &lt;span class=&quot;error&quot;&gt;&amp;#91;ptlrpc&amp;#93;&lt;/span&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                            <outwardlinks description="duplicates">
                                        <issuelink>
            <issuekey id="18710">LU-3275</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|hzvq6n:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8115</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>