<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:31:36 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-3173] Incorrect detection of ldiskfs series to use</title>
                <link>https://jira.whamcloud.com/browse/LU-3173</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;The problem is in AS_VERSION_COMPARE(&lt;span class=&quot;error&quot;&gt;&amp;#91;$LINUXRELEASE&amp;#93;&lt;/span&gt;,&lt;span class=&quot;error&quot;&gt;&amp;#91;2.6.32-343&amp;#93;&lt;/span&gt; in ldiskfs-build.m4. The result of string comparison of &quot;2.6.32.lustremaster&quot; and &quot;2.6.32-343&quot; give a great and series for rhel6.4 are chosen.&lt;/p&gt;

&lt;p&gt;The value of EXTRAVERSION in kernel Makefile should be chosen careful for subsequent string comparison or we need to change the code of series selection.&lt;/p&gt;</description>
                <environment></environment>
        <key id="18414">LU-3173</key>
            <summary>Incorrect detection of ldiskfs series to use</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="1">Fixed</resolution>
                                        <assignee username="dmiter">Dmitry Eremin</assignee>
                                    <reporter username="dmiter">Dmitry Eremin</reporter>
                        <labels>
                    </labels>
                <created>Mon, 15 Apr 2013 13:17:58 +0000</created>
                <updated>Mon, 4 Nov 2013 00:18:16 +0000</updated>
                            <resolved>Thu, 11 Jul 2013 10:30:44 +0000</resolved>
                                                    <fixVersion>Lustre 2.5.0</fixVersion>
                    <fixVersion>Lustre 2.4.2</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                            <comments>
                            <comment id="56320" author="dmiter" created="Mon, 15 Apr 2013 13:28:03 +0000"  >&lt;p&gt;The fix for selection of ldiskfs series to use is &lt;a href=&quot;http://review.whamcloud.com/6056&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/6056&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="56743" author="morrone" created="Mon, 22 Apr 2013 21:35:07 +0000"  >&lt;p&gt;I sounds like the Lustre build of the Linux kernel is currently converting the upstream kernel string from 2.6.32-343 to 2.6.32.lustremaster.  That new version string is kind of horrible.  How about you just fix that?&lt;/p&gt;</comment>
                            <comment id="56794" author="dmiter" created="Tue, 23 Apr 2013 12:52:19 +0000"  >&lt;p&gt;According &lt;a href=&quot;https://wiki.hpdd.intel.com/display/PUB/Walk-thru-+Build+Lustre+MASTER+on+RHEL+6.3+from+Whamcloud+git&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://wiki.hpdd.intel.com/display/PUB/Walk-thru-+Build+Lustre+MASTER+on+RHEL+6.3+from+Whamcloud+git&lt;/a&gt; we recommend to edit kernel sources Makefile and modify line 4:&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;EXTRAVERSION = .lustremaster
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Therefore, the kernel version produced from those sources will be:&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;#define UTS_RELEASE &quot;2.6.32.lustremaster&quot;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;So, we try to use this version as upstream kernel version. I don&apos;t know how we produce pre-built RPMs packages but WiKi recommendation about building Lustre master from git sources is not correct.&lt;/p&gt;

&lt;p&gt;Anyway we try to rely on string representation which is not a kernel version only. The kernel version is &quot;2.6.32&quot;. The suffix &quot;-358.2.1.el6&quot; is a release.&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;$ rpm -qi kernel
Name        : kernel       Relocations: (not relocatable)
Version     : 2.6.32       Vendor: CentOS
Release     : 358.2.1.el6  Build Date: Wed 13 Mar 2013 05:35:54 AM MSK
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Now we use &quot;AS_VERSION_COMPARE(&lt;span class=&quot;error&quot;&gt;&amp;#91;$LINUXRELEASE&amp;#93;&lt;/span&gt;,&lt;span class=&quot;error&quot;&gt;&amp;#91;2.6.32-343&amp;#93;&lt;/span&gt;,&quot; which is not robust as I mentioned above.&lt;/p&gt;

&lt;p&gt;In the current patch I try to use RHEL_RELEASE_CODE which is just encoding of RHEL_MAJOR and RHEL_MINOR. Probably we could use RHEL_RELEASE which is more precise. But anyway I think we should not rely on string which user can easily change with his custom version.&lt;/p&gt;</comment>
                            <comment id="56834" author="morrone" created="Tue, 23 Apr 2013 17:32:09 +0000"  >&lt;blockquote&gt;&lt;p&gt;According &lt;a href=&quot;https://wiki.hpdd.intel.com/display/PUB/Walk-thru-+Build+Lustre+MASTER+on+RHEL+6.3+from+Whamcloud+git&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://wiki.hpdd.intel.com/display/PUB/Walk-thru-+Build+Lustre+MASTER+on+RHEL+6.3+from+Whamcloud+git&lt;/a&gt; we recommend to edit kernel sources Makefile and modify line 4&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I would strongly recommend changing those instructions.  Replacing the very useful release string from upstream with the very vague string &quot;.lustremaster&quot; is just bad advice.&lt;/p&gt;

&lt;p&gt;Case in point: &lt;em&gt;you&lt;/em&gt; guys aren&apos;t following that advice!  Check your kernel packages.&lt;/p&gt;

&lt;p&gt;LLNL certainly doesn&apos;t choose to rename our kernels that way, and never will.&lt;/p&gt;

&lt;p&gt;In summary, I think that using the version+release field is plenty robust, if we simply stop giving users bad advice about trashing the release field.&lt;/p&gt;

&lt;p&gt;The Version+Release string is simple and straight forward to understand.  It is easy for a human to match up with rpm names.&lt;/p&gt;

&lt;p&gt;The Version+Release also more uniquely identifies a kernel.  Multiple differing kernels can have the same RHEL_RELEASE_CODE, and that could be a problem for properly idenifying which patches are needed.&lt;/p&gt;

&lt;p&gt;Honestly, if a user is building their own kernel, they can quite easily change &lt;em&gt;any&lt;/em&gt; of the numbers.  Lets not worry about all of the crazy things people &lt;em&gt;might&lt;/em&gt; do, and focus on the things we normally do.&lt;/p&gt;</comment>
                            <comment id="56851" author="dmiter" created="Tue, 23 Apr 2013 18:34:01 +0000"  >&lt;p&gt;I don&apos;t propose to change this approach. I just would like to make this approach more stable regardless user changes.&lt;/p&gt;

&lt;p&gt;My patch #3 (&lt;a href=&quot;http://review.whamcloud.com/6056&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/6056&lt;/a&gt;) just extract correct upstream kernel release for RHEL kernels and form it into $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)-$(RHEL_RELEASE). It&apos;s exactly Version+Release (2.6.32-358) format like you propose to follow without any additional info and it not depends from EXTRAVERSION which user can change.&lt;/p&gt;

&lt;p&gt;If EXTRAVERSION is not empty kernel script remove all RHEL release information from kernel version. So, user should carefully write the same RHEL release version as he see in original kernel package. It&apos;s not convenient I think. For example:&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;$ rpm -qi kernel
Name        : kernel       Relocations: (not relocatable)
Version     : 2.6.32       Vendor: CentOS
Release     : 358.2.1.el6  Build Date: Wed 13 Mar 2013 05:35:54 AM MSK

# Therefore write to Makefile
EXTRAVERSION = -358.2.1.el6_lustre
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Moreover the directory name with produced kernel will be &lt;b&gt;~/rpmbuild/BUILD/kernel-2.6.32358.2.1.el6_lustre.x86_64&lt;/b&gt;. It looks confusing at least for me but user should use it in Lustre configure script.&lt;/p&gt;

&lt;p&gt;So, what is wrong with my #3 patch? Are you insist on WiKi change only?&lt;/p&gt;</comment>
                            <comment id="56858" author="morrone" created="Tue, 23 Apr 2013 18:57:21 +0000"  >&lt;p&gt;Yes, I think that a Wiki-only change is the appropriate fix for this problem.  I don&apos;t see much value in the additional complexity that the patch introduces.&lt;/p&gt;</comment>
                            <comment id="56865" author="ys" created="Tue, 23 Apr 2013 19:26:47 +0000"  >&lt;p&gt;Hi, Christopher, I think this change is needed. I have received many guys encountered issue when they are build kernel and lustre on local box. The version come from utsrelease.h is depend on environment. But RHEL_RELEASE is stable always. So i think we use it more reasonable.&lt;/p&gt;</comment>
                            <comment id="56878" author="morrone" created="Tue, 23 Apr 2013 20:30:29 +0000"  >&lt;p&gt;Isn&apos;t that because you guys are giving them bad instructions right now?  With proper instructions, doesn&apos;t that problem go away?&lt;/p&gt;</comment>
                            <comment id="56897" author="ys" created="Wed, 24 Apr 2013 00:37:13 +0000"  >&lt;p&gt;It obviously not. Not everyone build kernel from spec file. It also not necessary step. We haven&apos;t this problem in past, at least we should restore the behavior before.&lt;/p&gt;</comment>
                            <comment id="59241" author="dmiter" created="Fri, 24 May 2013 11:52:24 +0000"  >&lt;p&gt;Additional drawback of approach to play with EXTRAVERSION only is incorrect specification of the kernel version for dependencies. For example, if I set the following in Makefile:&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;VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 32
EXTRAVERSION = -358.6.2.lum
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I will got a kernel RPM with following information:&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;Name        : kernel                       Relocations: (not relocatable)
Version     : 2.6.32358.6.2.lum            Vendor: The Linux Community
Release     : 1                            Build Date: Tue 21 May 2013 04:24:59 PM MSK
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;But a lustre-modules will required dependency from &quot;kernel = 2.6.32-358.6.2.lum&quot;. So, additional thing we need to fix is &quot;krequires&quot; macro value from lustre.spec file.&lt;/p&gt;</comment>
                            <comment id="59312" author="morrone" created="Fri, 24 May 2013 21:16:36 +0000"  >&lt;p&gt;You know, more and more I think this is just completely the wrong approach to the problem.  We are trying to do two things that are conceptually in conflict:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Decide which patch series to apply based mainly on the kernel versions string (also looking at distro name).&lt;/li&gt;
	&lt;li&gt;Allow the user to change the version string in ways that throw out needed version resolution.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;How about this instead: If a user wishes to change the kernel version number, they need to use a configure option to specify which patch set they wish to use.  They chose to throw away information, so make them tell ldiskfs which patch set to use.  Adding complexity to try to guess when they are making it hard for us seems counterproductive to me.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="19579">LU-3516</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|hzvo3r:</customfieldvalue>

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