<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 03:33: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-17226] l_getsepol does not build due to not requiring openssl-devel</title>
                <link>https://jira.whamcloud.com/browse/LU-17226</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;The l_getsepol utility does not build in our buildfarm because openssl-devel is not installed. The only &quot;BuildRequires: openssl-devel&quot; is for &quot;with gss&quot; and we aren&apos;t using gss.&lt;/p&gt;</description>
                <environment>llnl build farm&lt;br/&gt;
&lt;br/&gt;
lustre 2.15.3_3.llnl</environment>
        <key id="78568">LU-17226</key>
            <summary>l_getsepol does not build due to not requiring openssl-devel</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="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="sebastien">Sebastien Buisson</assignee>
                                    <reporter username="defazio">Gian-Carlo Defazio</reporter>
                        <labels>
                            <label>llnl</label>
                    </labels>
                <created>Tue, 24 Oct 2023 20:22:49 +0000</created>
                <updated>Sat, 20 Jan 2024 00:51:08 +0000</updated>
                                            <version>Lustre 2.15.3</version>
                                    <fixVersion>Lustre 2.16.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>6</watches>
                                                                            <comments>
                            <comment id="390413" author="defazio" created="Tue, 24 Oct 2023 20:27:12 +0000"  >&lt;p&gt;Would it make sense to group a &quot;BuildRequires: openssl-devel&quot; with any&#160; instances of &quot;BuildRequires: pkgconfig(libselinux)&quot; since l_getsepol will only be used on systems with selinux?&lt;/p&gt;</comment>
                            <comment id="390415" author="paf0186" created="Tue, 24 Oct 2023 20:32:27 +0000"  >&lt;p&gt;I think we should only group actual build requirements, not other associations even if expected.&#160; Anything else seems to be asking for trouble in the future?&lt;/p&gt;

&lt;p&gt;Or are you saying l_getsepol is always used on systems with selinux and selinux won&apos;t work without it?&#160; In that case, it wouldn&apos;t be a buildrequires, but a configure check.&lt;/p&gt;</comment>
                            <comment id="390417" author="defazio" created="Tue, 24 Oct 2023 20:55:07 +0000"  >&lt;p&gt;l_getsepol is only used on systems with selinux.&lt;/p&gt;

&lt;p&gt;So (need to run l_getsepol) implies (running selinux)&lt;/p&gt;

&lt;p&gt;I&apos;m not sure if (running selinux) implies (need to run l_getsepol)&lt;/p&gt;

&lt;p&gt;The issue is that our build farm installs rpms based on BuildRequires, so openssl-devel needs to be in the .spec file somewhere, otherwise the openssl-devel rpm doesn&apos;t get installed, and the config check from&#160; &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-11914&quot; title=&quot;Build error for l_getsepol.c due to missing openssl/evp.h&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-11914&quot;&gt;&lt;del&gt;LU-11914&lt;/del&gt;&lt;/a&gt; sees this and decides not to build l_getsepol instead of attempting to build it and failing. &lt;/p&gt;

&lt;p&gt;So our situation is we want to build l_getsepol but openssl-devel doesn&apos;t get installed without a BuildRequires, and the only current BuildRequires is for gss which we don&apos;t use, and I&apos;m trying to find a reasonable place to add openssl-devel so that things will work in our build farm. I get that this might just have to be a local patch, but I was wondering if there was a more elegant solution.&lt;/p&gt;</comment>
                            <comment id="390418" author="paf0186" created="Tue, 24 Oct 2023 21:11:00 +0000"  >&lt;p&gt;You know, going back on what I said before, it&apos;s probably fine to just stick it with pkconfig(libselinux), since it&apos;s a widely available package and easy to install.&#160; Definitely shouldn&apos;t have to do a local patch for something this simple.&lt;/p&gt;</comment>
                            <comment id="390421" author="pjones" created="Tue, 24 Oct 2023 21:39:40 +0000"  >&lt;p&gt;S&#233;bastien&lt;/p&gt;

&lt;p&gt;What do you advise here?&lt;/p&gt;

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="390498" author="sebastien" created="Wed, 25 Oct 2023 14:19:06 +0000"  >&lt;p&gt;Today we have this in the .spec file for the &lt;tt&gt;lustre&lt;/tt&gt; (or &lt;tt&gt;lustre-client&lt;/tt&gt;) package:&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;%if %{with gss}
BuildRequires: krb5-devel openssl-devel
%endif
%if &quot;%{_vendor}&quot; == &quot;redhat&quot; || &quot;%{_vendor}&quot; == &quot;fedora&quot; || &quot;%{_vendor}&quot; == &quot;openEuler&quot;
#suse don&apos;t support selinux
BuildRequires: pkgconfig(libselinux)
%endif
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;So we already have a require on libselinux, but indeed a require on openssl-devel only for &quot;with gss&quot;.&lt;/p&gt;

&lt;p&gt;I think it could be too strong to require openssl-devel in all cases.&lt;br/&gt;
So maybe the most suitable fix could be to improve the config check so that we simply do not build &lt;tt&gt;l_getsepol&lt;/tt&gt; if openssl-devel is not available. This binary is not strictly required to be able to run a Lustre client with SELinux enabled, it is only needed if &apos;send_sepol&apos; is explicitly activated (it is off by default).&lt;/p&gt;</comment>
                            <comment id="390534" author="ofaaland" created="Wed, 25 Oct 2023 16:21:27 +0000"  >&lt;p&gt;&amp;gt; So maybe the most suitable fix could be to improve the config check so that we simply do not build l_getsepol if openssl-devel is not available. &lt;/p&gt;

&lt;p&gt;I believe this is what is currently implemented.  But this contradicts the way &quot;mock&quot; (the build tool used by fedora, redhat, and others) work.  It extracts BuildRequires from the spec file and installs the named packages in the build environment, and then performs the build.  This then provides verification that the &lt;b&gt;actual build&lt;/b&gt; requirements and the &lt;b&gt;advertised&lt;/b&gt; build requirements are consistent.&lt;/p&gt;

&lt;p&gt;&amp;gt; This binary is not strictly required to be able to run a Lustre client with SELinux enabled, it is only needed if &apos;send_sepol&apos; is explicitly activated (it is off by default).&lt;/p&gt;

&lt;p&gt;If there is a config flag to enable the builder to separately decide whether or not to build l_getsepol (I&apos;m guessing not)?  If not, then shouldn&apos;t we always require openssm to be consistent with that?&lt;/p&gt;</comment>
                            <comment id="390540" author="sebastien" created="Wed, 25 Oct 2023 16:40:54 +0000"  >&lt;p&gt;Yes, good point Olaf.&lt;/p&gt;

&lt;p&gt;There is currently no config flag to disable l_getsepol build. Would that help with &quot;mock&quot;, if we build l_getsepol by default but give the ability to disable via &lt;tt&gt;--disable-l_getsepol&lt;/tt&gt; or something?&lt;/p&gt;

&lt;p&gt;Otherwise we can add openssl-devel to the &lt;tt&gt;BuildRequires&lt;/tt&gt; as default, if it is not a too strong requirement.&lt;/p&gt;

&lt;p&gt;Thanks!&lt;/p&gt;</comment>
                            <comment id="390804" author="gerrit" created="Fri, 27 Oct 2023 04:57:17 +0000"  >&lt;p&gt;&quot;Gian-Carlo DeFazio &amp;lt;defazio1@llnl.gov&amp;gt;&quot; uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/c/fs/lustre-release/+/52849&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/c/fs/lustre-release/+/52849&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-17226&quot; title=&quot;l_getsepol does not build due to not requiring openssl-devel&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-17226&quot;&gt;LU-17226&lt;/a&gt; build: create config option for l_getsepol&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: deddcb57ab27ba7fb4b961ce0aa51db7f1129612&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="54746">LU-11914</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </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|i03zfr:</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>