1. 24 6月, 2016 1 次提交
  2. 22 4月, 2016 1 次提交
  3. 17 3月, 2016 2 次提交
  4. 03 2月, 2016 1 次提交
  5. 12 11月, 2015 1 次提交
    • A
      monitor/target-ppc: Define target_get_monitor_def · 0a9516c2
      Alexey Kardashevskiy 提交于
      At the moment get_monitor_def() returns only registers from statically
      defined monitor_defs array. However there is a lot of BOOK3S SPRs
      which are not in the list and cannot be printed from the monitor.
      
      This adds a new target platform hook - target_get_monitor_def().
      The hook is called if a register was not found in the static
      array returned by the target_monitor_defs() hook.
      
      The hook is only defined for POWERPC, it returns registered
      SPRs and fails on unregistered ones providing the user with information
      on what is actually supported on the running CPU. The register value is
      saved as uint64_t as it is the biggest supported register size;
      target_ulong cannot be used because of the stub - it is in a "common"
      code and cannot include "cpu.h", etc; this is also why the hook prototype
      is redefined in the stub instead of being included from some header.
      
      This replaces static descriptors for GPRs, FPRs, SRs with a helper which
      looks for a value in a corresponding array in the CPUPPCState.
      The immediate effect is that all 32 SRs can be printed now (instead of 16);
      later this can be reused for VSX or TM registers.
      
      This replaces callbacks for MSR and XER with static descriptors in
      monitor_defs as they are stored in CPUPPCState.
      
      While we are here, this adds "cr" as a synonym of "ccr".
      Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      0a9516c2
  6. 05 11月, 2015 1 次提交
  7. 22 10月, 2015 1 次提交
  8. 19 10月, 2015 5 次提交
  9. 16 9月, 2015 1 次提交
  10. 23 6月, 2015 1 次提交
  11. 01 3月, 2015 1 次提交
  12. 20 10月, 2014 1 次提交
  13. 25 9月, 2014 1 次提交
    • M
      block: Keep DriveInfo alive until BlockDriverState dies · 3ae59580
      Markus Armbruster 提交于
      If the BDS's refcnt > 0, drive_del() destroys the DriveInfo, but not
      the BDS.  This can happen in three places:
      
      * Device model destruction during unplug: blockdev_auto_del()
      
      * Xen IDE unplug: pci_piix3_xen_ide_unplug()
      
      * drive_del command when no device model is attached: do_drive_del()
      
      The other callers of drive_del are on error paths where refcnt == 1.
      
      If the user somehow manages to plug in a device model using a BDS that
      has gone through drive_del(), the legacy configuration passed in
      DriveInfo doesn't reach the device model, and automatic deletion on
      unplug doesn't work.  Worse, some device models such as scsi-disk
      crash when DriveInfo doesn't exist.
      
      This is theoretical; I didn't research an actual reproducer. The problem
      was introduced when we replaced DriveInfo reference counting by BDS
      reference counting in commit a94a3fac..fa510ebf.
      
      Fix by keeping DriveInfo alive until its BDS dies.
      
      This affects qemu_drive_opts: now you can't reuse the same ID for new
      drive options until the BDS dies.  Before, you could, but since the
      code always attempts to create a BDS with the same ID next, the
      enclosing operation "create a new drive" failed anyway.  Different
      error path, same result.
      
      Unfortunately, the fix involves use of blockdev.c stuff from block.c,
      which is a layering violation.  Fortunately, my forthcoming
      BlockBackend work will get rid of it again.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: NMax Reitz <mreitz@redhat.com>
      Reviewed-by: NBenoît Canet <benoit.canet@nodalink.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      3ae59580
  14. 06 8月, 2014 1 次提交
    • P
      backends: Introduce chr-testdev · 5692399f
      Paolo Bonzini 提交于
      From: Paolo Bonzini <pbonzini@redhat.com>
      
      chr-testdev enables a virtio serial channel to be used for guest
      initiated qemu exits. hw/misc/debugexit already enables guest
      initiated qemu exits, but only for PC targets. chr-testdev supports
      any virtio-capable target. kvm-unit-tests/arm is already making use
      of this backend.
      
      Currently there is a single command implemented, "q".  It takes a
      (prefix) argument for the exit code, thus an exit is implemented by
      writing, e.g. "1q", to the virtio-serial port.
      
      It can be used as:
         $QEMU ... \
           -device virtio-serial-device \
           -device virtserialport,chardev=ctd -chardev testdev,id=ctd
      
      or, use:
         $QEMU ... \
           -device virtio-serial-device \
           -device virtconsole,chardev=ctd -chardev testdev,id=ctd
      
      to bind it to virtio-serial port0.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NAndrew Jones <drjones@redhat.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      5692399f
  15. 23 6月, 2014 2 次提交
  16. 19 6月, 2014 2 次提交
  17. 25 4月, 2014 1 次提交
  18. 14 3月, 2014 2 次提交
  19. 27 2月, 2014 1 次提交
  20. 12 9月, 2013 1 次提交
  21. 27 7月, 2013 1 次提交
  22. 11 6月, 2013 1 次提交
  23. 01 5月, 2013 1 次提交
  24. 01 3月, 2013 1 次提交
  25. 13 1月, 2013 1 次提交
  26. 09 1月, 2013 3 次提交
  27. 19 11月, 2012 1 次提交