1. 23 7月, 2014 5 次提交
  2. 22 7月, 2014 16 次提交
    • M
      tests: Remove stale scsihostdata dir · 692016f7
      Michal Privoznik 提交于
      In the fbd91d49 commit, new scsihostdata dir is added to EXTRA_DIST in
      the tests/Makefile.am. However, the directory itself is not created
      anywhere, nor in the commit.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      692016f7
    • P
      qemu: snapshot: Forbid taking/reverting snapshots in PMSUSPENDED state · 1e833899
      Peter Krempa 提交于
      Qemu doesn't currently support them and behaves strangely. Just forbid
      them.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1079162
      1e833899
    • P
      qemu: snapshot: Forbid taking snapshot in invalid state · c71045a9
      Peter Krempa 提交于
      Similarly to 49a3a649 forbid creating
      snapshots in domain states impossible to reach in qemu.
      c71045a9
    • M
      domtop: Fix build on mingw · d82170d7
      Michal Privoznik 提交于
      Firstly, there's no sigaction() nor struct sigaction on mingw. We have
      to use the one implemented by gnulib (and hence link with gnulib).
      Then, for some reason one header file from windows defines ERROR
      symbol. Yes it does. Sigh.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      d82170d7
    • E
      build: fix build without numactl · 72823b44
      Eric Blake 提交于
      Under ./configure --without-numactl but with numactl-devel installed,
      the build fails with:
      
      ../../src/util/virnuma.c: In function 'virNumaNodeIsAvailable':
      ../../src/util/virnuma.c:407:5: error: implicit declaration of function 'numa_bitmask_isbitset' [-Werror=implicit-function-declaration]
           return numa_bitmask_isbitset(numa_nodes_ptr, node);
           ^
      
      and other failures, all because the configure results for particular
      functions were used without regard to whether libnuma was even being
      linked in.
      
      * src/util/virnuma.c (virNumaGetPages): Fix message typo.
      (virNumaNodeIsAvailable): Correct build when not using numactl.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      72823b44
    • R
      storage: logical: drop useless if · 53939d58
      Roman Bogorodskiy 提交于
      virStorageBackendLogicalCreateVol contains a piece like:
      
          if (vol->target.path != NULL) {
              /* A target path passed to CreateVol has no meaning */
              VIR_FREE(vol->target.path);
          }
      
      The 'if' is useless here, but 'syntax-check' doesn't catch that
      because of the comment, so drop the 'if'.
      53939d58
    • R
      Fix build on non-Linux platforms · b5f57be2
      Roman Bogorodskiy 提交于
      Commit ef48a1b6 introduced virFindSCSIHostByPCI for Linux and
      a stub for other platforms that returns -1 while the function
      should return 'char *', so use 'return NULL' instead.
      
      Commit fbd91d49 introduced virReadSCSIUniqueId with the third
      argument 'int *result', however the stub for non-Linux patform
      uses 'unsigned int *result', so change it to 'int *result'.
      
      Pushed under the build breaker rule.
      b5f57be2
    • J
      getAdapterName: Lookup stable scsi_host · ea37fb34
      John Ferlan 提交于
      If a parentaddr was provided in the XML, have getAdapterName lookup
      the stable address.  This allows virStorageBackendSCSICheckPool() and
      virStorageBackendSCSIRefreshPool() to automagically find the scsi_host
      by its PCI address and unique_id
      ea37fb34
    • J
      scsi_host: Introduce virFindSCSIHostByPCI · ef48a1b6
      John Ferlan 提交于
      Introduce a new function to parse the provided scsi_host parent address
      and unique_id value in order to find the /sys/class/scsi_host directory
      which will allow a stable SCSI host address
      
      Add a test to scsihosttest to lookup the host# name by using the PCI address
      and unique_id value
      ef48a1b6
    • J
      Add unique_id to nodedev output · f3271f4c
      John Ferlan 提交于
      Add an optional unique_id parameter to nodedev.  Allows for easier lookup
      and display of the unique_id value in order to document for use with
      scsi_host code.
      f3271f4c
    • J
      virutil: Introduce virReadSCSIUniqueId · fbd91d49
      John Ferlan 提交于
      Introduce a new function to read the current scsi_host entry and return
      the value found in the 'unique_id' file.
      
      Add a 'scsihosttest' test (similar to the fchosttest, but incorporating some
      of the concepts of the mocked pci test library) in order to read the
      unique_id file like would be found in the /sys/class/scsi_host tree.
      fbd91d49
    • J
      scsi_backend: Use existing LINUX_SYSFS_SCSI_HOST_PREFIX definition · aa9dac09
      John Ferlan 提交于
      Rather than supplying the path again in the formatting of the sysfs
      scsi_host directory.
      aa9dac09
    • O
      storage: Introduce parentaddr into virStoragePoolSourceAdapter · a4bd62ad
      Osier Yang 提交于
      Between reboots and kernel reloads, the SCSI host number used for SCSI
      storage pools may change requiring modification to the storage pool XML
      in order to use a specific SCSI host adapter.
      
      This patch introduces the "parentaddr" element and "unique_id" attribute
      for the SCSI host adapter in order to uniquely identify the adapter
      between reboots and kernel reloads. For now the goal is to only parse
      and format the XML. Both will be required to be provided in order to
      uniquely identify the desired SCSI host.
      
      The new XML is expected to be as follows:
      
        <adapter type='scsi_host'>
          <parentaddr unique_id='3'>
            <address domain='0x0000' bus='0x00' slot='0x1f' func='0x2'/>
          </parentaddr>
        </adapter>
      
      where "parentaddr" is the parent device of the SCSI host using the PCI
      address on which the device resides and the value from the unique_id file
      for the device. Both the PCI address and unique_id values will be used
      to traverse the /sys/class/scsi_host/ directories looking at each link
      to match the PCI address reformatted to the directory link format where
      "domain:bus:slot:function" is found.  Then for each matching directory
      the unique_id file for the scsi_host will be used to match the unique_id
      value in the xml.
      
      For a PCI address listed above, this will be formatted to "0000:00:1f.2"
      and the links in /sys/class/scsi_host will be used to find the host#
      to be used for the 'scsi_host' device. Each entry is a link to the
      /sys/bus/pci/devices directories, e.g.:
      
      %  ls -al /sys/class/scsi_host/host2
      lrwxrwxrwx. 1 root root 0 Jun  1 00:22 /sys/class/scsi_host/host2 -> ../../devices/pci0000:00/0000:00:1f.2/ata3/host2/scsi_host/host2
      
      % cat /sys/class/scsi_host/host2/unique_id
      3
      
      The "parentaddr" and "name" attributes are mutually exclusive to identify
      the SCSI host number. Use of the "parentaddr" element will be the preferred
      mechanism.
      
      This patch only supports to parse and format the XMLs. Later patches will
      add code to find out the scsi host number.
      a4bd62ad
    • O
      virStoragePoolSourceAdapter: Refine the SCSI_HOST adapter name · 53f62056
      Osier Yang 提交于
      Preparation for future patches by creating a scsi_host union. For now,
      just the 'name' will be present.
      53f62056
    • J
      getAdapterName: check for SCSI_HOST · 8d854e5b
      John Ferlan 提交于
      Rather than assume that NOT FC_HOST is SCSI_HOST, let's call them out
      specifically. Makes it easier to find SCSI_HOST code/structs and ensures
      something isn't missed in the future
      8d854e5b
    • P
      schema: pool: netfs: Don't enforce slash in glusterfs pool source · b325be12
      Peter Krempa 提交于
      Gluster volumes don't start with a leading slash. Our schema for netfs
      gluster pools enforces it though. Luckily mount.glusterfs skips it.
      Allow a slashless volume name for glusterfs netfs mounts in the schema.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1101999
      b325be12
  3. 21 7月, 2014 7 次提交
  4. 19 7月, 2014 2 次提交
    • R
      bhyve: reconnect to domains after libvirtd restart · 29e45ea1
      Roman Bogorodskiy 提交于
      Try to reconnect to the running domains after libvirtd restart. To
      achieve that, do:
      
       * Save domain state
        - Modify virBhyveProcessStart() to save domain state to the state
          dir
        - Modify virBhyveProcessStop() to cleanup the pidfile and the state
      
       * Detect if the state information loaded from the driver's state
         dir matches the actual state. Consider domain active if:
          - PID it points to exist
          - Process title of this PID matches the expected one with the
            domain name
      
         Otherwise, mark the domain as shut off.
      
      Note: earlier development bhyve versions before FreeBSD 10.0-RELEASE
      didn't set proctitle we expect, so the current code will not detect
      it. I don't plan adding support for this unless somebody requests
      this.
      29e45ea1
    • H
      doc: add domain to address of hostdev pci · f1ac62f7
      Hu Tao 提交于
      libvirt supports pci domain already, so update the documentation.
      Otherwise users who lookup the documentation for how to use hostdev may
      miss the domain and encounter error when pass-through a pci device in a
      domain other than 0.
      Signed-off-by: NHu Tao <hutao@cn.fujitsu.com>
      f1ac62f7
  5. 18 7月, 2014 10 次提交
    • P
      qemu: snapshot: Forbid snapshots of iSCSI passthrough devices · 1f4933f0
      Peter Krempa 提交于
      As with the local SCSI passthrough devicesm qemu can't support snapshots
      on those as the block ops are handled by the device. This is also true
      for iSCSI backing of the disk. Remove the check for the local block
      device and just forbid snapshot when the disk is of type 'lun'.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1073368
      1f4933f0
    • P
      doc: domain: Clarify that disk type 'lun' works with iSCSI too · 2a483038
      Peter Krempa 提交于
      Disk type 'lun' enables SCSI command passthrough for a disk. We stated
      that it works only with "block" disks. Qemu supports it also when using
      the iSCSI protocol.
      2a483038
    • M
      examples: Introduce domtop · 28d54aab
      Michal Privoznik 提交于
      There's this question on the list that is asked over and over again.
      How do I get {cpu, memory, ...} usage in percentage? Or its modified
      version: How do I plot nice graphs like virt-manager does?
      
      It would be nice if we have an example to inspire people. And that's
      what domtop should do. Yes, it could be written in different ways, but
      I've chosen this one as I think it show explicitly what users need to
      implement in order to imitate virt-manager's graphing.
      
      Note: The usage is displayed from host perspective. That is, how much
      host CPUs the domain is using. But it should be fairly simple to
      switch do just guest CPU usage if needed.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      28d54aab
    • M
      Kill last strto{l,ll,d} scouts · 50281605
      Michal Privoznik 提交于
      There's no need to use it since we have this shiny functions
      that even checks for conversion and overflow errors.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      50281605
    • C
      7c10a774
    • C
      lxc network configuration allows setting target container NIC name · 3ba0469c
      Cédric Bosdonnat 提交于
      LXC network devices can now be assigned a custom NIC device name on the
      container side. For example, this is configured with:
      
          <interface type='network'>
            <source network='default'/>
            <guest dev="eth1"/>
          </interface>
      
      In this example the network card will appear as eth1 in the guest.
      3ba0469c
    • J
      spec: Consolidate with_qemu* definitions · d659b412
      Jiri Denemark 提交于
      Decisions whether qemu driver and libvirt-daemon-{qemu,kvm} packages
      should be built on various OS/arch combinations were scattered around
      the spec file. Let's make it easier to see where qemu driver is going to
      be built.
      d659b412
    • J
      storage: Disallow vol_wipe for sparse logical volumes · 8a9f7cbe
      John Ferlan 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1091866
      
      Add a new boolean 'sparse'.  This will be used by the logical backend
      storage driver to determine whether the target volume is sparse or not
      (also known by a snapshot or thin logical volume). Although setting sparse
      to true at creation could be seen as duplicitous to setting during
      virStorageBackendLogicalMakeVol() in case there are ever other code paths
      between Create and FindLVs that need to know about the volume be sparse.
      
      Use the 'sparse' in a new virStorageBackendLogicalVolWipe() to decide whether
      to attempt to wipe the logical volume or not. For now, I have found no
      means to wipe the volume without writing to it. Writing to the sparse
      volume causes it to be filled. A sparse logical volume is not completely
      writeable as there exists metadata which if overwritten will cause the
      sparse lv to go INACTIVE which means pool-refresh will not find it.
      Access to whatever lvm uses to manage data blocks is not provided by
      any API I could find.
      8a9f7cbe
    • J
      storage: Convert 'building' into a bool · 10087386
      John Ferlan 提交于
      Rather than a unsigned int, use a 'bool' since that's how it was used.
      10087386
    • G
      esx: Fix a comment about VSphere versions · 325f98aa
      Geoff Hickey 提交于
      Update the VSphere version comment in esx_vi.c for ESX 5.1 and 5.5.
      325f98aa