[libvirt] [PATCH RFC 6/7] qemu: Spawn qemu under mount namespace

Daniel P. Berrange berrange at redhat.com
Mon Nov 14 16:57:33 UTC 2016


On Mon, Nov 14, 2016 at 05:43:30PM +0100, Michal Privoznik wrote:
> Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
> ---
>  src/qemu/qemu_domain.c  | 233 ++++++++++++++++++++++++++++++++++++++++++++++++
>  src/qemu/qemu_domain.h  |   8 ++
>  src/qemu/qemu_process.c |  13 +++
>  3 files changed, 254 insertions(+)
> 
> diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
> index 8cba755..3a0170c 100644
> --- a/src/qemu/qemu_domain.c
> +++ b/src/qemu/qemu_domain.c
> @@ -55,6 +55,7 @@
>  
>  #include <sys/time.h>
>  #include <fcntl.h>
> +#include <sys/mount.h>
>  
>  #include <libxml/xpathInternals.h>
>  
> @@ -86,6 +87,21 @@ VIR_ENUM_IMPL(qemuDomainAsyncJob, QEMU_ASYNC_JOB_LAST,
>                "start",
>  );
>  
> +#define QEMU_DEV_MAJ_MEMORY  1
> +#define QEMU_DEV_MAJ_TTY     5
> +#define QEMU_DEV_MAJ_KVM     10
> +#define QEMU_DEV_MAJ_PTY     136
> +
> +#define QEMU_DEV_MIN_CONSOLE 1
> +#define QEMU_DEV_MIN_FULL    7
> +#define QEMU_DEV_MIN_FUSE    229
> +#define QEMU_DEV_MIN_KVM     232
> +#define QEMU_DEV_MIN_NULL    3
> +#define QEMU_DEV_MIN_PTMX    2
> +#define QEMU_DEV_MIN_RANDOM  8
> +#define QEMU_DEV_MIN_TTY     0
> +#define QEMU_DEV_MIN_URANDOM 9
> +#define QEMU_DEV_MIN_ZERO    5
>  
>  struct _qemuDomainLogContext {
>      int refs;
> @@ -6658,3 +6674,220 @@ qemuDomainSupportsVideoVga(virDomainVideoDefPtr video,
>  
>      return true;
>  }
> +
> +
> +static int
> +qemuDomainPopulateDevices(virQEMUDriverPtr driver ATTRIBUTE_UNUSED,
> +                          virDomainObjPtr vm ATTRIBUTE_UNUSED,
> +                          const char *path)
> +{
> +    int ret = -1;
> +    virFileDevices devs[] = {
> +        { QEMU_DEV_MAJ_MEMORY, QEMU_DEV_MIN_NULL, 0666, "/null" },
> +        { QEMU_DEV_MAJ_MEMORY, QEMU_DEV_MIN_ZERO, 0666, "/zero" },
> +        { QEMU_DEV_MAJ_MEMORY, QEMU_DEV_MIN_FULL, 0666, "/full" },
> +        { QEMU_DEV_MAJ_KVM,  QEMU_DEV_MIN_KVM, 0660, "/kvm"},
> +        { QEMU_DEV_MAJ_MEMORY, QEMU_DEV_MIN_RANDOM, 0666, "/random" },
> +        { QEMU_DEV_MAJ_MEMORY, QEMU_DEV_MIN_URANDOM, 0666, "/urandom" },
> +        { QEMU_DEV_MAJ_TTY, QEMU_DEV_MIN_TTY, 0666, "/tty" },

BTW, QEMU shouldn't need /dev/tty


Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://entangle-photo.org       -o-    http://search.cpan.org/~danberr/ :|




More information about the libvir-list mailing list