Re: unrealize mechanism in 9pfs
Hi Hugo,
sorry for the delay.
On Tue, Dec 20, 2016 at 10:49:31AM +0100, Hugo Lefeuvre wrote:
> Hi,
>
> > Could you paste the commands / libvirt configs you used to test this?
>
> for handle:
> qemu -hda debian_wheezy_amd64_standard.qcow2 -fsdev handle,id=ninepfstest,path=/home/user/ -device virtio-9p-pci,fsdev=ninepfstest,mount_tag=ninepfstest
>
> for proxy:
> qemu -hda debian_wheezy_amd64_standard.qcow2 -fsdev proxy,id=ninepfstest,path=/home/user/,sock_fd=1 -device virtio-9p-pci,fsdev=ninepfstest,mount_tag=ninepfstest
>
> I've tested with several sock_fd values. For qemu-kvm, I've just
> replaced 'qemu' by 'kvm'.
>
> You can find the 'debian_wheezy_amd64_standard.qcow2' image here[0].
>
> The libvirt config files are the default ones. I used the official
> wheezy livecd[1] as test system. A tarred copy of the /etc/libvirt
> directory is in attachment.
With
# qemu-system-x86_64 -drive file=foo.img -fsdev handle,id=fsid,path=/home/agx/tmp -device virtio-9p-pci,id=devid,fsdev=fsid,mount_tag=mt
I get
fsdev: fsdriver handle not found
which is exactly what you had. And this is caused by the missing
declaration of open_by_handle_at in Wheezy's glibc. The function was
introduced in glibc 2.14. And therefore this fails to compile (from
QEMU's configure):
#include <fcntl.h>
#if !defined(AT_EMPTY_PATH)
# error missing definition
#else
int main(void) { struct file_handle fh; return open_by_handle_at(0, &fh, 0); }
#endif
and so the handle backend gets disabled. So I think it's safe to mark
this as no-dsa in Wheezy (the code is in the source tree but not
compiled in by default).
I've started
https://anonscm.debian.org/viewvc/secure-testing/data/wheezy-no-dsa.txt
So we have such things at glance for larger packages (Xen, Firefox, Icedove,
etc come to mind as well).
Cheers,
-- Guido
Reply to: