<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:47:40 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-5000] lustre_idl.h compilation regression from ORNL-10</title>
                <link>https://jira.whamcloud.com/browse/LU-5000</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Commit d190c63f, &quot;ORNL-10: Basic IR implementation&quot; broke the compilation of lustre_idl.h in user space.  lustre_idl.h is packaged for installation in user space.  We cannot rely on lustre&apos;s internals to be available when lustre_idl.h is compiled.&lt;/p&gt;

&lt;p&gt;In particular, the bug is here:&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;struct mgs_nidtbl_entry {
        __u64           mne_version;    &lt;span class=&quot;code-comment&quot;&gt;/* table version of &lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt; entry */&lt;/span&gt;
        __u32           mne_instance;   &lt;span class=&quot;code-comment&quot;&gt;/* target instance # */&lt;/span&gt;
        __u32           mne_index;      &lt;span class=&quot;code-comment&quot;&gt;/* target index */&lt;/span&gt;
        __u32           mne_length;     &lt;span class=&quot;code-comment&quot;&gt;/* length of &lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt; entry - by bytes */&lt;/span&gt;
        __u8            mne_type;       &lt;span class=&quot;code-comment&quot;&gt;/* target type LDD_F_SV_TYPE_OST/MDT */&lt;/span&gt;
        __u8            mne_nid_type;   &lt;span class=&quot;code-comment&quot;&gt;/* type of nid(mbz). &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; ipv6. */&lt;/span&gt;
        __u8            mne_nid_size;   &lt;span class=&quot;code-comment&quot;&gt;/* size of each NID, by bytes */&lt;/span&gt;
        __u8            mne_nid_count;  &lt;span class=&quot;code-comment&quot;&gt;/* # of NIDs in buffer */&lt;/span&gt;
        union { 
                lnet_nid_t nids[0];     &lt;span class=&quot;code-comment&quot;&gt;/* variable size buffer &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; NIDs. */&lt;/span&gt;
        } u;
};
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;lnet_nid_t is not defined in lustre_idl.h.&lt;/p&gt;</description>
                <environment></environment>
        <key id="24553">LU-5000</key>
            <summary>lustre_idl.h compilation regression from ORNL-10</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="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="jhammond">John Hammond</assignee>
                                    <reporter username="morrone">Christopher Morrone</reporter>
                        <labels>
                    </labels>
                <created>Sat, 3 May 2014 01:08:04 +0000</created>
                <updated>Wed, 22 Jul 2015 16:48:24 +0000</updated>
                            <resolved>Wed, 22 Jul 2015 16:47:31 +0000</resolved>
                                    <version>Lustre 2.4.0</version>
                    <version>Lustre 2.4.1</version>
                    <version>Lustre 2.5.0</version>
                    <version>Lustre 2.4.2</version>
                    <version>Lustre 2.5.1</version>
                    <version>Lustre 2.4.3</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>6</watches>
                                                                            <comments>
                            <comment id="83252" author="pjones" created="Tue, 6 May 2014 01:56:36 +0000"  >&lt;p&gt;Assigning to Jinshan as the original author of this work&lt;/p&gt;</comment>
                            <comment id="85485" author="adilger" created="Mon, 2 Jun 2014 17:47:49 +0000"  >&lt;p&gt;John, I thought I recall you submitting a patch to fix this issue?  I can&apos;t recall the patch number, however. &lt;/p&gt;</comment>
                            <comment id="85549" author="jhammond" created="Tue, 3 Jun 2014 07:25:22 +0000"  >&lt;p&gt;I abandoned that patch since we no longer package lustre_idl.h for userspace. The header is still broken in the sense that it uses lnet_nid_t but does not directly include lnet/lnet.h or lnet/types.h. However it does include libcfs/libcfs.h which includes libcfs/libcfs_private.h which includes lnet/types.h (which itself includes libcfs/libcfs.h).&lt;/p&gt;</comment>
                            <comment id="85622" author="morrone" created="Tue, 3 Jun 2014 18:06:57 +0000"  >&lt;p&gt;To put it another way: this ticket needs to remain open to deal with the remaining technical debt.  However, since lustre_idl.h is no longer packaged for user space, this ticket no longer necessarily need be fixed before the 2.6 release.&lt;/p&gt;

&lt;p&gt;We might want to fix it before 2.6 because we are worried about having external data types polluting the wire protocol definitions.  But I&apos;ll let you folks decide that.&lt;/p&gt;</comment>
                            <comment id="85890" author="adilger" created="Thu, 5 Jun 2014 18:36:36 +0000"  >&lt;p&gt;I think it makes sense to move the non &quot;type&quot; definitions out of &amp;lt;lnet/types.h&amp;gt; and into &amp;lt;lnet/lnet.h&amp;gt;, and possibly consolidate this with &amp;lt;lnet/lib-types.h&amp;gt; to have a single header that contiains the wire protocol structures and definitions, and this can be included by &amp;lt;lustre/lustre_idl.h&amp;gt;  without dragging in a bunch of unrelated stuff.&lt;/p&gt;

&lt;p&gt;Since we are not exporting lustre_idl.h to userspace anymore, this kind of code reorg should be deferred to 2.7.&lt;/p&gt;</comment>
                            <comment id="108603" author="simmonsja" created="Tue, 3 Mar 2015 17:49:43 +0000"  >&lt;p&gt;With patch &lt;a href=&quot;http://review.whamcloud.com/#/c/13792&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/#/c/13792&lt;/a&gt; all the wire protocol for lnet has been moved to lnet/types.h which is used by both user land and kernel space. Both types.h and lib-dlc.h are automatically included in lnet.h which is the master user land header to use. Since lustre_idl.h uses lnet/types.h by default it will be automatically fixed by this patch.&lt;/p&gt;</comment>
                            <comment id="110973" author="simmonsja" created="Sun, 29 Mar 2015 19:02:12 +0000"  >&lt;p&gt;Patch 13792 has landed so the lnet headers are now sorted so you have kernel only headers and user land only headers. So lustre_idl.h will not pull in a bunch of kernel cruft anymore from LNet. This ticket can be closed. Please note lustre_idl.h still pulls in kernel cruft from internal lustre kernel headers. That will be addressed under &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-6401&quot; title=&quot;Untangle lustre userland and kernel headers&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-6401&quot;&gt;&lt;del&gt;LU-6401&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="121926" author="simmonsja" created="Wed, 22 Jul 2015 16:42:43 +0000"  >&lt;p&gt;Peter this ticket can be closed.&lt;/p&gt;</comment>
                            <comment id="121928" author="pjones" created="Wed, 22 Jul 2015 16:47:31 +0000"  >&lt;p&gt;ok - thanks James&lt;/p&gt;</comment>
                            <comment id="121930" author="pjones" created="Wed, 22 Jul 2015 16:48:24 +0000"  >&lt;p&gt;Oh! I assume that the original reporter (Chris) will speak up if he has a different viewpoint and we can reopen.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10120">
                    <name>Blocker</name>
                                            <outwardlinks description="is blocking">
                                        <issuelink>
            <issuekey id="24578">LU-5011</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="29243">LU-6401</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="28700">LU-6245</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </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|hzwlqv:</customfieldvalue>

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