Bug 1305512

Summary: multiple definition of struct fsxattr when building qemu, collision between xfs_fs.h and fs.h
Product: [Fedora] Fedora Reporter: Menanteau Guy <menantea>
Component: xfsprogsAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 24CC: amit.shah, berrange, cfergeau, crobinso, dchinner, dwmw2, esandeen, gansalmon, hannsj_uhl, itamar, jonathan, kernel-maint, madhu.chinakonda, mchehab, pbonzini, pbrobinson, rjones, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: ppc64le   
OS: Linux   
Whiteboard:
Fixed In Version: xfsprogs-4.5.0-1.fc23 xfsprogs-4.5.0-1.fc24 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-03-21 23:53:19 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:
Bug Depends On:    
Bug Blocks: 1071880, 1051573, 1304377, 1308252    

Description Menanteau Guy 2016-02-08 13:09:29 UTC
I tried to build qemu-2.5.0-4 on fedora for release f24 arch ppc64le and I got a redefinition problem of "struct fsxattr"

You can fin the koji scratch build at http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=3121531

Definitions are in /usr/include/linux/fs.h and /usr/include/xfs/xfs_fs.h
comming from kernel-4.5.0-0.rc1.git2.1 and xfsprogs-4.3.0-1

Comment 1 Cole Robinson 2016-02-09 15:52:03 UTC
This kernel commit seems to be the culprit:

commit 334e580a6f97e2e84d1c19a8679603956acaa622
Author: Dave Chinner <dchinner>
Date:   Mon Jan 4 16:44:15 2016 +1100

    fs: XFS_IOC_FS[SG]SETXATTR to FS_IOC_FS[SG]ETXATTR promotion

Moves the fsxattr definition from xfs_fs.h to fs.h, but xfsprogs is still shipping the old header. Not really sure what the fix is, moving to kernel for further triage

Comment 2 Josh Boyer 2016-02-09 17:16:07 UTC
Dave, Eric, is this something xfsprogs needs to cope with?

Comment 3 Eric Sandeen 2016-02-09 17:28:16 UTC
yep, I guess so.

We can probably wrap it in

#ifndef FS_IOC_FSGETXATTR

in userspace, because that's the new ioctl that came after the "hoisting"

As a short term workaround, if you can define HAS_FSXATTR for the qemu build, that should keep the current xfsprogs definition out of it:

#ifndef HAVE_FSXATTR
struct fsxattr {
...

Comment 4 Eric Sandeen 2016-02-09 17:41:52 UTC
Perhaps the kernel should also #define HAVE_FSXATTR to make existing/older xfsprogs headers skip the definition...

I've sent a patch for xfsprogs to guard in the other direction.

Comment 5 Cole Robinson 2016-02-22 15:54:08 UTC
any timeline for a build?

Comment 6 Jan Kurik 2016-02-24 14:26:31 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 24 development cycle.
Changing version to '24'.

More information and reason for this action is here:
https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora24#Rawhide_Rebase

Comment 7 Paolo Bonzini 2016-03-01 12:19:03 UTC
I'm fixing this in QEMU by removing the xfsprogs dependency; on modern kernels fallocate does everything that QEMU used xfsctl for.

Comment 8 Fedora Update System 2016-03-15 18:33:56 UTC
xfsprogs-4.5.0-1.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-bce977a3af

Comment 9 Fedora Update System 2016-03-15 18:34:19 UTC
xfsprogs-4.5.0-1.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-82e630d3da

Comment 10 Fedora Update System 2016-03-15 21:29:38 UTC
xfsprogs-4.5.0-1.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-bce977a3af

Comment 11 Fedora Update System 2016-03-16 15:22:57 UTC
xfsprogs-4.5.0-1.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-82e630d3da

Comment 12 Fedora Update System 2016-03-21 23:53:07 UTC
xfsprogs-4.5.0-1.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

Comment 13 Fedora Update System 2016-03-26 18:06:06 UTC
xfsprogs-4.5.0-1.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.