Bug 1394878

Summary: binfmts are too strict
Product: [Fedora] Fedora Reporter: Nathaniel McCallum <npmccallum>
Component: qemuAssignee: Fedora Virtualization Maintainers <virt-maint>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: amit.shah, berrange, cfergeau, dwmw2, itamar, pbonzini, rjones, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-15 22:42:26 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 Nathaniel McCallum 2016-11-14 15:57:36 UTC
Specifically, e_ident[EI_OSABI]. The current binfmt config for most architectures requires e_ident[EI_OSABI] to be 0x00 (System V), but it is also common to have 0x03 (Linux) (and possibly others).

I ran into this problem executing a container with qemu-ppc64-static. In this case, the container (the official Fedora 24 ppc64 cloud image) contained binaries with multiple stated ABIs. The qemu-ppc64-static binary supports both ABIs (I tested).

I suspect the best solution is to simply mask out this byte since other ABIs might be supported as well. It appears all the mips related binfmts already do this. However, all the binfmts except for mips* have this problem.

Comment 1 Nathaniel McCallum 2016-11-15 22:42:26 UTC
Fixed in qemu-2.7.0-9.fc26.