Btrfs commands don't work when using user-space emulation of other architectures

Bug #1893667 reported by Neal Gompa
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Unassigned
qemu (Fedora)
Unknown
Unknown

Bug Description

Description of problem:
When doing cross-arch builds with mock, it uses qemu-user-static under the hood, and qemu-user-static lacks support for Btrfs ioctls to emulate so that btrfs(8) commands work correctly.

This is especially important for being able to do cross-arch image builds.

How reproducible:
Always (on Fedora 33 with qemu-5.1.0-2.fc33)

Steps to Reproduce:

$ sudo dnf install mock qemu-user-static wget
$ sudo usermod -a -G mock $USER
$ newgrp mock
$ mock --root fedora-rawhide-armhfp --install btrfs-progs util-linux
$ mock --root fedora-rawhide-armhfp --chroot 'rm -f foo.img && dd if=/dev/zero of=foo.img bs=1G count=1 && losetup /dev/loop9 foo.img && mkfs.btrfs /dev/loop9 && mkdir /foo && mount /dev/loop9 /foo && btrfs subvol create /foo/subvol && umount /foo && losetup -d /dev/loop9'

Actual results:
Fails with errors like "ERROR: cannot create subvolume: Function not implemented"

Expected results:
Succeeds and creates subvolumes properly.

Additional info:
There is a patch series from a few days ago to add support for many btrfs ioctls which could fix this...

https://lists.gnu.org/archive/html/qemu-devel/2020-08/msg05594.html

Tags: linux-user
Changed in qemu:
status: New → In Progress
tags: added: linux-user
Revision history for this message
John Snow (jnsnow) wrote :

Laurent, I am assuming that the commits here:
https://gitlab.com/qemu-project/qemu/-/commits/master?utf8=%E2%9C%93&search=Filip+Bozuta

are sufficient to mark this issue as Fix Committed. It looks like the Downstream bug tracker for Fedora has marked the related bug as CLOSED ERRATA already.

If I'm wrong, please reopen.

Changed in qemu:
status: In Progress → Fix Committed
status: Fix Committed → In Progress
status: In Progress → Fix Committed
Revision history for this message
Thomas Huth (th-huth) wrote :

Released with QEMU v5.2.0.

Changed in qemu:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.