1. 03 12月, 2013 14 次提交
  2. 02 12月, 2013 25 次提交
    • P
      qemu: snapshot: Add functions similar to disk source pool translation · 7e6242e9
      Peter Krempa 提交于
      To avoid future pain, add placeholder functions to get the actual
      snapshot disk type.
      7e6242e9
    • P
      qemu: snapshot: Touch up error message · cdf02d64
      Peter Krempa 提交于
      cdf02d64
    • P
      conf: Add helper do clear disk source authentication struct · 0018477f
      Peter Krempa 提交于
      Add virDomainDiskAuthClear to help cleaning out the struct in other
      places too.
      0018477f
    • P
      qemu: snapshot: Detect internal snapshots also for sheepdog and RBD · d8cf91ae
      Peter Krempa 提交于
      When doing an internal snapshot on a VM with sheepdog or RBD disks we
      would not set a flag to mark the domain is using internal snapshots and
      might end up creating a mixed snapshot. Move the setting of the variable
      to avoid this problem.
      d8cf91ae
    • P
      conf: Add functions to copy and free network disk source definitions · ae361674
      Peter Krempa 提交于
      To simplify operations on virDomainDiskHostDef arrays we will need deep
      copy and freeing functions. Add and properly export them.
      ae361674
    • P
      snapshot: conf: Fix NULL dereference when <driver> element is empty · 5a66c667
      Peter Krempa 提交于
      Consider the following valid snapshot XML as the <driver> element is
      allowed to be empty in the domainsnapshot.rng schema:
      
      $ cat snap.xml
      <domainsnapshot>
        <disks>
          <disk name='vda' snapshot='external'>
            <source file='/tmp/foo'/>
            <driver/>
          </disk>
        </disks>
      </domainsnapshot>
      
      produces the following error:
      
      $ virsh snapshot-create domain snap.xml
      error: internal error: unknown disk snapshot driver '(null)'
      
      The driver type is parsed as NULL from the XML as the attribute is not
      present and then directly used to produce the error message.
      
      With this patch the attempt to parse the driver type is skipped if not
      present to avoid changing the schema to forbid the empty driver element.
      5a66c667
    • P
      snapshot: conf: Use common parsing and formatting functions for source · 43f2ccdc
      Peter Krempa 提交于
      Disk source elements for snapshots were using separate code from our
      config parser. As snapshots can be stored on more than just regular
      files, we will need the universal parser to allow us to expose a variety
      of snapshot disk targets. This patch reuses the config parsers and
      formatters to do the job.
      
      This initial support only changes the code without any visible XML
      change.
      43f2ccdc
    • P
      conf: Export disk source formatter and parser · 5f86d11e
      Peter Krempa 提交于
      This code will be reused in the snapshot disk definition parser.
      5f86d11e
    • P
      conf: Split out seclabel formating code for disk source · 30f7ca67
      Peter Krempa 提交于
      The code is common for all the various disk types. Split it out to a
      common function.
      30f7ca67
    • P
      conf: Clean up virDomainDiskSourceDefFormatInternal · 03ad83cb
      Peter Krempa 提交于
      Avoid if statements when used with virBufferEscapeString which
      automaticaly omits the whole string. Also add some line breaks to
      visualy separate the code.
      03ad83cb
    • P
      conf: Support disk source formatting without needing a virDomainDiskDefPtr · d6b4c2cc
      Peter Krempa 提交于
      The <source> element formatting function was expecting a
      virDomainDiskDefPtr to store the data. As snapshots are not using this
      data structure to hold the data, we need to add an internal function
      which splits out individual fields separately.
      d6b4c2cc
    • P
      tests: Fix comment for fake storage pool driver · 436fa772
      Peter Krempa 提交于
      Commit bae124e4 was accidentaly pushed
      without review feedback worked in. Fix it up.
      436fa772
    • P
      qemuxml2argv: Add test for disk type='volume' with iSCSI pools · 7e831969
      Peter Krempa 提交于
      Tweak the existing file so that it can be tested for command line
      corectness.
      7e831969
    • P
      qemuxml2argv: Add test to verify correct usage of disk type="volume" · 9f990672
      Peter Krempa 提交于
      Tweak the existing file to test command line generator too.
      9f990672
    • P
      test: Implement fake storage pool driver in qemuxml2argv test · bae124e4
      Peter Krempa 提交于
      To support testing of "volume" disk backing, we need to implement a few
      disk driver backend functions.
      
      The fake storage driver uses files in storagepoolxml2xmlout/POOLNAME.xml
      as XML files for pool definitions and volume names are in format
      "VOL_TYPE+VOL_PATH". By default type "block" is assumed (for iSCSI test
      compatibility).
      
      The choice of this approach along with implemented functions was made so
      that <disk type='volume'> can be tested in the xml2argv test.
      bae124e4
    • D
      Release of libvirt-1.2.0 · 4e41a2a3
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for release
      * po/*.po*: update and merge localizations from transifex
      4e41a2a3
    • R
      vbox: handle errors of virDomainHostdevDefAlloc correctly · 1ed7e014
      Ryota Ozaki 提交于
      The original code ignored errors of virDomainHostdevDefAlloc,
      however, we should properly do error return from the function
      if it occurs.
      
      The fix pulls out virDomainHostdevDefAlloc from the loop and
      executes it all together before the loop. So we can easily
      return on errors without the notion of other memory allocations
      in the loop.
      
      The deallocation code is separated from the allocation code
      because it will be used by a further patch for fixing other error
      handlings.
      Reported-by: NLaine Stump <laine@laine.org>
      Signed-off-by: NRyota Ozaki <ozaki.ryota@gmail.com>
      1ed7e014
    • R
      vbox: fix incorrect loop condition in vboxHostDeviceGetXMLDesc · 82b5dd23
      Ryota Ozaki 提交于
      The fixed loop used logical OR to combine two conditions, however,
      it is apparently incorrect and logical AND is correct.
      
      We can fix it by replacing OR with AND, but this patch instead
      fixes the problem by getting rid of the first conditional
      statement: USBFilterCount < def->nhostdevs. It isn't needed
      because USBFilterCount will never be greater than or equal to
      def->nhostdevs.
      
      def->nhostdevs is calculated in the following code
      above the loop in question like this:
      
          for (i = 0; i < deviceFilters.count; i++) {
              PRBool active = PR_FALSE;
              IUSBDeviceFilter *deviceFilter = deviceFilters.items[i];
      
              deviceFilter->vtbl->GetActive(deviceFilter, &active);
              if (active) {
                  def->nhostdevs++;
              }
          }
      
      And the loop is constructed as like this:
      
          for (i = 0; (USBFilterCount < def->nhostdevs) || (i < deviceFilters.count); i++) {
              PRBool active                  = PR_FALSE;
      (snip)
              deviceFilter->vtbl->GetActive(deviceFilter, &active);
              if (!active)
                  continue;
      (snip)
              USBFilterCount++;
          }
      
      So def->nhostdevs is the number of active device filters and
      USBFilterCount is counted up only when a device filter is active.
      Thus, we can remove USBFilterCount < def->nhostdevs safely.
      Reported-by: NLaine Stump <laine@laine.org>
      Signed-off-by: NRyota Ozaki <ozaki.ryota@gmail.com>
      82b5dd23
    • C
      docs: fix typos in libvirt.h.in · d3572bb7
      Chen Hanxiao 提交于
      s/caused/causes
      Signed-off-by: NChen Hanxiao <chenhanxiao@cn.fujitsu.com>
      d3572bb7
    • D
      Link libvirt-sandbox from apps page · 484b6040
      Daniel P. Berrange 提交于
      Add a link to the http://sandbox.libvirt.org sub-site from the
      list of libraries related to libvirt. Also fix formatting for
      the ruby libvirt binding.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      484b6040
    • D
      Add docs about audit subsystem logging · 84fe15c3
      Daniel P. Berrange 提交于
      Adds a new page to the website "Deployment" section describing
      what data is sent to the audit logs and how to configure libvirtd
      audit settings.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      84fe15c3
    • N
      Fix memory leak in virNWFilterDefParseXML() · 6c874c01
      Nehal J Wani 提交于
      While running nwfilterxml2xmltest, it was found that valgrind pointed out the
      following error...
      
      ==7466== 16 bytes in 1 blocks are definitely lost in loss record 26 of 90
      ==7466==    at 0x4A06B6F: calloc (vg_replace_malloc.c:593)
          ==7466==    by 0x4C651AD: virAlloc (viralloc.c:142)
          ==7466==    by 0x4D0450D: virNWFilterDefParseNode (nwfilter_conf.c:2575)
          ==7466==    by 0x4D05D84: virNWFilterDefParse (nwfilter_conf.c:2647)
          ==7466==    by 0x401FDE: testCompareXMLToXMLHelper (nwfilterxml2xmltest.c:39)
          ==7466==    by 0x402DE1: virtTestRun (testutils.c:138)
          ==7466==    by 0x4018E9: mymain (nwfilterxml2xmltest.c:111)
          ==7466==    by 0x403482: virtTestMain (testutils.c:593)
          ==7466==    by 0x341F421A04: (below main) (libc-start.c:225)
      
      ...21 times, which are related to 21 tests in nwfilterxml2xmltest.c which sent
      EXPECT_WARN = false. There were two scenarios in virNWFilterDefParseXML(),
      when the variable 'entry' was malloc'ed, but not freed.
      6c874c01
    • N
      Fix memory leak in virDomainDefParseXML() · 2cfcd2cc
      Nehal J Wani 提交于
      This patch fixes the memory leaks found while running qemuxml2argvtest
      
      ==8260== 3 bytes in 1 blocks are definitely lost in loss record 1 of
      129
      ==8260==    at 0x4A0887C: malloc (vg_replace_malloc.c:270)
      ==8260==    by 0x341F485E21: strdup (strdup.c:42)
      ==8260==    by 0x4CADCFF: virStrdup (virstring.c:554)
      ==8260==    by 0x4CBB839: virXPathString (virxml.c:90)
      ==8260==    by 0x4CE753A: virDomainDefParseXML (domain_conf.c:11478)
      ==8260==    by 0x4CEB4FE: virDomainDefParseNode (domain_conf.c:12742)
      ==8260==    by 0x4CEB675: virDomainDefParse (domain_conf.c:12684)
      ==8260==    by 0x425958: testCompareXMLToArgvHelper (qemuxml2argvtest.c:107)
      ==8260==    by 0x427111: virtTestRun (testutils.c:138)
      ==8260==    by 0x41D3FE: mymain (qemuxml2argvtest.c:452)
      ==8260==    by 0x4277B2: virtTestMain (testutils.c:593)
      ==8260==    by 0x341F421A04: (below main) (libc-start.c:225)
      ==8260==
      ==8260== 4 bytes in 1 blocks are definitely lost in loss record 5 of
      129
      ==8260==    at 0x4A0887C: malloc (vg_replace_malloc.c:270)
      ==8260==    by 0x341F485E21: strdup (strdup.c:42)
      ==8260==    by 0x4CADCFF: virStrdup (virstring.c:554)
      ==8260==    by 0x4CBB839: virXPathString (virxml.c:90)
      ==8260==    by 0x4CE753A: virDomainDefParseXML (domain_conf.c:11478)
      ==8260==    by 0x4CEB4FE: virDomainDefParseNode (domain_conf.c:12742)
      ==8260==    by 0x4CEB675: virDomainDefParse (domain_conf.c:12684)
      ==8260==    by 0x425958: testCompareXMLToArgvHelper (qemuxml2argvtest.c:107)
      ==8260==    by 0x427111: virtTestRun (testutils.c:138)
      ==8260==    by 0x41D39A: mymain (qemuxml2argvtest.c:451)
      ==8260==    by 0x4277B2: virtTestMain (testutils.c:593)
      ==8260==    by 0x341F421A04: (below main) (libc-start.c:225)
      ==8260==
      2cfcd2cc
    • N
      virsh: fix doc typos · 77b97d80
      Nehal J Wani 提交于
      Fix 6 minor spelling errors in virsh doc
      77b97d80
    • N
      Fix typos in various docs · 968a4692
      Nehal J Wani 提交于
      Fix 8 minor spelling errors in docs/*.html.in
      968a4692
  3. 29 11月, 2013 1 次提交