<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:35: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-3569] Use real OST index as ostid_to_fid() parameter instead of always &quot;0&quot;</title>
                <link>https://jira.whamcloud.com/browse/LU-3569</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Currently, the callers for ostid_to_fid() always use &quot;0&quot; as the &quot;ost_idx&quot; parameter. There are potential issues for that, and may cause FID inconsistency as to crash the system.&lt;/p&gt;</description>
                <environment></environment>
        <key id="19716">LU-3569</key>
            <summary>Use real OST index as ostid_to_fid() parameter instead of always &quot;0&quot;</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="yong.fan">nasf</assignee>
                                    <reporter username="yong.fan">nasf</reporter>
                        <labels>
                    </labels>
                <created>Tue, 9 Jul 2013 06:47:47 +0000</created>
                <updated>Thu, 25 Jun 2020 02:58:58 +0000</updated>
                            <resolved>Thu, 10 Dec 2015 18:17:52 +0000</resolved>
                                    <version>Lustre 2.5.0</version>
                                    <fixVersion>Lustre 2.6.0</fixVersion>
                    <fixVersion>Lustre 2.8.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>7</watches>
                                                                            <comments>
                            <comment id="62440" author="di.wang" created="Tue, 16 Jul 2013 23:28:40 +0000"  >&lt;p&gt;Hmm, currently, we only use loi_index to locate OST for object with IDIF, so I do not think using &quot;0&quot; can cause potential problem here, unless I miss sth?&lt;/p&gt;</comment>
                            <comment id="62453" author="adilger" created="Wed, 17 Jul 2013 04:47:02 +0000"  >&lt;p&gt;The problem is that LFSCK will begin storing OST object FIDs in the LMA.  If it is storing IDIF FIDs in the LMA with OST index 0, this will be confusing in the future.  I would prefer to use a consistent FID when accessing the OST objects so that the code does not have to have as many special cases in it.&lt;/p&gt;</comment>
                            <comment id="62509" author="di.wang" created="Wed, 17 Jul 2013 19:33:35 +0000"  >&lt;p&gt;I see. Ok, then I will work on it. Actually, I tried this before but blocked by some quota issue. Actually I more concerned about the compatiblity issue between old MDT and new OST, if the old MDT use some old IDIF to track some sth. I will check.&lt;/p&gt;</comment>
                            <comment id="62653" author="di.wang" created="Fri, 19 Jul 2013 22:28:30 +0000"  >&lt;p&gt;Wang Di (di.wang@intel.com) uploaded a new patch: &lt;a href=&quot;http://review.whamcloud.com/7053&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/7053&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-3569&quot; title=&quot;Use real OST index as ostid_to_fid() parameter instead of always &amp;quot;0&amp;quot;&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-3569&quot;&gt;&lt;del&gt;LU-3569&lt;/del&gt;&lt;/a&gt; ofd: packing ost_idx in IDIF&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 0e45c385508fc4377f07595d281911310fce3f29&lt;/p&gt;</comment>
                            <comment id="68200" author="adilger" created="Wed, 2 Oct 2013 22:01:00 +0000"  >&lt;p&gt;I see that we are already storing the &quot;index == 0&quot; FID into the OST objects with the current master:&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;# debugfs /dev/vg_sookie/lvost2
debugfs 1.42.7.wc2 (12-Apr-2013)
debugfs:  stats
Filesystem volume name:   testfs-OST0001
:
:
debugfs:  stat O/0/d0/1856
Inode: 172   Type: regular    Mode:  0666   Flags: 0x80000
:
:
Extended attributes stored in inode body: 
  lma = &quot;08 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 40 07 00 00 00 00 00 00 &quot; (24)
  lma: fid=[0x100000000:0x740:0x0] compat=8 incompat=0
  fid = &quot;00 04 00 00 02 00 00 00 f8 75 00 00 00 00 00 00 &quot; (16)
  fid: parent=[0x200000400:0x75f8:0x0] stripe=0
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;So this is always storing FID_SEQ_IDIF = 0x100000000 into the on-disk OST object LMA, instead of (FID_SEQ_NORMAL + ost_idx &amp;lt;&amp;lt; 16) = 0x100010000 in this case.  If this has been around since 2.4.x days then I guess LFSCK will have to fix it up either way and there is no requirement to fix it immediately, but if it is new in 2.5 then I&apos;d prefer that this be fixed before 2.5.0.&lt;/p&gt;</comment>
                            <comment id="68216" author="di.wang" created="Thu, 3 Oct 2013 06:23:33 +0000"  >&lt;p&gt;Oh, unfortunately, we always store FID_SEQ_IDIF(without ost index) for all of OST objects since 2.4.0. So LFSCK have to fix it. Nasf? &lt;/p&gt;</comment>
                            <comment id="68577" author="yong.fan" created="Tue, 8 Oct 2013 14:46:53 +0000"  >&lt;p&gt;I am thinking whether we will have the requirement to change OST-index in the future. If we have, then storing OST-index inside the IDIF will be trouble. Because for normal FID, OST-index is meaningless, the client can get the OST-index by checking FLD with the given FID. So as long as we can adjust the FLD correctly, then changing OST-index without breaking the system is easy.&lt;/p&gt;

&lt;p&gt;Currently, because all the IDIF use 0-index, the OI scrub does not care about the OST-index. But if the up layer change the IDIF logic, means both LOD and OFD use the real OST-index, then OI scrub needs to the OST-index to rebuild the LMA and the /O tree. And before such conversion is completed, the system is un-accessable, it is not like OI scrub for MDT file-level backup/restore. Under the later one case, the system is still accessible during the OI scrub rebuilding the OI files. I am not sure whether OI scrub or the OSD should know the &apos;index&apos; information or not.&lt;/p&gt;</comment>
                            <comment id="68588" author="adilger" created="Tue, 8 Oct 2013 15:21:02 +0000"  >&lt;p&gt;Even if we don&apos;t store the OST index into the on-disk LMA FID, we need to fix a couple of bugs in the ll_lost_found_objs. &lt;/p&gt;</comment>
                            <comment id="68604" author="adilger" created="Tue, 8 Oct 2013 17:24:32 +0000"  >&lt;p&gt;Looks like I am mistaken.  I thought that it was a bug for ll_recover_lost_found_objs checking fid_seq_is_idif() and creating the object path LPX64, since this would move objects to &quot;O/0x0/d*&quot; instead of &quot;O/0/d*&quot;.  However, I didn&apos;t notice until now that the old code is actually using LPX64i instead of LPX64, and LPX64i prints zero as &quot;0&quot; instead of &quot;0x0&quot;.&lt;/p&gt;

&lt;p&gt;Even so, I cleaned up the code a bit to consolidate where the seq_name is being generated into one place, and IDIF objects now use LPU64 for the seq_name to make the code more clear.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://review.whamcloud.com/7880&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/7880&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="122822" author="laisiyao" created="Fri, 31 Jul 2015 07:02:03 +0000"  >&lt;p&gt;Andreas, is there anything needed for this ticket?&lt;/p&gt;</comment>
                            <comment id="124527" author="adilger" created="Wed, 19 Aug 2015 03:06:24 +0000"  >&lt;p&gt;Lai, I&apos;d be grateful if you could revive my &lt;a href=&quot;http://review.whamcloud.com/7880&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/7880&lt;/a&gt; patch to fix ll_recover_lost_found_objs, or possibly better is to make a different patch to delete ll_recover_lost_found_objs.c entirely because LFSCK should handle that now (sanity-scrub test_14 tests this).&lt;/p&gt;</comment>
                            <comment id="124921" author="pjones" created="Mon, 24 Aug 2015 17:51:54 +0000"  >&lt;p&gt;As per discussion on the triage call, let&apos;s just delete the tool for 2.8&lt;/p&gt;</comment>
                            <comment id="127764" author="gerrit" created="Fri, 18 Sep 2015 09:10:57 +0000"  >&lt;p&gt;Lai Siyao (lai.siyao@intel.com) uploaded a new patch: &lt;a href=&quot;http://review.whamcloud.com/16477&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/16477&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-3569&quot; title=&quot;Use real OST index as ostid_to_fid() parameter instead of always &amp;quot;0&amp;quot;&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-3569&quot;&gt;&lt;del&gt;LU-3569&lt;/del&gt;&lt;/a&gt; utils: remove ll_recover_lost_found_obj&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: ef14f2f062ee31302d55a0a29ecee94233f47aa8&lt;/p&gt;</comment>
                            <comment id="135270" author="pjones" created="Fri, 4 Dec 2015 19:06:05 +0000"  >&lt;p&gt;Fan Yong&lt;/p&gt;

&lt;p&gt;We have been discussing this issue on the triage call and it looks like an fsck issue. Could you please look at the latest feedback in the patch and see what needs to be done?&lt;/p&gt;

&lt;p&gt;Thanks&lt;/p&gt;

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="135457" author="yong.fan" created="Tue, 8 Dec 2015 07:12:44 +0000"  >&lt;p&gt;Peter, I have refreshed the patch &lt;a href=&quot;http://review.whamcloud.com/#/c/16477/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/#/c/16477/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="135879" author="gerrit" created="Thu, 10 Dec 2015 17:47:52 +0000"  >&lt;p&gt;Oleg Drokin (oleg.drokin@intel.com) merged in patch &lt;a href=&quot;http://review.whamcloud.com/16477/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/16477/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-3569&quot; title=&quot;Use real OST index as ostid_to_fid() parameter instead of always &amp;quot;0&amp;quot;&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-3569&quot;&gt;&lt;del&gt;LU-3569&lt;/del&gt;&lt;/a&gt; utils: remove ll_recover_lost_found_obj&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 8f810496b9b13b79018b6889939a6de6e19ddddd&lt;/p&gt;</comment>
                            <comment id="135893" author="jgmitter" created="Thu, 10 Dec 2015 18:17:52 +0000"  >&lt;p&gt;Last patch has landed for 2.8.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="33790">LU-7585</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="42122">LU-8898</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="22566">LU-4414</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="21941">LU-4232</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                            <subtask id="22566">LU-4414</subtask>
                    </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|hzvut3:</customfieldvalue>

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