1. 24 6月, 2019 2 次提交
  2. 11 5月, 2017 4 次提交
    • C
      Prep for release 1.3.3.3 · cad11c98
      Cole Robinson 提交于
      cad11c98
    • A
      virtlogd: Don't stop or restart along with libvirtd · 89b75be2
      Andrea Bolognani 提交于
      Commit 839a0608 tied the lifecycle of virtlogd more
      closely to that of libvirtd. Unfortunately, while starting
      virtlogd when libvirtd is started is definitely a good idea,
      restarting virtlogd or shutting it down at any time outside
      of system poweroff is not.
      
      Revert part of that commit by removing the PartOf= lines,
      meaning that only startup requests will be propagated from
      libvirtd to virtlogd.
      
      Resolves: https://bugzilla.redhat.com/1372576
      (cherry picked from commit f496ce1d)
      89b75be2
    • A
      virtlogd.socket: Tie lifecycle to libvirtd.service · 322b7037
      Andrea Bolognani 提交于
      We already guarantee that virtlogd.socket is enabled/disabled
      along with libvirtd.service, but if libvirtd.service has just
      been installed and is started before rebooting, then
      virtlogd.socket will not be running and guest startup will
      fail.
      
      Add Requires=virtlogd.socket to libvirtd.service to make sure
      virtlogd.socket is always started along with libvirtd.service,
      and add Before=libvirtd.service to both virtlogd.socket and
      virtlogd.service so that virtlogd never disappears before
      libvirtd has exited.
      
      Also add PartOf=libvirtd.service to both virtlogd.socket and
      virtlogd.service, so that virtlogd can be shut down when not
      needed.
      
      Resolves: https://bugzilla.redhat.com/1372576
      (cherry picked from commit 839a0608)
      322b7037
    • M
      schema: Don't validate paths · c7d6d5a6
      Michal Privoznik 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1353296
      
      On UNIX like systems there are no constraints on what characters
      can be in file/dir names (except for NULL, obviously). Moreover,
      some values that we think of as paths (e.g. disk source) are not
      necessarily paths at all. For instance, some hypervisors take
      that as an arbitrary identifier and corresponding file is then
      looked up by hypervisor in its table. Instead of trying to fix
      our regular expressions (and forgetting to include yet another
      character there), lets drop the validation completely.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit c4b92f1a)
      c7d6d5a6
  3. 04 10月, 2016 4 次提交
    • P
      maint: fix syntax-check sc_prohibit_int_ijk exclude rule · 8123b6bc
      Pavel Hrdina 提交于
      Fix the regex for excluding files for this syntax-rule.  The rule "include/"
      will not work, because we are matching the whole line like this
      "^(...|include/|...)$ so we need to use "include/libvirt/libvirt.+".  The second
      issue is that we are using only one '$' but there should be two of those at the
      end.  The last small adjustment is to escape dots '.' so it match only dot.
      Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
      (cherry picked from commit a94efa50)
      8123b6bc
    • M
      util: bitmap: clarify virBitmapLastSetBit() behavior for empty bitmaps · 8f2b4e3a
      Marc Hartmayer 提交于
      Before the variable 'bits' was initialized with 0 (commit
      3470cd86), the following bug was
      possible.
      
      A function call with an empty bitmap leads to undefined
      behavior. Because if 'bitmap->map_len == 0' 'unusedBits' will be <= 0
      and 'sz == 1'. So the non global and non static variable 'bits' would
      have never been set. Consequently the check 'bits == 0' results in
      undefined behavior.
      
      This patch clarifies the current version of the function by handling the
      empty bitmap explicitly. Also, for an empty bitmap there is obviously no
      bit set so we can just return -1 (indicating no bit set) right away. The
      explicit check for 'bits == 0' after the loop is unnecessary because we
      only get to this point if no set bit was found.
      Reviewed-by: NBoris Fiuczynski <fiuczy@linux.vnet.ibm.com>
      Reviewed-by: NSascha Silbe <silbe@linux.vnet.ibm.com>
      Reviewed-by: NBjoern Walk <bwalk@linux.vnet.ibm.com>
      Signed-off-by: NMarc Hartmayer <mhartmay@linux.vnet.ibm.com>
      (cherry picked from commit 7cd01a24)
      8f2b4e3a
    • M
      Fix building with -Og · 942b6abe
      Martin Kletzander 提交于
      When building using -Og, gcc sees that some variables can be used
      uninitialized  It can be debatable whether it is possible with our
      codeflow, but functions should be self-contained and initializations are
      always good.  The return instead of goto is due to actualType being used
      in the cleanup.
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      (cherry picked from commit 3470cd86)
      942b6abe
    • M
      qemu: Only use memory-backend-file with NUMA if needed · 7fdce1e4
      Martin Kletzander 提交于
      If this reminds you of a commit message from around a year ago, it's
      41c2aa72 and yes, we're dealing with
      "the same thing" again.  Or f309db1f and
      it's similar.
      
      There is a logic in place that if there is no real need for
      memory-backend-file, qemuBuildMemoryBackendStr() returns 0.  However
      that wasn't the case with hugepage backing.  The reason for that was
      that we abused the 'pagesize' variable for storing that information, but
      we should rather have a separate one that specifies whether we really
      need the new object for hugepage backing.  And that variable should be
      set only if this particular NUMA cell needs special treatment WRT
      hugepages.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1372153Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      (cherry picked from commit 4372a7845acbc6974f6027ef68e7dd3eeb47f425)
      7fdce1e4
  4. 19 7月, 2016 3 次提交
  5. 14 7月, 2016 1 次提交
  6. 30 6月, 2016 3 次提交
  7. 28 6月, 2016 1 次提交
    • M
      virCgroupValidateMachineGroup: Reflect change in CGroup struct naming · 7e20f44d
      Michal Privoznik 提交于
      Fron c3bd0019 on instead of creating the following path for
      cgroups:
      
        /sys/fs/cgroupX/$name.libvirt-$driver
      
      we generate rather more verbose one:
      
        /sys/fs/cgroupX/$driver-$id-$name.libvirt-$driver
      
      where $name is optional and included iff contains allowed chars.
      See original commit for more reasoning. Now, problem with the
      original commit is that we are unable to start any LXC domain
      after it. Because when starting LXC container, the CGroup layout
      is created by our lxc_controller process and then detected and
      validated by libvirtd. The validation is done by trying to match
      detected layout against all the possible patterns for cgroup
      paths that we've ever had. And the commit in question forgot to
      update this part of the code.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit fb377701)
      7e20f44d
  8. 24 6月, 2016 15 次提交
  9. 16 5月, 2016 7 次提交
    • J
      xlconfigtests: use qemu-xen in all test data files · 2d302d79
      Jim Fehlig 提交于
      Some of the test configuration files in tests/xlconfigdata
      use the old qemu-dm as the emulator. Many of the configuration
      features tested (spice, rbd, multi-usb) are not even usable with
      the old qemu. Change these files to use the new qemu-xen (also
      known as qemu upstream) emulator.
      
      Note: This change fixes xlconfigtest failures when the old
      qemu is actually installed on the system. During device post
      parse, the libxl driver attempts to invoke the emulator to
      determine if it is the old or new qemu so it can properly set
      video RAM defaults. With the old qemu installed, the default
      video RAM was set differently than the expected value.
      Changing all the test data files to use qemu-xen ensures
      predictable results wrt default video RAM size.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      (cherry picked from commit b90c4b5f)
      2d302d79
    • J
      libxl: don't attempt to probe a non-existent emulator · 50b9de5b
      Jim Fehlig 提交于
      When probing the <emulator> with '-help' to determine if
      it is the old qemu, errors are reported if the emulator
      doesn't exist
      
      libvirt:  error : internal error: Child process
      (/usr/lib/xen/bin/qemu-dm -help) unexpected exit status 127:
      libvirt:  error : cannot execute binary /usr/lib/xen/bin/qemu-dm:
      No such file or directory
      
      Avoid the probe if the specified emulator doesn't exist,
      squelching the error. There is no behavior change since
      libxlDomainGetEmulatorType() would return
      LIBXL_DEVICE_MODEL_VERSION_QEMU_XEN if the probe failed
      via virCommandRun().
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      (cherry picked from commit 400e716d)
      50b9de5b
    • J
      Fix tests to include video ram size · a086fa28
      Ján Tomko 提交于
      My commit 3e428670 started filling out the video size in post-parse,
      but did not adjust the tests.
      
      (cherry picked from commit 96b21fb0)
      a086fa28
    • J
      Fill out default vram in DeviceDefPostParse · 4dbcc6fb
      Ján Tomko 提交于
      Move filling out the default video (v)ram to DeviceDefPostParse.
      
      This means it can be removed from virDomainVideoDefParseXML
      and qemuParseCommandLine. Also, we no longer need to special case
      VIR_DOMAIN_VIRT_XEN, since the per-driver callback gets called
      before the generic one.
      
      (cherry picked from commit 538012c8)
      4dbcc6fb
    • J
      Call per-device post-parse callback even on implicit video · 41d837ae
      Ján Tomko 提交于
      Commit 6879be48 moved adding of an implicit video device after XML
      parsing. As a result, libxlDomainDeviceDefPostParse() is no longer
      called to set the default vram when adding an implicit device.
      Commit 6879be48 assumes virDomainVideoDefaultRAM() will set the
      default vram, but it returns 0 if the domain virtType is
      VIR_DOMAIN_VIRT_XEN. Attempting to start an HVM domain with vram=0
      results in
      
      error: unsupported configuration: videoram must be at least 4MB for CIRRUS
      
      The default vram setting for Xen HVM domains depends on the device
      model used (qemu-xen vs qemu-traditional), hence setting the
      default is deferred to libxlDomainDeviceDefPostParse().
      
      Call the device post-parse callback even for implicit video,
      to fill out the default vram even for VIR_DOMAIN_VIRT_XEN.
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1334557Most-of-commit-message-by: NJim Fehlig <jfehlig@suse.com>
      (cherry picked from commit 3e428670)
      41d837ae
    • J
      Move virDomainDefPostParseInternal after virDomainDeviceDefPostParse · 2b574dca
      Ján Tomko 提交于
      Future commit will call DeviceDefPostParse on a device auto-added
      in DomainDefPostParse.
      
      (cherry picked from commit e4d131b8)
      2b574dca
    • J
      conf: use VIR_APPEND_ELEMENT in virDomainDefAddImplicitVideo · d460558e
      Ján Tomko 提交于
      (cherry picked from commit 12786889)
      d460558e