Bug 1486379
| Summary: | binfmt config for ppc64le is incorrect | |||
|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Jason DeTiberus <jdetiber> | |
| Component: | qemu | Assignee: | Fedora Virtualization Maintainers <virt-maint> | |
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | |
| Severity: | unspecified | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | rawhide | CC: | amit, berrange, cfergeau, crobinso, dwmw2, itamar, npmccallum, pbonzini, rjones, virt-maint | |
| Target Milestone: | --- | Keywords: | Reopened | |
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | ||
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 1500526 (view as bug list) | Environment: | ||
| Last Closed: | 2017-10-11 10:18:10 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: | 1500526 | |||
|
Description
Jason DeTiberus
2017-08-29 15:29:36 UTC
npmccallum you added ppc64le binfmt, does this sound correct? As I understand the problem, I failed to change the byte order for the ELF e_machine field when I made all the PPC64 binfmts. If that understanding is correct, then yes, this looks like a valid issue and valid fix to me. Jason, as an aside, there is no reason to mount the qemu binary into the chroot if you are running a recent kernel in the host. The kernel now has the F flag in binfmt for this purpose. https://src.fedoraproject.org/rpms/qemu/c/3b6c813012ab11076e8fb1440dfeae7415db1d98?branch=master I pushed the above fix. It should be available whenever Cole Robinson makes the next Fedora build. Nathaniel, I'm running a backported version of qemu-user-static on RHEL 7, so unfortunately I can't take advantage of the F flag, but thanks for the quick turnaround. This is in qemu-2.10.0-1.fc28 now, f27 build in progress Nathaniel, I'm just getting back around to doing further testing on this, I believe there still needs to be an update to switch the fields for the e_type field as well as the corresponding mask fields. In my previous testing I had swapped the fields for the e_type field, but neglected to also switch the corresponding mask fields, which allowed static binaries to work, but not dynamically linked binaries. The following are the contents of the working /usr/lib/binfmt.d/qemu-ppc64le-static.conf: :qemu-ppc64le:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x15\x00:\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\xff\xff\xff:/usr/bin/qemu-ppc64le-static:F Yup, you're right. Working on a fix now. Cole, I have fixed and pushed this to rawhide. Like before, I have not built it. Please cherry pick this to whatever branches you want (preferably f26 and f27). Thanks, pushed to f26/f27 branches as well |