<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:34:22 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-3491] replace printing of i_ino in llite with ll_inode2fid()</title>
                <link>https://jira.whamcloud.com/browse/LU-3491</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;The printing of i_ino/i_generation in llite messages is not nearly so useful as printing the full inode FID, since i_ino is a &quot;compressed&quot; version of the FID and there may be duplicate values for i_ino in some cases (especially if running on a 32-bit client).&lt;/p&gt;

&lt;p&gt;An audit should be made of i_ino/i_generation usage in the lustre/&lt;/p&gt;
{llite,mdc}
&lt;p&gt;/*.c files, and replace this with DFID/PFID(ll_inode2fid(inode)).&lt;/p&gt;</description>
                <environment></environment>
        <key id="19507">LU-3491</key>
            <summary>replace printing of i_ino in llite with ll_inode2fid()</summary>
                <type id="4" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11310&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="4" iconUrl="https://jira.whamcloud.com/images/icons/priorities/minor.svg">Minor</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="jamesanunez">James Nunez</assignee>
                                    <reporter username="adilger">Andreas Dilger</reporter>
                        <labels>
                    </labels>
                <created>Fri, 21 Jun 2013 00:58:10 +0000</created>
                <updated>Fri, 5 Jun 2015 00:32:23 +0000</updated>
                            <resolved>Sat, 2 Nov 2013 03:06:53 +0000</resolved>
                                    <version>Lustre 2.5.0</version>
                                    <fixVersion>Lustre 2.6.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                            <comments>
                            <comment id="61531" author="jamesanunez" created="Sat, 29 Jun 2013 01:40:38 +0000"  >&lt;p&gt;The patch, for llite, for this ticket is almost complete, but a couple of questions came to mind while modifying the code. &lt;/p&gt;

&lt;p&gt;1. Do we want consistency in the way the inode/FID is printed? Sometimes we print the FID first then the inode in parenthesis. Other times we print the inode first and then the FID in parenthesis. Examples:&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;CDEBUG(D_DLMTRACE, &lt;span class=&quot;code-quote&quot;&gt;&quot;setting l_ast_data to inode %p (&quot;&lt;/span&gt;DFID&lt;span class=&quot;code-quote&quot;&gt;&quot;)\n&quot;&lt;/span&gt;, inode, PFID(ll_inode2fid(inode)));
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;and&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;CDEBUG(D_VFSTRACE, &lt;span class=&quot;code-quote&quot;&gt;&quot;VFS Op:name=%.*s,dir=&quot;&lt;/span&gt;DFID&lt;span class=&quot;code-quote&quot;&gt;&quot;(%p),intent=%s\n&quot;&lt;/span&gt;, dentry-&amp;gt;d_name.len, dentry-&amp;gt;d_name.name, PFID(ll_inode2fid(dir)), dir, LL_IT2STR(it));
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;2. Whenever possible, do we want to print the inode along with the FID? For example, we have times where we just print the Fid:&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;CERROR(&lt;span class=&quot;code-quote&quot;&gt;&quot;inode &quot;&lt;/span&gt;DFID&lt;span class=&quot;code-quote&quot;&gt;&quot;: rc = %d\n&quot;&lt;/span&gt;, PFID(ll_inode2fid(inode)), rc);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Should we actually print, when possible:&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;CERROR(&lt;span class=&quot;code-quote&quot;&gt;&quot;inode %p (&quot;&lt;/span&gt;DFID&lt;span class=&quot;code-quote&quot;&gt;&quot;): rc = %d\n&quot;&lt;/span&gt;, inode, PFID(ll_inode2fid(inode)), rc);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;3. In some files,  I see the following:&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;CDEBUG(D_INFO, &lt;span class=&quot;code-quote&quot;&gt;&quot;encoding &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; (%lu,&quot;&lt;/span&gt;DFID&lt;span class=&quot;code-quote&quot;&gt;&quot;) maxlen=%d minlen=%d\n&quot;&lt;/span&gt;, inode-&amp;gt;i_ino, PFID(ll_inode2fid(inode)), *plen, (&lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt;)sizeof(struct lustre_nfs_fid));
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;and &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;CDEBUG(D_INFO, &lt;span class=&quot;code-quote&quot;&gt;&quot;getting parent &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; (%lu,&quot;&lt;/span&gt;DFID&lt;span class=&quot;code-quote&quot;&gt;&quot;)\n&quot;&lt;/span&gt;, dir-&amp;gt;i_ino, PFID(ll_inode2fid(dir)));
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;It seems redundant to print both i_ino and FID for the same inode. Should we just print the FID in these cases?&lt;/p&gt;</comment>
                            <comment id="61533" author="adilger" created="Sat, 29 Jun 2013 02:47:25 +0000"  >&lt;p&gt;James, thanks for your attention to the details.&lt;/p&gt;

&lt;p&gt;I agree that printing both the FID and i_ino is redundant, since the inode number is just a compressed 32-bit or 64-bit version of the FID.&lt;/p&gt;

&lt;p&gt;Please always print the device name or fsname at the start of any console error message.  If we need to print the inode pointer, it should be in parenthesis after the FID, since it is much less important that the FID, and will rarely be of use to anyone without a crashdump. &lt;/p&gt;</comment>
                            <comment id="61635" author="jamesanunez" created="Tue, 2 Jul 2013 13:49:43 +0000"  >&lt;p&gt;Proposed patch for llite is at:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://review.whamcloud.com/6848&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/6848&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="63427" author="jamesanunez" created="Wed, 31 Jul 2013 21:41:34 +0000"  >&lt;p&gt;Accidentally closed issue. Patch has not landed yet.&lt;/p&gt;</comment>
                            <comment id="70555" author="jamesanunez" created="Sat, 2 Nov 2013 03:06:53 +0000"  >&lt;p&gt;Landed to 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|hzvtqn:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8775</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>