Bug 2126522

Summary: glibc: error: redefinition of 'fsconfig_command' on s390x
Product: [Fedora] Fedora Reporter: Omair Majid <omajid>
Component: glibcAssignee: Florian Weimer <fweimer>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 37CC: aoliva, arjun, codonell, dj, fweimer, law, mcermak, mcoufal, mfabian, pfrankli, rth, sipoyare, skolosov
Target Milestone: ---   
Target Release: ---   
Hardware: s390x   
OS: Unspecified   
Whiteboard:
Fixed In Version: glibc-2.36-4.fc37 glibc-2.36.9000-2.fc38 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-09-20 12:55:44 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Omair Majid 2022-09-13 17:46:20 UTC
Building .NET 6 on Fedora 37 on s390x fails with errors like this:

      In file included from /builddir/build/BUILD/dotnet-v6.0.108/src/runtime/artifacts/source-build/self/src/src/mono/mono/metadata/w32file-unix.c:31:
      In file included from /usr/include/linux/fs.h:19:
      /usr/include/linux/mount.h:95:6: error: redefinition of 'fsconfig_command'
      enum fsconfig_command {
           ^
      /usr/include/sys/mount.h:189:6: note: previous definition is here
      enum fsconfig_command
           ^
      In file included from /builddir/build/BUILD/dotnet-v6.0.108/src/runtime/artifacts/source-build/self/src/src/mono/mono/metadata/w32file-unix.c:31:
      In file included from /usr/include/linux/fs.h:19:
      /usr/include/linux/mount.h:96:2: error: redefinition of enumerator 'FSCONFIG_SET_FLAG'
              FSCONFIG_SET_FLAG       = 0,    /* Set parameter, supplying no value */
              ^
      /usr/include/sys/mount.h:192:27: note: expanded from macro 'FSCONFIG_SET_FLAG'
      #define FSCONFIG_SET_FLAG FSCONFIG_SET_FLAG
                                ^
      /usr/include/sys/mount.h:191:3: note: previous definition is here
        FSCONFIG_SET_FLAG       = 0,    /* Set parameter, supplying no value */
        ^
      In file included from /builddir/build/BUILD/dotnet-v6.0.108/src/runtime/artifacts/source-build/self/src/src/mono/mono/metadata/w32file-unix.c:31:
      In file included from /usr/include/linux/fs.h:19:
      /usr/include/linux/mount.h:97:2: error: redefinition of enumerator 'FSCONFIG_SET_STRING'
              FSCONFIG_SET_STRING     = 1,    /* Set parameter, supplying a string value */
              ^
      /usr/include/sys/mount.h:194:29: note: expanded from macro 'FSCONFIG_SET_STRING'
      #define FSCONFIG_SET_STRING FSCONFIG_SET_STRING
                                  ^
      /usr/include/sys/mount.h:193:3: note: previous definition is here
        FSCONFIG_SET_STRING     = 1,    /* Set parameter, supplying a string value */
        ^

Here's a build that runs into this error: https://koji.fedoraproject.org/koji/taskinfo?taskID=91974601

This error doesn't appear on x86_64 or aarch64. This was affecting rawhide too at some point, but rawhide seems to be fixed now. I don't run into this error on Fedora 35 or 36. 

Version-Release number of selected component (if applicable):
kernel-headers-5.19.4-300.fc37.s390x
glibc-devel-2.36-1.fc37.s390x                                                 
glibc-headers-s390-2.36-1.fc37.noarch 

How reproducible:


Steps to Reproduce:
1. fedpkg clone -a dotnet6.0
2. cd dotnet6.0
3. fedpkg scratch-build --target f37-candidate --srpm

Actual results:
Build fails. 

Expected results:
Build works.

Additional info:

Comment 1 Florian Weimer 2022-09-13 17:54:55 UTC
This is already fixed on the glibc 2.36 upstream release branch. We were blocked syncing to that by the Fedora 37 Beta freeze, but this is now over. I'm hoping for a test suite fix to land upstream soonish, but I'll do a new glibc build tomorrow either way.

Comment 2 Fedora Update System 2022-09-14 10:55:53 UTC
FEDORA-2022-e56ad56579 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2022-e56ad56579

Comment 3 Florian Weimer 2022-09-14 13:07:25 UTC
I took your SRPM and built in a f37 side tag. The s390x build passed: https://koji.fedoraproject.org/koji/taskinfo?taskID=92003245

You can tag glibc-2.36-4.fc37 into a side tag or use a build override if you urgently need to rebuild .NET 6. Sorry for the inconvenience.

Comment 4 Omair Majid 2022-09-14 21:54:05 UTC
Thanks for the quick fix!

Comment 5 Fedora Update System 2022-09-15 01:48:41 UTC
FEDORA-2022-e56ad56579 has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-e56ad56579`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-e56ad56579

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2022-09-19 00:18:54 UTC
FEDORA-2022-e56ad56579 has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.