<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:47:49 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-5018] e2fsprogs build failed</title>
                <link>https://jira.whamcloud.com/browse/LU-5018</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Looks e2fsprogs failed to build for a long time:&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;	CC unix.c
In file included from /&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/lustre/include/lustre/lustre_user.h:51,
                 from /&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/lustre/include/lustre/lustreapi.h:46,
                 from ../lib/ext2fs/lfsck.h:10,
                 from unix.c:60:
/&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/libcfs/include/libcfs/posix/posix-types.h:60: error: redefinition of typedef &lt;span class=&quot;code-quote&quot;&gt;&apos;__s8&apos;&lt;/span&gt;
../lib/ext2fs/ext2_types.h:26: note: previous declaration of &lt;span class=&quot;code-quote&quot;&gt;&apos;__s8&apos;&lt;/span&gt; was here
/&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/libcfs/include/libcfs/posix/posix-types.h:63: error: redefinition of typedef &lt;span class=&quot;code-quote&quot;&gt;&apos;__u8&apos;&lt;/span&gt;
../lib/ext2fs/ext2_types.h:20: note: previous declaration of &lt;span class=&quot;code-quote&quot;&gt;&apos;__u8&apos;&lt;/span&gt; was here
/&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/libcfs/include/libcfs/posix/posix-types.h:67: error: redefinition of typedef &lt;span class=&quot;code-quote&quot;&gt;&apos;__s16&apos;&lt;/span&gt;
../lib/ext2fs/ext2_types.h:46: note: previous declaration of &lt;span class=&quot;code-quote&quot;&gt;&apos;__s16&apos;&lt;/span&gt; was here
/&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/libcfs/include/libcfs/posix/posix-types.h:70: error: redefinition of typedef &lt;span class=&quot;code-quote&quot;&gt;&apos;__u16&apos;&lt;/span&gt;
../lib/ext2fs/ext2_types.h:32: note: previous declaration of &lt;span class=&quot;code-quote&quot;&gt;&apos;__u16&apos;&lt;/span&gt; was here
/&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/libcfs/include/libcfs/posix/posix-types.h:74: error: redefinition of typedef &lt;span class=&quot;code-quote&quot;&gt;&apos;__s32&apos;&lt;/span&gt;
../lib/ext2fs/ext2_types.h:79: note: previous declaration of &lt;span class=&quot;code-quote&quot;&gt;&apos;__s32&apos;&lt;/span&gt; was here
/&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/libcfs/include/libcfs/posix/posix-types.h:77: error: redefinition of typedef &lt;span class=&quot;code-quote&quot;&gt;&apos;__u32&apos;&lt;/span&gt;
../lib/ext2fs/ext2_types.h:61: note: previous declaration of &lt;span class=&quot;code-quote&quot;&gt;&apos;__u32&apos;&lt;/span&gt; was here
/&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/libcfs/include/libcfs/posix/posix-types.h:93: error: redefinition of typedef &lt;span class=&quot;code-quote&quot;&gt;&apos;__s64&apos;&lt;/span&gt;
../lib/ext2fs/ext2_types.h:113: note: previous declaration of &lt;span class=&quot;code-quote&quot;&gt;&apos;__s64&apos;&lt;/span&gt; was here
/&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt;/lib/jenkins/workspace/e2fsprogs-master/arch/x86_64/distro/el6/../usr/src/lustre-2.5.57/libcfs/include/libcfs/posix/posix-types.h:96: error: redefinition of typedef &lt;span class=&quot;code-quote&quot;&gt;&apos;__u64&apos;&lt;/span&gt;
../lib/ext2fs/ext2_types.h:97: note: previous declaration of &lt;span class=&quot;code-quote&quot;&gt;&apos;__u64&apos;&lt;/span&gt; was here
	CC e2fsck.c
make[3]: *** [unix.o] Error 1
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Seems those macros defined in lustre posix-types.h are conflicting with ext2_types.h&lt;/p&gt;

&lt;p&gt;e2fsprogs include lustre posix-types.h in following path:&lt;br/&gt;
unix.c -&amp;gt; lfsck.h -&amp;gt; lustreapi.h -&amp;gt; lustre_user.h -&amp;gt; posix-types.h&lt;/p&gt;</description>
                <environment></environment>
        <key id="24596">LU-5018</key>
            <summary>e2fsprogs build failed</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="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="adilger">Andreas Dilger</assignee>
                                    <reporter username="niu">Niu Yawei</reporter>
                        <labels>
                    </labels>
                <created>Wed, 7 May 2014 02:20:00 +0000</created>
                <updated>Tue, 4 Nov 2014 04:03:07 +0000</updated>
                            <resolved>Fri, 23 May 2014 19:03:48 +0000</resolved>
                                    <version>Lustre 2.6.0</version>
                                    <fixVersion>Lustre 2.6.0</fixVersion>
                    <fixVersion>Lustre 2.5.4</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>5</watches>
                                                                            <comments>
                            <comment id="83377" author="niu" created="Wed, 7 May 2014 03:03:18 +0000"  >&lt;p&gt;Probably we need to check if e2fsprogs header already been included? Something like:&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;#ifndef __U8_TYPEDEF  &lt;span class=&quot;code-comment&quot;&gt;/* already defined in e2fsprogs header */&lt;/span&gt;

#ifndef HAVE___S8
typedef __signed__ &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt; __s8;
#endif
#ifndef HAVE___U8
typedef unsigned
...
#endif
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="83417" author="jhammond" created="Wed, 7 May 2014 17:35:41 +0000"  >&lt;p&gt;Niu, can you post the exact version of the lustre source being used here? I see that it says 2.5.57 above, but IIRC if I checkout 2.5.58-79-ge345778, make rpms, and install the source then it goes in /usr/src/lustre-2.5.58/.&lt;/p&gt;</comment>
                            <comment id="83421" author="jhammond" created="Wed, 7 May 2014 17:54:35 +0000"  >&lt;p&gt;The last successful build of e2fsprogs was on the same day that 001b8dbfacb747f1649a2eb047a5f118ce32fdc7 landed.&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;# git log -p libcfs/include/libcfs/posix/posix-types.h
commit 001b8dbfacb747f1649a2eb047a5f118ce32fdc7
Author: Alexey Lyashkov &amp;lt;alexey_lyashkov@xyratex.com&amp;gt;
Date:   Mon Sep 30 13:38:10 2013 +0300

    LU-3963 cleanup: C89 and build cleanups
    
    use C99 initialization for a types, remove some platform depended code
    and use POSIX compatible instead.
    don&apos;t build a lhsmtool is none utils allowed.
    
    Signed-off-by: Alexey Lyashkov &amp;lt;alexey_lyashkov@xyratex.com&amp;gt;
    Change-Id: I6e2837953902520240e9ceb251c92329d328d715
    Reviewed-on: http://review.whamcloud.com/7803
    Tested-by: Jenkins
    Tested-by: Maloo &amp;lt;hpdd-maloo@intel.com&amp;gt;
    Reviewed-by: Bob Glossman &amp;lt;bob.glossman@intel.com&amp;gt;
    Reviewed-by: Oleg Drokin &amp;lt;oleg.drokin@intel.com&amp;gt;

diff --git a/libcfs/include/libcfs/posix/posix-types.h b/libcfs/include/libcfs/posix/posix-types.h
index 446db6e..510b178 100644
--- a/libcfs/include/libcfs/posix/posix-types.h
+++ b/libcfs/include/libcfs/posix/posix-types.h
@@ -42,7 +42,9 @@
 #ifndef _LUSTRE_POSIX_TYPES_H
 #define _LUSTRE_POSIX_TYPES_H
 
-#include &amp;lt;asm/types.h&amp;gt;
+#ifdef HAVE_LINUX_TYPES_H
+# include &amp;lt;linux/types.h&amp;gt;
+#endif
 #include &amp;lt;stdbool.h&amp;gt; /* for bool */
 #ifndef HAVE_UMODE_T
 typedef unsigned short umode_t;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;posix-types.h is an packaged header. Its contents must not depend on config.h.&lt;/p&gt;</comment>
                            <comment id="83453" author="adilger" created="Wed, 7 May 2014 21:49:45 +0000"  >&lt;p&gt;Returning the unconditional &lt;tt&gt;&amp;lt;asm/types.h&amp;gt;&lt;/tt&gt; header instead of the conditional &lt;tt&gt;&amp;lt;linux/types.h&amp;gt;&lt;/tt&gt; fixes the problem.  However, I can&apos;t see what in the include chain in &lt;tt&gt;&amp;lt;asm/types.h&amp;gt; -&amp;gt; &amp;lt;asm-generic/types.h&amp;gt; -&amp;gt; &amp;lt;asm-generic/int-ll64.h&amp;gt;&lt;/tt&gt; is actually fixing the problem.  The &lt;tt&gt;&amp;lt;libcfs/posix/posix-types.h&amp;gt;&lt;/tt&gt; header defines the fixed-width types as:&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;#ifndef HAVE___S8
typedef __signed__ &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt; __s8;
#endif
#ifndef HAVE___U8
typedef unsigned &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt; __u8;
#endif
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;while in &amp;lt;asm/types.h&amp;gt; (at least on my system, in both &lt;tt&gt;/usr/include/asm/types.h&lt;/tt&gt; and &lt;tt&gt;linux/include/asm/types.h&lt;/tt&gt;) it defines the types without any checking:&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;#ifndef __ASSEMBLY__
/*
 * __xx is ok: it doesn&apos;t pollute the POSIX namespace. Use these in the
 * header files exported to user space
 */

typedef __signed__ &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt; __s8;
typedef unsigned &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt; __u8;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;There was some attempt to avoid such conflicts in &lt;tt&gt;lib/ext2fs/ext2_types.h&lt;/tt&gt; using:&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;#&lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (!defined(_LINUX_TYPES_H) &amp;amp;&amp;amp; !defined(_BLKID_TYPES_H) &amp;amp;&amp;amp; \
        !defined(_EXT2_TYPES_H))

#define __S8_TYPEDEF __signed__ &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt;
#define __U8_TYPEDEF unsigned &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt;
#define __S16_TYPEDEF __signed__ &lt;span class=&quot;code-object&quot;&gt;short&lt;/span&gt;
#define __U16_TYPEDEF unsigned &lt;span class=&quot;code-object&quot;&gt;short&lt;/span&gt;
#define __S32_TYPEDEF __signed__ &lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt;
#define __U32_TYPEDEF unsigned &lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt;
#define __S64_TYPEDEF __signed__ &lt;span class=&quot;code-object&quot;&gt;long&lt;/span&gt; &lt;span class=&quot;code-object&quot;&gt;long&lt;/span&gt;
#define __U64_TYPEDEF unsigned &lt;span class=&quot;code-object&quot;&gt;long&lt;/span&gt; &lt;span class=&quot;code-object&quot;&gt;long&lt;/span&gt;

#ifdef __U8_TYPEDEF
typedef __U8_TYPEDEF __u8;
#&lt;span class=&quot;code-keyword&quot;&gt;else&lt;/span&gt;
typedef unsigned &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt; __u8;
#endif

#ifdef __S8_TYPEDEF
typedef __S8_TYPEDEF __s8;
#&lt;span class=&quot;code-keyword&quot;&gt;else&lt;/span&gt;
typedef signed &lt;span class=&quot;code-object&quot;&gt;char&lt;/span&gt; __s8;
#endif
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;but this fails due to _LINUX_TYPES_H not being #defined.  However, I don&apos;t see how that is avoided when &lt;tt&gt;&amp;lt;asm/types.h&amp;gt;&lt;/tt&gt; is included.  Sadly, the types are defined exactly the same way and it would be nice if GCC didn&apos;t complain in that case.&lt;/p&gt;</comment>
                            <comment id="83460" author="adilger" created="Wed, 7 May 2014 22:04:28 +0000"  >&lt;p&gt;The patch &lt;a href=&quot;http://review.whamcloud.com/10258&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/10258&lt;/a&gt; should resolve the breakage of the e2fsprogs build induced by &lt;a href=&quot;http://review.whamcloud.com/7803&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/7803&lt;/a&gt; changing the include of &amp;lt;asm/types.h&amp;gt; to a conditional include of &amp;lt;linux/types.h&amp;gt; that depended on the HAVE_LINUX_TYPES_H configure macro that was not normally defined for userspace headers.&lt;/p&gt;</comment>
                            <comment id="83562" author="jhammond" created="Thu, 8 May 2014 19:46:43 +0000"  >&lt;p&gt;This would also be addressed by &lt;a href=&quot;http://review.whamcloud.com/10273&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/10273&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="84056" author="adilger" created="Tue, 13 May 2014 22:17:23 +0000"  >&lt;p&gt;&lt;a href=&quot;http://review.whamcloud.com/10319&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/10319&lt;/a&gt; should fix the problem on the e2fsprogs side while the Lustre patch is waiting to land&lt;/p&gt;</comment>
                            <comment id="84806" author="jlevi" created="Fri, 23 May 2014 19:03:49 +0000"  >&lt;p&gt;Patches landed to Master. Please reopen ticket if more work is needed.&lt;/p&gt;</comment>
                            <comment id="95085" author="adilger" created="Fri, 26 Sep 2014 21:04:06 +0000"  >&lt;p&gt;Patch for b2_5: &lt;a href=&quot;http://review.whamcloud.com/11840&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/11840&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10120">
                    <name>Blocker</name>
                                            <outwardlinks description="is blocking">
                                        <issuelink>
            <issuekey id="22781">LU-4504</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="20979">LU-3963</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="26056">LU-5501</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|hzwlz3:</customfieldvalue>

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