Summary: | app-emulation/qemu: add qemu-pr-helper startup scripts | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Joakim Tjernlund <joakim.tjernlund> |
Component: | Current packages | Assignee: | Matthias Maier <tamiko> |
Status: | RESOLVED OBSOLETE | ||
Severity: | normal | CC: | jstein, virtualization |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Joakim Tjernlund
2019-12-19 07:38:19 UTC
(In reply to Sergei Trofimovich from comment #1) > https://kashyapc.fedorapeople.org/QEMU-Docs/_build/html/docs/pr-manager.html > looks relevant. Yes, that looks like a good place to start. Maby this is a app-emulation/libvirt issue too? Something needs to start the qemu-pr-helper service but libvirt needs to use it whenever USE=caps is set I think it makes sense to add init.d scripts to qemu ebuild. systemd part is already included as part of source tarball and is trivial to install [1]. I can try to hack up init.d equivalent for it. Or you can try to do it yourself and attach your version of init.d script. [1]: example systemd integration: diff --git a/app-emulation/qemu/qemu-9999.ebuild b/app-emulation/qemu/qemu-9999.ebuild index 0eaa68925a8..ed2da6176c2 100644 --- a/app-emulation/qemu/qemu-9999.ebuild +++ b/app-emulation/qemu/qemu-9999.ebuild @@ -10,8 +10,8 @@ PLOCALES="bg de_DE fr_FR hu it tr zh_CN" FIRMWARE_ABI_VERSION="4.0.0-r50" -inherit eutils linux-info toolchain-funcs multilib python-r1 \ - udev fcaps readme.gentoo-r1 pax-utils l10n xdg-utils +inherit eutils linux-info toolchain-funcs multilib python-r1 +inherit udev fcaps readme.gentoo-r1 pax-utils l10n systemd xdg-utils if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="git://git.qemu.org/qemu.git" @@ -718,6 +718,9 @@ src_install() { dostrip -x ${QA_PREBUILT} if [[ -n ${softmmu_targets} ]]; then + # Install qemu-pr-helper startup scripts + systemd_dounit "${S}"/contrib/systemd/qemu-pr-helper.{service,socket} + # Remove SeaBIOS since we're using the SeaBIOS packaged one rm "${ED}/usr/share/qemu/bios.bin" rm "${ED}/usr/share/qemu/bios-256k.bin" (In reply to Joakim Tjernlund from comment #2) Libvirt supports reservations using <reservations/> subelement, for instance: <disk type='block' device='lun'> <driver name='qemu' type='raw'/> <source dev='/dev/sda'> <reservations managed='no'> <source type='unix' path='/path/to/qemu-pr-helper' mode='client'/> </reservations> <target dev='sda' bus='scsi'/> <address type='drive' controller='0' bus='0' target='3' unit='0'/> </disk> https://libvirt.org/formatdomain.html#elementsDisks It will start the helper process automatically if domain XML requires it. (In reply to Michal Privoznik from comment #4) > (In reply to Joakim Tjernlund from comment #2) > Libvirt supports reservations using <reservations/> subelement, for instance: > > <disk type='block' device='lun'> > <driver name='qemu' type='raw'/> > <source dev='/dev/sda'> > <reservations managed='no'> > <source type='unix' path='/path/to/qemu-pr-helper' mode='client'/> > </reservations> > <target dev='sda' bus='scsi'/> > <address type='drive' controller='0' bus='0' target='3' unit='0'/> > </disk> > > https://libvirt.org/formatdomain.html#elementsDisks > > It will start the helper process automatically if domain XML requires it. Yes, but I am nor sure all needs a re covered by that. I don't have any LUNs but I still saw the that error |