<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:28:41 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-9726] client SRPM does not rebuild</title>
                <link>https://jira.whamcloud.com/browse/LU-9726</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;When I fetch the &lt;a href=&quot;https://build.hpdd.intel.com/job/lustre-b2_10/arch=x86_64,build_type=client,distro=el7,ib_stack=inkernel/2/artifact/artifacts/SRPMS/lustre-2.10.0_RC1-1.src.rpm&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;client SRPM&lt;/a&gt;&#160;from the URL in the Environment field, it doesn&apos;t simply rebuild in a clean-build environment such as Copr (which is basically mock&lt;span class=&quot;error&quot;&gt;&amp;#91;chain&amp;#93;&lt;/span&gt;):&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;checking for Linux sources... 
checking for ... no
configure: error: Kernel source  could not be found.
error: Bad exit status from /var/tmp/rpm-tmp.0DFyxx (%build)

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;You can see the &lt;a href=&quot;https://copr-be.cloud.fedoraproject.org/results/managerforlustre/lustre-client/epel-7-x86_64/00573166-lustre/builder-live.log&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;full log&lt;/a&gt; of the build if you wish.&lt;/p&gt;

&lt;p&gt;As you can see in that log though, &lt;em&gt;kernel-devel&lt;/em&gt; was installed:&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;Dependencies Resolved

================================================================================
 Package                Arch       Version                    Repository   Size
================================================================================
Installing:
 kernel-devel           x86_64     3.10.0-514.26.1.el7        updates      13 M
...

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Is the Lustre autoconf macro that is looking for the kernel source not defaulting to &lt;em&gt;/usr/src/kernels/*&lt;/em&gt; perhaps?&lt;/p&gt;</description>
                <environment>&lt;a href=&quot;https://build.hpdd.intel.com/job/lustre-b2_10/arch=x86_64,build_type=client,distro=el7,ib_stack=inkernel/2/&quot;&gt;https://build.hpdd.intel.com/job/lustre-b2_10/arch=x86_64,build_type=client,distro=el7,ib_stack=inkernel/2/&lt;/a&gt;</environment>
        <key id="46983">LU-9726</key>
            <summary>client SRPM does not rebuild</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="1" iconUrl="https://jira.whamcloud.com/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="mdiep">Minh Diep</assignee>
                                    <reporter username="brian">Brian Murrell</reporter>
                        <labels>
                    </labels>
                <created>Fri, 30 Jun 2017 11:28:18 +0000</created>
                <updated>Wed, 19 Jul 2017 12:40:26 +0000</updated>
                                            <version>Lustre 2.10.0</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                            <comments>
                            <comment id="200711" author="brian" created="Fri, 30 Jun 2017 12:09:18 +0000"  >&lt;p&gt;The problem seems to be in the nature of the checks for kernel source in &lt;em&gt;/usr/src/kernels/&lt;/em&gt;:&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;for DEFAULT_LINUX in /lib/modules/$(uname -r)/{source,build} /usr/src/linux; do
	AS_IF([readlink -q -e $DEFAULT_LINUX &amp;gt;/dev/null], [break])
done
if test &quot;$DEFAULT_LINUX&quot; = &quot;/lib/modules/$(uname -r)/source&quot;; then
	PATHS=&quot;/lib/modules/$(uname -r)/build&quot;
fi

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;The problem is that in a clean-room type build system like &lt;em&gt;Copr&lt;/em&gt;, or even just &lt;em&gt;mock&lt;/em&gt;, the build is done in a chroot so the kernel that is running on the system that has the chroot may not reflect the contents of the &lt;em&gt;kernel-devel&lt;/em&gt; that was installed for the build.&lt;/p&gt;

&lt;p&gt;The fix is probably to add &lt;span class=&quot;error&quot;&gt;&amp;#91;some subset -- perhaps just the highest version of&amp;#93;&lt;/span&gt; &lt;em&gt;/usr/src/kernels/*&lt;/em&gt; to the end of {$PATHS} in the above search for a kernel source/devel location.&lt;/p&gt;</comment>
                            <comment id="200740" author="pjones" created="Fri, 30 Jun 2017 17:40:26 +0000"  >&lt;p&gt;Minh &lt;/p&gt;

&lt;p&gt;Can you please assist with this one?&lt;/p&gt;

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

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="200741" author="mdiep" created="Fri, 30 Jun 2017 17:41:14 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.whamcloud.com/secure/ViewProfile.jspa?name=brian&quot; class=&quot;user-hover&quot; rel=&quot;brian&quot;&gt;brian&lt;/a&gt;, I assume you&apos;re building client only. However, I don&apos;t see a &apos;--disable-server&apos; being passed to ./configure&lt;/p&gt;</comment>
                            <comment id="200743" author="brian" created="Fri, 30 Jun 2017 17:47:44 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.whamcloud.com/secure/ViewProfile.jspa?name=mdiep&quot; class=&quot;user-hover&quot; rel=&quot;mdiep&quot;&gt;mdiep&lt;/a&gt;: To be clear, I am trying to &lt;span class=&quot;error&quot;&gt;&amp;#91;re&amp;#93;&lt;/span&gt;build the produced&#160;SRPM so I don&apos;t control the configure options. &#160;The specfile inside the SRPM controls that.&lt;/p&gt;

&lt;p&gt;Ultimately, the SRPM output product of an RPM build should be rebuildable. &#160;If I use the produced &lt;em&gt;lustre-client&lt;/em&gt;&#160;SRPM file and then use &lt;tt&gt;rpmbuild --rebuild &amp;lt;SRPM file&amp;gt;&lt;/tt&gt;&#160;that should rebuild the lustre-client binary RPM.&lt;/p&gt;</comment>
                            <comment id="200792" author="mdiep" created="Fri, 30 Jun 2017 18:42:49 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.whamcloud.com/secure/ViewProfile.jspa?name=brian&quot; class=&quot;user-hover&quot; rel=&quot;brian&quot;&gt;brian&lt;/a&gt; I agree. I don&apos;t think lustre packaging source any differently between server and client and that needs to be fixed. could you verify that you can build lustre client with passing --disable-server into rpmbuild?&lt;/p&gt;</comment>
                            <comment id="200799" author="brian" created="Fri, 30 Jun 2017 19:23:57 +0000"  >&lt;blockquote&gt;
&lt;p&gt;can build lustre client with passing --disable-server into rpmbuild&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;The argument is &lt;tt&gt;--without-servers&lt;/tt&gt; and that only addresses the instructing of a client build, which is not what this ticket is reporting. &#160;This is indeed another issue with the SRPM, but different than this ticket.&lt;/p&gt;

&lt;p&gt;The problem that this ticket is reporting is that kernel source detection/selection does not work in clean-room SRPM &lt;span class=&quot;error&quot;&gt;&amp;#91;re&amp;#93;&lt;/span&gt;build (i.e. &lt;tt&gt;rpmbuild -&lt;del&gt;rebuild lustre-client&lt;/del&gt;....src.rpm&lt;/tt&gt;&#160;environments. It&apos;s limited to autodetection only on systems where the kernel you want to build for is the kernel the build system is booted on. &#160;It should, at minimum use whatever is in &lt;em&gt;/usr/src/kernels/&lt;/em&gt;&#160;particularly if there is only one item in that directory if no other location can be found.&lt;/p&gt;

&lt;p&gt;And using &lt;em&gt;/usr/src/kernels/&lt;/em&gt; is important because the &lt;em&gt;/lib/modules/*/{build,source}&lt;/em&gt; links only exist if you install a kernel which shouldn&apos;t be necessary in a build chroot such as &lt;em&gt;mock&lt;/em&gt; creates.&lt;/p&gt;</comment>
                            <comment id="202718" author="brian" created="Wed, 19 Jul 2017 12:40:26 +0000"  >&lt;p&gt;To clarify, the original issue described in this ticket, the need to add /usr/src/kernels/* to the search path for kernel source is actually addressed in &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-9775&quot; title=&quot;find kernel-devel even if the current kernel is not installed in the build root&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-9775&quot;&gt;&lt;del&gt;LU-9775&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The second issue in this ticket, that the &lt;em&gt;lustre-client&lt;/em&gt;&#160;SRPM re-build does not set the &lt;tt&gt;&#8211;disable-servers&lt;/tt&gt; still needs to be addressed.&lt;/p&gt;

&lt;p&gt;Probably the easiest way to deal with that is not not require the option be set but to detect if the kernel source is patched for a server build or not automatically.&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|hzzfx3:</customfieldvalue>

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