1. 09 8月, 2012 4 次提交
    • P
      a084a703
    • P
      scsi-disk: more assertions and resets for aiocb · 46e3f30e
      Paolo Bonzini 提交于
      Leaving the aiocb to a non-NULL value leads to an assertion failure when
      rerror/werror are set to stop or enospc, and the operation is retried.
      scsi-disk checks that the aiocb member is NULL before filling it.
      
      This patch correctly resets the aiocb to NULL values everywhere,
      and adds the dual assertion that the aiocb was non-NULL before
      calling bdrv_acct_done.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      46e3f30e
    • P
      virtio-scsi: do not compare 32-bit QEMU tags against 64-bit virtio-scsi tags · 4dd7c82c
      Paolo Bonzini 提交于
      This patch fixes a problem in handling task management functions
      in virtio-scsi.  The cause of the problem is a mismatch between
      the size of the tag in QEMU (32-bit) and virtio-scsi (64-bit).
      Changing the QEMU size is hard because the migration format
      uses 32 bits to store the tag; so just don't use the QEMU tag
      (virtio-scsi only uses the tag for task management functions
      anyway) and look up the full 64-bit tag in the hba_private field.
      
      The reproducer is a bit obscure.  If you cause an I/O timeout
      (for example with rerror=stop and doing 'cont' on the monitor
      continuously without fixing the error), sooner or later the
      guest will try to abort the command and reissue it.  At this
      point, QEMU will report _two_ errors instead of one when you
      hit 'c', because the first error has not been canceled correctly.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      4dd7c82c
    • R
      iscsi: Pick default initiator-name based on the name of the VM · 31459f46
      Ronnie Sahlberg 提交于
      This patch updates the iscsi layer to automatically pick a 'unique'
      initiator-name based on the name of the vm in case the user has not set
      an explicit iqn-name to use.
      
      Create a new function qemu_get_vm_name() that returns the name of the VM,
      if specified.
      
      This way we can thus create default names to use as the initiator name
      based on the guest session.
      
      If the VM is not named via the '-name' command line argument, the iscsi
      initiator-name used wiull simply be
      
          iqn.2008-11.org.linux-kvm
      
      If a name for the VM was specified with the '-name' option, iscsi will
      use a default initiatorname of
      
          iqn.2008-11.org.linux-kvm:<name>
      
      These names are just the default iscsi initiator name that qemu will
      generate/use only when the user has not set an explicit initiator name
      via the commandlines or config files.
      Signed-off-by: NRonnie Sahlberg <ronniesahlberg@gmail.com>
      31459f46
  2. 08 8月, 2012 2 次提交
  3. 07 8月, 2012 3 次提交
  4. 05 8月, 2012 11 次提交
  5. 04 8月, 2012 16 次提交
    • B
      bitops: drop volatile qualifier · 17a4ed8a
      Blue Swirl 提交于
      Qualifier 'volatile' is not useful for applications, it's too strict
      for single threaded code but does not give the real atomicity guarantees
      needed for multithreaded code.
      
      Drop them and now useless casts.
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      17a4ed8a
    • P
      configure: Fix set-but-not-used warning in Xen 4.1 probe · 9b4c0b56
      Peter Maydell 提交于
      The Xen 4.1 probe never uses the return value from xc_interface_open(),
      so was provoking a compiler warning on newer gcc. Fix by not bothering
      to put the return value anywhere.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      9b4c0b56
    • P
      configure: Don't run Xen compile checks in subshells · 69deef08
      Peter Maydell 提交于
      The Xen compile checks are currently run inside subshells. This
      is unnecessary and has the effect that if do_cc() exits with
      an error message then this only causes the subshell to exit,
      not the whole of configure, which is confusing. Remove the
      subshells, changing:
        if ( cat ; compile_prog ) ; then ...
      to
        if cat && compile_prog ; then ...
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      69deef08
    • C
      Fixes related to processing of qemu's -numa option · ee785fed
      Chegu Vinod 提交于
      The -numa option to qemu is used to create [fake] numa nodes
      and expose them to the guest OS instance.
      
      There are a couple of issues with the -numa option:
      
      a) Max VCPU's that can be specified for a guest while using
         the qemu's -numa option is 64. Due to a typecasting issue
         when the number of VCPUs is > 32 the VCPUs don't show up
         under the specified [fake] numa nodes.
      
      b) KVM currently has support for 160VCPUs per guest. The
         qemu's -numa option has only support for upto 64VCPUs
         per guest.
      This patch addresses these two issues.
      
      Below are examples of (a) and (b)
      
      a) >32 VCPUs are specified with the -numa option:
      
      /usr/local/bin/qemu-system-x86_64 \
      -enable-kvm \
      71:01:01 \
      -net tap,ifname=tap0,script=no,downscript=no \
      -vnc :4
      
      ...
      Upstream qemu :
      --------------
      
      QEMU 1.1.50 monitor - type 'help' for more information
      (qemu) info numa
      6 nodes
      node 0 cpus: 0 1 2 3 4 5 6 7 8 9 32 33 34 35 36 37 38 39 40 41
      node 0 size: 131072 MB
      node 1 cpus: 10 11 12 13 14 15 16 17 18 19 42 43 44 45 46 47 48 49 50 51
      node 1 size: 131072 MB
      node 2 cpus: 20 21 22 23 24 25 26 27 28 29 52 53 54 55 56 57 58 59
      node 2 size: 131072 MB
      node 3 cpus: 30
      node 3 size: 131072 MB
      node 4 cpus:
      node 4 size: 131072 MB
      node 5 cpus: 31
      node 5 size: 131072 MB
      
      With the patch applied :
      -----------------------
      
      QEMU 1.1.50 monitor - type 'help' for more information
      (qemu) info numa
      6 nodes
      node 0 cpus: 0 1 2 3 4 5 6 7 8 9
      node 0 size: 131072 MB
      node 1 cpus: 10 11 12 13 14 15 16 17 18 19
      node 1 size: 131072 MB
      node 2 cpus: 20 21 22 23 24 25 26 27 28 29
      node 2 size: 131072 MB
      node 3 cpus: 30 31 32 33 34 35 36 37 38 39
      node 3 size: 131072 MB
      node 4 cpus: 40 41 42 43 44 45 46 47 48 49
      node 4 size: 131072 MB
      node 5 cpus: 50 51 52 53 54 55 56 57 58 59
      node 5 size: 131072 MB
      
      b) >64 VCPUs specified with -numa option:
      
      /usr/local/bin/qemu-system-x86_64 \
      -enable-kvm \
      -cpu Westmere,+rdtscp,+pdpe1gb,+dca,+pdcm,+xtpr,+tm2,+est,+smx,+vmx,+ds_cpl,+monitor,+dtes64,+pclmuldq,+pbe,+tm,+ht,+ss,+acpi,+d-vnc :4
      
      ...
      
      Upstream qemu :
      --------------
      
      only 63 CPUs in NUMA mode supported.
      only 64 CPUs in NUMA mode supported.
      QEMU 1.1.50 monitor - type 'help' for more information
      (qemu) info numa
      8 nodes
      node 0 cpus: 6 7 8 9 38 39 40 41 70 71 72 73
      node 0 size: 65536 MB
      node 1 cpus: 10 11 12 13 14 15 16 17 18 19 42 43 44 45 46 47 48 49 50 51 74 75 76 77 78 79
      node 1 size: 65536 MB
      node 2 cpus: 20 21 22 23 24 25 26 27 28 29 52 53 54 55 56 57 58 59 60 61
      node 2 size: 65536 MB
      node 3 cpus: 30 62
      node 3 size: 65536 MB
      node 4 cpus:
      node 4 size: 65536 MB
      node 5 cpus:
      node 5 size: 65536 MB
      node 6 cpus: 31 63
      node 6 size: 65536 MB
      node 7 cpus: 0 1 2 3 4 5 32 33 34 35 36 37 64 65 66 67 68 69
      node 7 size: 65536 MB
      
      With the patch applied :
      -----------------------
      
      QEMU 1.1.50 monitor - type 'help' for more information
      (qemu) info numa
      8 nodes
      node 0 cpus: 0 1 2 3 4 5 6 7 8 9
      node 0 size: 65536 MB
      node 1 cpus: 10 11 12 13 14 15 16 17 18 19
      node 1 size: 65536 MB
      node 2 cpus: 20 21 22 23 24 25 26 27 28 29
      node 2 size: 65536 MB
      node 3 cpus: 30 31 32 33 34 35 36 37 38 39
      node 3 size: 65536 MB
      node 4 cpus: 40 41 42 43 44 45 46 47 48 49
      node 4 size: 65536 MB
      node 5 cpus: 50 51 52 53 54 55 56 57 58 59
      node 5 size: 65536 MB
      node 6 cpus: 60 61 62 63 64 65 66 67 68 69
      node 6 size: 65536 MB
      node 7 cpus: 70 71 72 73 74 75 76 77 78 79
      Signed-off-by: NChegu Vinod &lt;chegu_vinod@hp.com&gt;, Jim Hull &lt;jim.hull@hp.com&gt;, Craig Hada <craig.hada@hp.com>
      Tested-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      ee785fed
    • D
      build: Fix build breakage detected by buildbot · 161abfb5
      Dunrong Huang 提交于
      More details:
      http://buildbot.b1-systems.de/qemu/builders/xen_unstable/builds/83/steps/compile/logs/stdio
      
      VLANState has been removed since commit a005d073, so "vlan id" should be
      fetched using net_hub_id_for_client().
      Signed-off-by: NDunrong Huang <riegamaths@gmail.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      161abfb5
    • A
      fips: fix build on !Linux · 70678b82
      Anthony Liguori 提交于
      Commit 0f66998f makes -enable-fips conditional on Linux hosts but then uses it
      unconditionally in vl.c.
      
      Fix this by moving the fips handling to os-posix.c and adding a condition.
      
      Cc: Paul Moore <pmoore@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      70678b82
    • A
      slirp: Handle whole 127.0.0.0/8 network as local addresses. · 648cd33e
      Anders Waldenborg 提交于
      Changes so translation of remote address to the host's ip address in
      the virtual network happens for all addresses in the 127.0.0.0/8
      network, not just 127.0.0.1.
      
      This fixes so that hostfwd bound to addresses such as 127.0.0.2 works.
      Signed-off-by: NAnders Waldenborg <anders@0x63.nu>
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      648cd33e
    • A
      Merge remote-tracking branch 'bonzini/scsi-next' into staging · b34bd5e5
      Anthony Liguori 提交于
      * bonzini/scsi-next:
        scsi: add support for ATA_PASSTHROUGH_xx scsi command
        esp: add missing const on TypeInfo structures
        esp: enable for all PCI machines
        Revert "megasas: disable due to build breakage"
        megasas: static SAS addresses
        scsi-disk: fix compilation with DEBUG_SCSI
        megasas: Update function megasys_scsi_uninit
        SCSI: STARTSTOPUNIT only eject/load media if powercondition is 0
        SCSI: Update the sense code for PREVENT REMOVAL errors
      b34bd5e5
    • C
      scsi: add support for ATA_PASSTHROUGH_xx scsi command · e4b65262
      Cong Meng 提交于
      Correct the command names of opcode 0x85 and 0xa1, and calculate
      their xfer size from CDB.
      Signed-off-by: NCong Meng <mc@linux.vnet.ibm.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      e4b65262
    • P
      vnc: disable VNC password authentication (security type 2) when in FIPS mode · 0f66998f
      Paul Moore 提交于
      FIPS 140-2 requires disabling certain ciphers, including DES, which is used
      by VNC to obscure passwords when they are sent over the network.  The
      solution for FIPS users is to disable the use of VNC password auth when the
      host system is operating in FIPS compliance mode and the user has specified
      '-enable-fips' on the QEMU command line.
      
      This patch causes QEMU to emit a message to stderr when the host system is
      running in FIPS mode and a VNC password was specified on the commend line.
      If the system is not running in FIPS mode, or is running in FIPS mode but
      VNC password authentication was not requested, QEMU operates normally.
      Signed-off-by: NPaul Moore <pmoore@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      0f66998f
    • A
      Merge remote-tracking branch 'qmp/queue/qmp' into staging · 2ad728bd
      Anthony Liguori 提交于
      * qmp/queue/qmp:
        hmp: show the backing file depth
        block: Use bdrv_get_backing_file_depth()
        block: create bdrv_get_backing_file_depth()
        qapi: qapi.py: allow the "'" character to be escaped
      2ad728bd
    • A
      Merge remote-tracking branch 'afaerber-or/qom-cpu-4' into staging · 9c936c86
      Anthony Liguori 提交于
      * afaerber-or/qom-cpu-4:
        cpu: Move thread_kicked to CPUState
        cpu: Move thread field into CPUState
        cpu: Move CPU_COMMON_THREAD into CPUState
        qemu-thread: Let qemu_thread_is_self() return bool
      9c936c86
    • A
      Merge remote-tracking branch 'sstabellini/xen-fixes-20120801' into staging · ca9ba23a
      Anthony Liguori 提交于
      * sstabellini/xen-fixes-20120801:
        fix Xen compilation
        configure: Fix xen probe with Xen 4.2 and later
      ca9ba23a
    • A
      Merge remote-tracking branch 'stefanha/net' into staging · f57fb884
      Anthony Liguori 提交于
      * stefanha/net:
        net: add the support for -netdev socket, listen
        net: fix the coding style
        hub: add the support for hub own flow control
        net: determine if packets can be sent before net queue deliver packets
        net: cleanup deliver/deliver_iov func pointers
        net: Make "info network" output more readable info
        net: Rename qemu_del_vlan_client() to qemu_del_net_client()
        net: Rename vc local variables to nc
        net: Rename VLANClientState to NetClientState
        net: Rename non_vlan_clients to net_clients
        net: Remove VLANState
        net: Remove vlan code from net.c
        net: Convert qdev_prop_vlan to peer with hub
        net: Drop vlan argument to qemu_new_net_client()
        hub: Check that hubs are configured correctly
        net: Look up 'vlan' net clients using hubs
        net: Use hubs for the vlan feature
        net: Add a hub net client
        net: Add interface to bridge when SIOCBRADDIF isn't available
      f57fb884
    • A
      Merge remote-tracking branch 'stefanha/trivial-patches' into staging · 3d0b7b52
      Anthony Liguori 提交于
      * stefanha/trivial-patches:
        exec.c: Remove out of date comment
        exec.c: Use subpages for large unaligned mappings
        exec.c: Fix off-by-one error in register_subpage
        socket: clean up redundant assignment
        qom: Clean libuser object and dependency files
        usb: Clean common object and dependency files
      3d0b7b52
    • A
      Merge remote-tracking branch 'aneesh/for-upstream' into staging · aeb01d5f
      Anthony Liguori 提交于
      * aneesh/for-upstream:
        hw/9pfs: Fix assert when disabling migration
        configure: Fix build with capabilities
      aeb01d5f
  6. 03 8月, 2012 4 次提交