1. 05 5月, 2015 10 次提交
    • L
      docs: fix a small xml error in docs · d12790eb
      Luyao Huang 提交于
      Signed-off-by: NLuyao Huang <lhuang@redhat.com>
      d12790eb
    • L
      conf: Add the cpu duplicate use check for vm numa settings · 8fedbbdb
      Luyao Huang 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1176020
      
      We had a check for the vcpu count total number in <numa>
      before, however this check is not good enough. There are
      some examples:
      
      1. one of cpu id is out of maxvcpus, can set success(cpu count = 5 < 10):
      
      <vcpu placement='static'>10</vcpu>
      <cell id='0' cpus='0-3,100' memory='512000' unit='KiB'/>
      
      2. use the same cpu in 2 cell, can set success(cpu count = 8 < 10):
      <vcpu placement='static'>10</vcpu>
      <cell id='0' cpus='0-3' memory='512000' unit='KiB'/>
      <cell id='1' cpus='0-3' memory='512000' unit='KiB'/>
      
      3. use the same cpu in 2 cell, cannot set success(cpu count = 11 > 10):
      <vcpu placement='static'>10</vcpu>
      <cell id='0' cpus='0-6' memory='512000' unit='KiB'/>
      <cell id='1' cpus='0-3' memory='512000' unit='KiB'/>
      
      Add a check for numa cpus, check if duplicate use one cpu in more
      than one cell.
      Signed-off-by: NLuyao Huang <lhuang@redhat.com>
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      8fedbbdb
    • M
      qemu: Implement GIC · 608c95c7
      Michal Privoznik 提交于
      The only version that's supported in QEMU is version 2, currently.
      Fortunately, it is enabled by aarch64 automatically, so there's
      nothing for us that needs to be put onto command line.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      608c95c7
    • M
      Introduce GIC feature · 921c52b0
      Michal Privoznik 提交于
      Some platforms, like aarch64, don't have APIC but GIC. So there's
      no reason to have <apic/> feature turned on. However, we are
      still missing <gic/> feature. This commit introduces the feature
      to XML parser and formatter, adds documentation and updates RNG
      schema.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      921c52b0
    • J
      qemu: Properly rename persistent def after migration · fc3601a3
      Jiri Denemark 提交于
      When migrating a domain while changing its name and using
      VIR_MIGRATE_PERSIST_DEST flag, libvirt would fail to properly change the
      name in the persistent definition. The inconsistency results in weird
      behavior when dumping domain XML, destroying the domain, restarting
      libvirtd and likely in several other situations.
      
      Since the new name is already stored in vm->def->name, we just need to
      make sure the persistent definition uses this new name too.
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1076354Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
      fc3601a3
    • C
      polkit: Allow password-less access for 'libvirt' group · e94979e9
      Cole Robinson 提交于
      Many users, who admin their own machines, want to be able to access
      system libvirtd via tools like virt-manager without having to enter
      a root password. Just google 'virt-manager without password' and
      you'll find many hits. I've read at least 5 blog posts over the years
      describing slightly different ways of achieving this goal.
      
      Let's finally add official support for this.
      
      Install a polkit-1 rules file granting password-less auth for any user
      in the new 'libvirt' group. Create the group on RPM install
      
      https://bugzilla.redhat.com/show_bug.cgi?id=957300
      e94979e9
    • C
      storage: fs: Don't try to chown directory unless user requested · 28c547ed
      Cole Robinson 提交于
      Currently we try to chown any directory passed to virDirCreate,
      even if the user didn't request any explicit owner/group via the
      pool/vol XML.
      
      This causes issues with qemu:///session: try to build a pool of
      a root owned directory like /tmp, and it fails trying to chown the
      directory to the session user. Instead it should just leave things
      as they are, unless the user requests changing permissions via
      the pool XML.
      
      Similarly this is annoying if creating a storage pool via system
      libvirtd of an existing directory in user $HOME, it's now owned
      by root.
      
      The virDirCreate function is pretty convoluted, since it needs to
      fork off in certain specific cases. Try to document that, to make
      it clear where exactly we are changing behavior.
      28c547ed
    • C
      storage: fs: Don't attempt directory creation if it already exists · 262b3c05
      Cole Robinson 提交于
      The current code attempts to handle this, but it only catches mkdir
      failing with EEXIST. However if say trying to build /tmp for an
      unprivileged qemu:///session, mkdir will fail with EPERM.
      
      Rather than catch any errors, just don't attempt mkdir if the directory
      already exists.
      262b3c05
    • C
      storage: fs: Fill in permissions on pool refresh · d6f8b35d
      Cole Robinson 提交于
      This means pool XML actually reports accurate user/group/mode/label.
      
      This uses UpdateVolTargetInfoFD in a bit of a hackish way, but it works
      d6f8b35d
    • C
      storage: fs: Don't overwrite virDirCreate error · 27a4c492
      Cole Robinson 提交于
      virDirCreate will give us fine grained details about what actually failed.
      27a4c492
  2. 04 5月, 2015 20 次提交
  3. 01 5月, 2015 2 次提交
  4. 30 4月, 2015 6 次提交
  5. 29 4月, 2015 2 次提交
    • C
      domain: conf: Drop unused OSTYPE_AIX · 066f7c7c
      Cole Robinson 提交于
      The phyp driver stuffed it into a DomainDefPtr during its attachdevice
      routine, but the value is never advertised via capabilities so it should
      be safe to drop.
      
      Have the phyp driver use OSTYPE_LINUX, which is what it advertises via
      capabilities.
      066f7c7c
    • M
      qemu: migration: use sync block job helpers · 99725f94
      Michael Chapman 提交于
      In qemuMigrationDriveMirror we can start all disk mirrors in parallel.
      We wait until they are all ready, or one of them aborts.
      
      In qemuMigrationCancelDriveMirror, we wait until all mirrors are
      properly stopped. This is necessary to ensure that destination VM is
      fully in sync with the (paused) source VM.
      
      If a drive mirror can not be cancelled, then the destination is not in a
      consistent state. In this case it is not safe to continue with the
      migration.
      Signed-off-by: NMichael Chapman <mike@very.puzzling.org>
      99725f94