[qemu/f18] Update to qemu 1.2.2 stable Fix libvirt + seccomp combo (bz #855162) Fix scsi hotplug crash (bz #879
Cole Robinson
crobinso at fedoraproject.org
Sun Dec 16 23:27:58 UTC 2012
commit f375e62ad9397c0f7fa8b658f5508d858d2e6ad3
Author: Cole Robinson <crobinso at redhat.com>
Date: Sun Dec 16 18:27:22 2012 -0500
Update to qemu 1.2.2 stable
Fix libvirt + seccomp combo (bz #855162)
Fix scsi hotplug crash (bz #879657)
Fix QOM refcount crash (bz #881486)
...ccomp-adding-new-syscalls-bugzilla-855162.patch | 241 ++++++++++
...xtensa-convert-host-errno-values-to-guest.patch | 2 +-
0002-target-cris-Fix-buffer-overflow.patch | 2 +-
...tensa-fix-missing-errno-codes-for-mingw32.patch | 2 +-
...c-fix-fcmp-s-d-q-instructions-wrt-excepti.patch | 2 +-
0005-target-s390x-fix-style.patch | 2 +-
0006-target-s390x-split-FPU-ops.patch | 2 +-
...target-s390x-split-condition-code-helpers.patch | 2 +-
0008-target-s390x-split-integer-helpers.patch | 2 +-
...-target-s390x-split-memory-access-helpers.patch | 2 +-
...s390x-rename-op_helper.c-to-misc_helper.c.patch | 2 +-
...-target-s390x-avoid-AREG0-for-FPU-helpers.patch | 2 +-
...get-s390x-avoid-AREG0-for-integer-helpers.patch | 2 +-
...0x-avoid-AREG0-for-condition-code-helpers.patch | 2 +-
...target-s390x-avoid-AREG0-for-misc-helpers.patch | 2 +-
0015-target-s390x-switch-to-AREG0-free-mode.patch | 2 +-
...s390-fix-ld-st-with-CONFIG_TCG_PASS_AREG0.patch | 2 +-
...-target-arm-Fix-potential-buffer-overflow.patch | 2 +-
...-optimize-split-expression-simplification.patch | 2 +-
...-tcg-optimize-simplify-or-xor-r-a-0-cases.patch | 2 +-
0020-tcg-optimize-simplify-and-r-a-0-cases.patch | 2 +-
...e-simplify-shift-rot-r-0-a-movi-r-0-cases.patch | 2 +-
...e-swap-brcond-setcond-arguments-when-poss.patch | 2 +-
...optimize-add-constant-folding-for-setcond.patch | 2 +-
...-optimize-add-constant-folding-for-brcond.patch | 2 +-
...g-optimize-fix-if-else-break-coding-style.patch | 2 +-
0026-target-s390x-avoid-cpu_single_env.patch | 2 +-
0027-target-lm32-switch-to-AREG0-free-mode.patch | 2 +-
0028-target-m68k-switch-to-AREG0-free-mode.patch | 2 +-
0029-target-m68k-avoid-using-cpu_single_env.patch | 2 +-
...arget-unicore32-switch-to-AREG0-free-mode.patch | 2 +-
0031-target-arm-convert-void-helpers.patch | 2 +-
0032-target-arm-convert-remaining-helpers.patch | 2 +-
...t-arm-final-conversion-to-AREG0-free-mode.patch | 2 +-
...rget-microblaze-switch-to-AREG0-free-mode.patch | 2 +-
0035-target-cris-Avoid-AREG0-for-helpers.patch | 2 +-
0036-target-cris-Switch-to-AREG0-free-mode.patch | 2 +-
0037-target-sh4-switch-to-AREG0-free-mode.patch | 2 +-
0038-target-mips-switch-to-AREG0-free-mode.patch | 2 +-
...nused-CONFIG_TCG_PASS_AREG0-and-dead-code.patch | 2 +-
...cg-i386-allow-constants-in-load-store-ops.patch | 2 +-
...g-mark-set_label-with-TCG_OPF_BB_END-flag.patch | 2 +-
0042-revert-TCG-fix-copy-propagation.patch | 2 +-
...-target-mips-Set-opn-in-gen_ldst_multiple.patch | 2 +-
0044-target-mips-Fix-MIPS_DEBUG.patch | 2 +-
...-Always-evaluate-debugging-macro-argument.patch | 2 +-
...optimize-fix-end-of-basic-block-detection.patch | 2 +-
0047-target-xtensa-fix-extui-shift-amount.patch | 2 +-
...t-xtensa-don-t-emit-extra-tcg_gen_goto_tb.patch | 2 +-
0049-tcg-Introduce-movcond.patch | 2 +-
0050-target-alpha-Use-movcond.patch | 2 +-
0051-tcg-i386-Implement-movcond.patch | 2 +-
...Optimize-movcond-for-constant-comparisons.patch | 2 +-
...timize-two-address-commutative-operations.patch | 2 +-
...-fix-build-with-USE_SOFTFLOAT_STRUCT_TYPE.patch | 2 +-
0055-tcg-Fix-USE_DIRECT_JUMP.patch | 2 +-
0056-tcg-hppa-Fix-brcond2-and-setcond2.patch | 2 +-
0057-tcg-hppa-Fix-broken-load-store-helpers.patch | 2 +-
...-tcg-mips-fix-wrong-usage-of-Z-constraint.patch | 2 +-
0059-tcg-mips-kill-warnings-in-user-mode.patch | 2 +-
...-mips-use-TCGArg-or-TCGReg-instead-of-int.patch | 2 +-
0061-tcg-mips-don-t-use-global-pointer.patch | 2 +-
0062-tcg-mips-use-stack-for-TCG-temps.patch | 2 +-
0063-tcg-mips-optimize-brcond-arg-0.patch | 2 +-
...mips-optimize-bswap-16-16s-32-on-MIPS32R2.patch | 2 +-
...-mips-implement-rotl-rotr-ops-on-MIPS32R2.patch | 2 +-
...tcg-mips-implement-deposit-op-on-MIPS32R2.patch | 2 +-
...tcg-mips-implement-movcond-op-on-MIPS32R2.patch | 2 +-
0068-tcg-optimize-remove-TCG_TEMP_ANY.patch | 2 +-
...-optimize-check-types-in-copy-propagation.patch | 2 +-
0070-tcg-optimize-rework-copy-progagation.patch | 2 +-
...ze-do-copy-propagation-for-all-operations.patch | 2 +-
0072-tcg-optimize-optimize-op-r-a-a-mov-r-a.patch | 2 +-
0073-tcg-optimize-optimize-op-r-a-a-movi-r-0.patch | 2 +-
...e-further-optimize-brcond-movcond-setcond.patch | 2 +-
...e-prefer-the-op-a-a-b-form-for-commutativ.patch | 2 +-
...remove-ifdef-endif-around-TCGOpcode-tests.patch | 2 +-
...optimize-add-constant-folding-for-deposit.patch | 2 +-
...DME-document-tcg_gen_goto_tb-restrictions.patch | 2 +-
...Fix-TCG-helper-functions-with-5-arguments.patch | 2 +-
0080-tcg-ppc32-Implement-movcond32.patch | 2 +-
...tcg-sparc-Hack-in-qemu_ld-st64-for-32-bit.patch | 2 +-
0082-tcg-sparc-Fix-ADDX-opcode.patch | 2 +-
...arc-Don-t-MAP_FIXED-on-top-of-the-program.patch | 2 +-
...ssume-v9-cpu-always-i.e.-force-v8plus-in-.patch | 2 +-
...parc-Fix-qemu_ld-st-to-handle-32-bit-host.patch | 2 +-
0086-tcg-sparc-Support-GUEST_BASE.patch | 2 +-
...parc-Change-AREG0-in-generated-code-to-i0.patch | 2 +-
...lean-up-cruft-stemming-from-attempts-to-u.patch | 2 +-
...ask-shift-immediates-to-avoid-illegal-ins.patch | 2 +-
0090-tcg-sparc-Use-defines-for-temporaries.patch | 2 +-
...cg-sparc-Add-g-o-registers-to-alloc_order.patch | 2 +-
...g-sparc-Fix-and-enable-direct-TB-chaining.patch | 2 +-
...reserve-branch-destinations-during-retran.patch | 2 +-
...target-alpha-Initialize-env-cpu_model_str.patch | 2 +-
0095-tcg-mips-fix-MIPS32-R2-detection.patch | 2 +-
0096-tcg-Adjust-descriptions-of-cond-opcodes.patch | 2 +-
0097-tcg-i386-fix-build-with-march-i686.patch | 2 +-
0098-tcg-Fix-MAX_OPC_PARAM_IARGS.patch | 2 +-
0099-tci-Fix-for-AREG0-free-mode.patch | 2 +-
...abort-on-invalid-streaming-cmdline-params.patch | 2 +-
...pice-notify-spice-server-on-vm-start-stop.patch | 2 +-
...y-on-vm-state-change-only-via-spice_serve.patch | 2 +-
...ration-add-QEVENT_SPICE_MIGRATE_COMPLETED.patch | 2 +-
0104-spice-add-migrated-flag-to-spice-info.patch | 2 +-
...g-seamless-migration-option-to-the-comman.patch | 2 +-
...ase-the-verbosity-of-spice-section-in-qem.patch | 2 +-
...e_area_io-guest_bug-on-invalid-parameters.patch | 2 +-
0108-qxl-add-QXL_IO_MONITORS_CONFIG_ASYNC.patch | 2 +-
...rint-spice-protocol-and-spice-server-vers.patch | 2 +-
...-fix-doc-of-using-raw-values-with-sendkey.patch | 2 +-
...-qapi-Fix-potential-NULL-pointer-segfault.patch | 2 +-
...arser-Fix-potential-NULL-pointer-segfault.patch | 2 +-
...-drop-version_id-field-for-live-migration.patch | 2 +-
...ear-cmask-for-Advanced-Error-Interrupt-Me.patch | 2 +-
...ointer-for-ELF-kernels-loaded-with-kernel.patch | 2 +-
0116-lan9118-fix-multicast-filtering.patch | 2 +-
...S-user-Fix-reset-CPU-state-initialization.patch | 2 +-
0118-Add-MAINTAINERS-entry-for-leon3.patch | 2 +-
0119-musicpal-Fix-flash-mapping.patch | 2 +-
...lgrind-annotations-to-mark-kvm-guest-memo.patch | 2 +-
0121-hw-wm8750-Fix-potential-buffer-overflow.patch | 2 +-
...6-Fix-buffer-overflow-for-MBAR-read-write.patch | 2 +-
...dir-instead-of-ignoring-it-first-and-rein.patch | 6 +-
...t-attempt-to-reconnect-a-TCP-socket-in-se.patch | 2 +-
...ty-to-force-enable-disable-of-tools-build.patch | 2 +-
...lers-do-not-need-to-check-for-babble-them.patch | 2 +-
...n-t-set-packet-state-to-complete-on-a-nak.patch | 2 +-
...d-a-usb_ep_find_packet_by_id-helper-funct.patch | 2 +-
...low-the-first-packet-of-a-pipelined-ep-to.patch | 2 +-
...-ehci-don-t-flush-cache-on-doorbell-rings.patch | 2 +-
...te-qh-is-not-changed-unexpectedly-by-the-.patch | 2 +-
...-copyright-headers-to-reflect-recent-work.patch | 2 +-
0133-ehci-Properly-cleanup-packets-on-cancel.patch | 2 +-
...ly-report-completed-but-not-yet-processed.patch | 6 +-
...for-EHCI_ASYNC_FINISHED-first-in-ehci_fre.patch | 5 +-
0136-ehci-trace-guest-bugs.patch | 2 +-
0137-ehci-add-doorbell-trace-events.patch | 2 +-
...ome-additional-ehci_trace_guest_bug-calls.patch | 2 +-
...memory-leak-in-handling-of-NAK-ed-packets.patch | 2 +-
...Handle-USB_RET_PROCERR-in-ehci_fill_queue.patch | 2 +-
...t-a-comment-in-fetchqtd-packet-processing.patch | 2 +-
...ever-return-USB_RET_NAK-for-async-handled.patch | 5 +-
...on-t-delay-handling-of-open-events-to-a-b.patch | 2 +-
...-redir-Get-rid-of-async-struct-get-member.patch | 2 +-
...et-rid-of-local-shadow-copy-of-packet-hea.patch | 2 +-
...Get-rid-of-unused-async-struct-dev-member.patch | 2 +-
...Move-to-core-packet-id-and-queue-handling.patch | 2 +-
...eturn-babble-when-getting-more-bulk-data-.patch | 2 +-
0149-Better-name-usb-braille-device.patch | 2 +-
0150-usb-audio-fix-usb-version.patch | 2 +-
0151-xhci-rip-out-background-transfer-code.patch | 2 +-
0152-xhci-drop-buffering.patch | 2 +-
0153-xhci-fix-runtime-write-tracepoint.patch | 2 +-
...-allow-bytewise-capability-register-reads.patch | 2 +-
0155-qxl-dont-update-invalid-area.patch | 2 +-
...low-emulated-non-async-control-requests-w.patch | 6 +-
0157-qxl-better-cleanup-for-surface-destroy.patch | 2 +-
0158-ehci-switch-to-new-style-memory-ops.patch | 2 +-
...terrupts-stopping-when-Interrupt-Threshol.patch | 2 +-
...process-too-much-frames-in-1-timer-tick-v.patch | 2 +-
0161-sheepdog-fix-savevm-and-loadvm.patch | 2 +-
...or-messages-from-static-code-analysis-no-.patch | 2 +-
0163-block-curl-Fix-wrong-free-statement.patch | 2 +-
0164-vdi-Fix-warning-from-clang.patch | 2 +-
0165-block-fix-block-tray-status.patch | 2 +-
0166-ahci-properly-reset-PxCMD-on-HBA-reset.patch | 2 +-
...re-encryption-password-for-qemu-img-info-.patch | 5 +-
...ock-Don-t-forget-to-delete-temporary-file.patch | 2 +-
0169-hw-qxl-tracing-fixes.patch | 2 +-
0170-configure-usbredir-fixes.patch | 2 +-
...set-seen-to-0-when-removing-unseen-queue-.patch | 2 +-
...async-schedule-before-and-after-migration.patch | 2 +-
...-Revert-usb-redir-part-of-commit-93bfef4c.patch | 2 +-
...queue-up-packets-after-one-with-the-SPD-f.patch | 2 +-
...ove-wrong-type-casts-ins-debug-statements.patch | 2 +-
...ix-error-reported-by-static-code-analysis.patch | 2 +-
0177-slirp-improve-TFTP-performance.patch | 2 +-
...e-more-than-65535-blocks-in-TFTP-transfer.patch | 2 +-
0179-slirp-Implement-TFTP-Blocksize-option.patch | 2 +-
...se-QEMU_PACKED-for-single-elements-of-a-s.patch | 2 +-
...lling-fixes-in-comments-and-documentation.patch | 2 +-
...sole-Clean-up-bytes-per-pixel-calculation.patch | 2 +-
0183-qapi-Fix-enumeration-typo-error.patch | 2 +-
...kvm-Fix-warning-from-static-code-analysis.patch | 2 +-
...-add-missing-symbols-before-PRIu64-in-deb.patch | 2 +-
...-net-notify-iothread-after-flushing-queue.patch | 2 +-
...-queue-whenever-can_receive-can-go-from-f.patch | 2 +-
0188-xen-flush-queue-when-getting-an-event.patch | 2 +-
...-Fix-network-hang-when-rx-buffers-run-out.patch | 2 +-
...ceive_disabled-logic-to-iov-delivery-path.patch | 2 +-
...-net-do-not-report-queued-packets-as-sent.patch | 2 +-
0192-net-add-netdev-options-to-man-page.patch | 2 +-
0193-net-clean-up-usbnet_receive.patch | 2 +-
0194-net-fix-usbnet_receive-packet-drops.patch | 2 +-
...st-hub-packets-if-at-least-one-port-can-r.patch | 2 +-
...onous-send-receive-infrastructure-for-net.patch | 2 +-
...-net-EAGAIN-handling-for-net-socket.c-UDP.patch | 2 +-
...-net-EAGAIN-handling-for-net-socket.c-TCP.patch | 2 +-
0199-configure-fix-seccomp-check.patch | 2 +-
...re-properly-check-if-lrt-and-lm-is-needed.patch | 2 +-
0201-Revert-455aa1e08-and-c3767ed0eb.patch | 2 +-
...UGFIX-don-t-call-FD_ISSET-with-negative-f.patch | 2 +-
...l_memory_write_rom-needs-to-do-TB-invalid.patch | 2 +-
...-Improve-soundhw-help-for-non-HAS_AUDIO_C.patch | 6 +-
...xilinx_timer-Removed-comma-in-device-name.patch | 2 +-
..._timer-Send-dbg-msgs-to-stderr-not-stdout.patch | 2 +-
0207-xilinx.h-Error-check-when-setting-links.patch | 2 +-
...imer-Fix-a-compile-error-if-debug-enabled.patch | 2 +-
..._cfi01-fix-vendor-specific-extended-query.patch | 2 +-
0210-MAINTAINERS-Add-entry-for-QOM-CPU.patch | 2 +-
...ed-to-support-SG_IO-also-from-iscsi_ioctl.patch | 2 +-
...nt-need-to-explicitely-call-qemu_notify_e.patch | 2 +-
0213-scsi-disk-introduce-check_lba_range.patch | 2 +-
...-scsi-disk-fix-check-for-out-of-range-LBA.patch | 2 +-
...rd-INQUIRY-data-should-report-HiSup-flag-.patch | 2 +-
...dio-Fix-warning-from-static-code-analysis.patch | 2 +-
...-ga-Remove-unreachable-code-after-g_error.patch | 2 +-
0218-qemu-sockets-Fix-potential-memory-leak.patch | 2 +-
0219-cadence_uart-Fix-buffer-overflow.patch | 2 +-
0220-lm4549-Fix-buffer-overflow.patch | 2 +-
0221-ioh3420-Remove-unreachable-code.patch | 2 +-
...01-Fix-warning-caused-by-unreachable-code.patch | 2 +-
...t-initialize-curses-when-qemu-is-daemoniz.patch | 2 +-
...-saturate-escape-parameter-in-TTY_STATE_C.patch | 2 +-
...Remove-redundant-null-check-and-replace-f.patch | 2 +-
...Fix-compiler-warning-regression-for-MinGW.patch | 2 +-
...use-standard-instead-of-native-format-str.patch | 2 +-
...dd-implementation-of-gmtime_r-localtime_r.patch | 2 +-
...eserve-readonly-and-snapshot-states-acros.patch | 2 +-
...ock-correctly-set-the-keep_read_only-flag.patch | 2 +-
...llow-builds-without-any-system-or-user-em.patch | 2 +-
0232-Refactor-inet_connect_opts-function.patch | 2 +-
...et_connect-into-inet_connect-blocking-and.patch | 2 +-
...ress-handling-in-inet_nonblocking_connect.patch | 2 +-
0235-Clear-handler-only-for-valid-fd.patch | 2 +-
0236-pl190-fix-read-of-VECTADDR.patch | 2 +-
...vic-Correctly-register-GIC-region-when-se.patch | 6 +-
...xpress-Fix-NOR-flash-0-address-and-remove.patch | 2 +-
...it-10-of-CPUID-8000_0001-.EDX-is-reserved.patch | 2 +-
...at.c-Return-correctly-signed-values-from-.patch | 2 +-
...-t-test-for-MSR_PR-for-hypercalls-under-K.patch | 2 +-
0242-update-VERSION-for-v1.2.1.patch | 2 +-
...gure-Fix-CONFIG_QEMU_HELPERDIR-generation.patch | 17 +-
...ix-CONFIG_QEMU_HELPERDIR-generation-again.patch | 40 ++
...-report-use-TIGHT_PNG-encoding-if-enabled.patch | 42 ++
0304-vnc-fix-info-vnc-with-vnc-.-reverse-on.patch | 54 +++
...interrupt-when-requested-even-for-non-act.patch | 51 +++
...6-hw-qxl-qxl_dirty_surfaces-use-uintptr_t.patch | 17 +-
...xl-always-update-displaysurface-on-resize.patch | 7 +-
0308-rtc-fix-overflow-in-mktimegm.patch | 100 +++++
...turn-value-check-for-bdrv_read-bdrv_write.patch | 201 +++++++++
...-Allow-tsc-frequency-to-be-larger-then-2..patch | 33 ++
...check_rxov-always-treat-RX-ring-with-RDH-.patch | 65 +++
...rendering-of-a-region-obscured-by-another.patch | 57 +++
0313-s390x-fix-initrd-in-virtio-machine.patch | 37 ++
0314-PPC-Bamboo-Fix-memory-size-DT-property.patch | 33 ++
0315-target-sparc64-disable-VGA-cirrus.patch | 37 ++
0316-xhci-fix-usb-name-in-caps.patch | 40 ++
...s-initialize-main-loop-before-block-layer.patch | 57 +++
...Return-semihosting-errno-values-correctly.patch | 39 ++
0319-nbd-fixes-to-read-only-handling.patch | 62 +++
0320-mips-malta-fix-CBUS-UART-interrupt-pin.patch | 41 ++
...-mips-fix-wrong-microMIPS-opcode-encoding.patch | 38 ++
...-tcg-arm-fix-TLB-access-in-qemu-ld-st-ops.patch | 169 +++++++
0323-tcg-arm-fix-cross-endian-qemu_st16.patch | 77 ++++
...risc-remove-conflicting-definitions-from-.patch | 52 +++
...avoid-compiler-warning-in-pipe2-detection.patch | 38 ++
...qcow2-Fix-refcount-table-size-calculation.patch | 36 ++
0327-tci-Fix-type-of-tci_read_label.patch | 39 ++
...egression-for-MinGW-assertion-caused-by-s.patch | 41 ++
0329-qom-dynamic_cast-of-NULL-is-always-NULL.patch | 44 ++
...-hmp-do-not-crash-on-invalid-SCSI-hotplug.patch | 46 ++
0331-PPC-Fix-missing-TRACE-exception.patch | 85 ++++
...ix-refcount-of-non-heap-allocated-objects.patch | 50 +++
...e-visitor-type_size-in-QapiDeallocVisitor.patch | 57 +++
...fix-qapi_dealloc_type_size-parameter-type.patch | 36 ++
0335-iscsi-fix-segfault-in-url-parsing.patch | 34 ++
0336-iscsi-fix-deadlock-during-login.patch | 333 ++++++++++++++
...-do-not-assume-device-is-zero-initialized.patch | 44 ++
...csi-Fix-some-endian-bugs-with-virtio-scsi.patch | 57 +++
0339-virtio-scsi-Fix-subtle-guest-endian-bug.patch | 46 ++
...memslots-after-migration-when-qxl-is-in-U.patch | 36 ++
...usbdevice_create-when-there-is-no-USB-bus.patch | 47 ++
0342-stream-fix-ratelimit_set_speed.patch | 33 ++
...rd-packets-that-are-too-long-if-SBP-and-L.patch | 49 ++
0401-update-VERSION-for-v1.2.2.patch | 20 +
...out-tcp-socket-close-code-in-a-separate-f.patch | 4 +-
...QemuChrHandlers-struct-to-initialise-char.patch | 4 +-
...Add-enable-disable_write_fd_handler-funct.patch | 4 +-
...-framework-for-a-write-unblocked-callback.patch | 4 +-
...-send_all-to-handle-nonblocking-chardev-w.patch | 4 +-
...the-unix-tcp-backend-to-handle-nonblockin.patch | 4 +-
...har-Throttle-when-host-connection-is-down.patch | 4 +-
...ole-Enable-port-throttling-when-chardev-i.patch | 4 +-
... => 0410-spice-qemu-char.c-add-throttling.patch | 4 +-
...ce-qemu-char.c-remove-intermediate-buffer.patch | 4 +-
...> 0412-usb-redir-Add-flow-control-support.patch | 4 +-
...erial-bus-post_load-send_event-when-vm-is.patch | 130 ------
...serial-bus-replay-guest_open-on-migration.patch | 51 +++
...e-write-callback-if-throttled-chardev-is-.patch | 7 +-
...erial-bus-replay-guest-open-on-destinatio.patch | 54 ---
...ch => 0501-qxl-disallow-unknown-revisions.patch | 6 +-
...e-number-of-surfaces-runtime-configurable.patch | 14 +-
..._client_capabilities-interface-to-QXLInte.patch | 6 +-
...emove-ifdef-QXL_COMMAND_FLAG_COMPAT_16BPP.patch | 6 +-
...pice-switch-to-queue-for-vga-mode-updates.patch | 6 +-
...0506-spice-split-qemu_spice_create_update.patch | 4 +-
...ror.patch => 0507-spice-add-screen-mirror.patch | 4 +-
...d-updates-only-for-changed-screen-content.patch | 4 +-
...-set_client_capabilities-pre-post-migrate.patch | 6 +-
...> 0510-qxl-add-trace-event-for-QXL_IO_LOG.patch | 6 +-
...ort-client-monitor-configuration-via-devi.patch | 12 +-
...area_io-cleanup-invalid-parameters-handli.patch | 6 +-
...-qxl-fix-range-check-for-rev3-io-commands.patch | 6 +-
...exit-on-failure-to-register-qxl-interface.patch | 35 --
...w-qxl-fix-condition-for-exiting-guest_bug.patch | 29 --
0517-spice-raise-requirement-to-0.12.patch | 465 --------------------
0518-qxl-set-default-revision-to-4.patch | 33 --
...-Convert-to-new-libusbredirparser-0.5-API.patch | 8 +-
...redir-Set-ep-max_packet_size-if-available.patch | 4 +-
...dd-a-usbredir_reject_device-helper-functi.patch | 4 +-
...nsure-our-peer-has-the-necessary-caps-whe.patch | 4 +-
...edir-Enable-pipelining-for-bulk-endpoints.patch | 4 +-
...move-device-lookup-into-xhci_setup_packet.patch | 6 +-
...ndex.patch => 0607-xhci-implement-mfindex.patch | 6 +-
...pport.patch => 0608-xhci-iso-xfer-support.patch | 6 +-
... => 0609-xhci-trace-cc-codes-in-cleartext.patch | 6 +-
...10-xhci-add-trace_usb_xhci_ep_set_dequeue.patch | 6 +-
...patch => 0611-xhci-update-register-layout.patch | 6 +-
...g.patch => 0612-xhci-update-port-handling.patch | 10 +-
...patch => 0613-usb3-superspeed-descriptors.patch | 4 +-
...> 0614-usb3-superspeed-endpoint-companion.patch | 4 +-
...ecriptor.patch => 0615-usb3-bos-decriptor.patch | 4 +-
...rt.patch => 0616-usb-storage-usb3-support.patch | 4 +-
...up-msi.patch => 0617-xhci-fix-cleanup-msi.patch | 6 +-
...ch => 0618-xhci-rework-interrupt-handling.patch | 6 +-
...pport.patch => 0619-xhci-add-msix-support.patch | 6 +-
...move-register-update-into-xhci_intr_raise.patch | 6 +-
...er.patch => 0621-xhci-add-XHCIInterrupter.patch | 6 +-
...e-xhci_runtime_-read-write-for-multiple-i.patch | 6 +-
...atch => 0623-xhci-pick-target-interrupter.patch | 6 +-
...> 0624-xhci-support-multiple-interrupters.patch | 6 +-
...xhci_mem_-read-write-dispatcher-functions.patch | 6 +-
...hange-cancelled-packet-code-into-a-generi.patch | 4 +-
...-Add-an-already_in_flight-packet-id-queue.patch | 4 +-
...-redir-Store-max_packet_size-in-endp_data.patch | 4 +-
... 0629-usb-redir-Add-support-for-migration.patch | 4 +-
...edir-Add-chardev-open-close-debug-logging.patch | 4 +-
...-Revert-usb-redir-part-of-commit-93bfef4c.patch | 4 +-
...2-ehci-Fix-interrupt-packet-MULT-handling.patch | 4 +-
...djust-pkg-config-check-for-usbredirparser.patch | 8 +-
...hange-usbredir_open_chardev-into-usbredir.patch | 4 +-
...on-t-make-migration-fail-in-none-seamless.patch | 4 +-
...01-mips-Fix-link-error-with-piix4_pm_init.patch | 4 +-
...=> 0702-configure-Add-disable-kvm-options.patch | 10 +-
...ange-initrd-load-address-to-halfway-throu.patch | 7 +-
...ce-backend-add-function-to-reserved-words.patch | 4 +-
...wip-hw-qxl-inject-interrupts-in-any-state.patch | 6 +-
...acard-fix-missing-symbols-in-libcacard.so.patch | 6 +-
...ure-move-vscclient-binary-under-libcacard.patch | 8 +-
...ccomp-adding-new-syscalls-bugzilla-855162.patch | 241 ++++++++++
qemu.spec | 316 +++++++++-----
363 files changed, 3693 insertions(+), 1318 deletions(-)
---
diff --git a/0001-seccomp-adding-new-syscalls-bugzilla-855162.patch b/0001-seccomp-adding-new-syscalls-bugzilla-855162.patch
new file mode 100644
index 0000000..b2dfb8e
--- /dev/null
+++ b/0001-seccomp-adding-new-syscalls-bugzilla-855162.patch
@@ -0,0 +1,241 @@
+From fe512d65e0b752dfa7af6cfb374a0820d35040d0 Mon Sep 17 00:00:00 2001
+From: Eduardo Otubo <otubo at linux.vnet.ibm.com>
+Date: Thu, 29 Nov 2012 13:56:41 -0200
+Subject: [PATCH] seccomp: adding new syscalls (bugzilla 855162)
+
+According to the bug 855162[0] - there's the need of adding new syscalls
+to the whitelist when using Qemu with Libvirt.
+
+[0] - https://bugzilla.redhat.com/show_bug.cgi?id=855162
+
+Reported-by: Paul Moore <pmoore at redhat.com>
+Tested-by: Paul Moore <pmoore at redhat.com>
+Signed-off-by: Eduardo Otubo <otubo at linux.vnet.ibm.com>
+Signed-off-by: Corey Bryant <coreyb at linux.vnet.ibm.com>
+Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
+---
+ qemu-seccomp.c | 156 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
+ 1 file changed, 139 insertions(+), 17 deletions(-)
+
+diff --git a/qemu-seccomp.c b/qemu-seccomp.c
+index 64329a3..2a71d6f 100644
+--- a/qemu-seccomp.c
++++ b/qemu-seccomp.c
+@@ -26,8 +26,12 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(timer_gettime), 254 },
+ { SCMP_SYS(futex), 253 },
+ { SCMP_SYS(select), 252 },
++#if defined(__x86_64__)
+ { SCMP_SYS(recvfrom), 251 },
+ { SCMP_SYS(sendto), 250 },
++#elif defined(__i386__)
++ { SCMP_SYS(socketcall), 250 },
++#endif
+ { SCMP_SYS(read), 249 },
+ { SCMP_SYS(brk), 248 },
+ { SCMP_SYS(clone), 247 },
+@@ -36,15 +40,30 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(execve), 245 },
+ { SCMP_SYS(open), 245 },
+ { SCMP_SYS(ioctl), 245 },
++#if defined(__x86_64__)
++ { SCMP_SYS(socket), 245 },
++ { SCMP_SYS(setsockopt), 245 },
+ { SCMP_SYS(recvmsg), 245 },
+ { SCMP_SYS(sendmsg), 245 },
+ { SCMP_SYS(accept), 245 },
+ { SCMP_SYS(connect), 245 },
++ { SCMP_SYS(socketpair), 245 },
++ { SCMP_SYS(bind), 245 },
++ { SCMP_SYS(listen), 245 },
++ { SCMP_SYS(semget), 245 },
++#elif defined(__i386__)
++ { SCMP_SYS(ipc), 245 },
++#endif
+ { SCMP_SYS(gettimeofday), 245 },
+ { SCMP_SYS(readlink), 245 },
+ { SCMP_SYS(access), 245 },
+ { SCMP_SYS(prctl), 245 },
+ { SCMP_SYS(signalfd), 245 },
++ { SCMP_SYS(getrlimit), 245 },
++ { SCMP_SYS(set_tid_address), 245 },
++ { SCMP_SYS(statfs), 245 },
++ { SCMP_SYS(unlink), 245 },
++ { SCMP_SYS(wait4), 245 },
+ #if defined(__i386__)
+ { SCMP_SYS(fcntl64), 245 },
+ { SCMP_SYS(fstat64), 245 },
+@@ -56,30 +75,33 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(sigreturn), 245 },
+ { SCMP_SYS(_newselect), 245 },
+ { SCMP_SYS(_llseek), 245 },
+- { SCMP_SYS(mmap2), 245},
++ { SCMP_SYS(mmap2), 245 },
+ { SCMP_SYS(sigprocmask), 245 },
+-#elif defined(__x86_64__)
+- { SCMP_SYS(sched_getparam), 245},
+- { SCMP_SYS(sched_getscheduler), 245},
+- { SCMP_SYS(fstat), 245},
+- { SCMP_SYS(clock_getres), 245},
+- { SCMP_SYS(sched_get_priority_min), 245},
+- { SCMP_SYS(sched_get_priority_max), 245},
+- { SCMP_SYS(stat), 245},
+- { SCMP_SYS(socket), 245},
+- { SCMP_SYS(setsockopt), 245},
+- { SCMP_SYS(uname), 245},
+- { SCMP_SYS(semget), 245},
+ #endif
++ { SCMP_SYS(sched_getparam), 245 },
++ { SCMP_SYS(sched_getscheduler), 245 },
++ { SCMP_SYS(fstat), 245 },
++ { SCMP_SYS(clock_getres), 245 },
++ { SCMP_SYS(sched_get_priority_min), 245 },
++ { SCMP_SYS(sched_get_priority_max), 245 },
++ { SCMP_SYS(stat), 245 },
++ { SCMP_SYS(uname), 245 },
+ { SCMP_SYS(eventfd2), 245 },
+ { SCMP_SYS(dup), 245 },
++ { SCMP_SYS(dup2), 245 },
++ { SCMP_SYS(dup3), 245 },
+ { SCMP_SYS(gettid), 245 },
++ { SCMP_SYS(getgid), 245 },
++ { SCMP_SYS(getegid), 245 },
++ { SCMP_SYS(getuid), 245 },
++ { SCMP_SYS(geteuid), 245 },
+ { SCMP_SYS(timer_create), 245 },
+ { SCMP_SYS(exit), 245 },
+ { SCMP_SYS(clock_gettime), 245 },
+ { SCMP_SYS(time), 245 },
+ { SCMP_SYS(restart_syscall), 245 },
+ { SCMP_SYS(pwrite64), 245 },
++ { SCMP_SYS(nanosleep), 245 },
+ { SCMP_SYS(chown), 245 },
+ { SCMP_SYS(openat), 245 },
+ { SCMP_SYS(getdents), 245 },
+@@ -93,8 +115,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(lseek), 245 },
+ { SCMP_SYS(pselect6), 245 },
+ { SCMP_SYS(fork), 245 },
+- { SCMP_SYS(bind), 245 },
+- { SCMP_SYS(listen), 245 },
+ { SCMP_SYS(eventfd), 245 },
+ { SCMP_SYS(rt_sigprocmask), 245 },
+ { SCMP_SYS(write), 244 },
+@@ -104,10 +124,112 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(pipe2), 242 },
+ { SCMP_SYS(munmap), 242 },
+ { SCMP_SYS(mremap), 242 },
++ { SCMP_SYS(fdatasync), 242 },
++ { SCMP_SYS(close), 242 },
++ { SCMP_SYS(rt_sigpending), 242 },
++ { SCMP_SYS(rt_sigtimedwait), 242 },
++ { SCMP_SYS(readv), 242 },
++ { SCMP_SYS(writev), 242 },
++ { SCMP_SYS(preadv), 242 },
++ { SCMP_SYS(pwritev), 242 },
++ { SCMP_SYS(setrlimit), 242 },
++ { SCMP_SYS(ftruncate), 242 },
++ { SCMP_SYS(lstat), 242 },
++ { SCMP_SYS(pipe), 242 },
++ { SCMP_SYS(umask), 242 },
++ { SCMP_SYS(chdir), 242 },
++ { SCMP_SYS(setitimer), 242 },
++ { SCMP_SYS(setsid), 242 },
++ { SCMP_SYS(poll), 242 },
++ { SCMP_SYS(epoll_create), 242 },
++ { SCMP_SYS(epoll_ctl), 242 },
++ { SCMP_SYS(epoll_wait), 242 },
++#if defined(__i386__)
++ { SCMP_SYS(waitpid), 242 },
++#elif defined(__x86_64__)
+ { SCMP_SYS(getsockname), 242 },
+ { SCMP_SYS(getpeername), 242 },
+- { SCMP_SYS(fdatasync), 242 },
+- { SCMP_SYS(close), 242 }
++ { SCMP_SYS(accept4), 242 },
++ { SCMP_SYS(newfstatat), 241 },
++ { SCMP_SYS(shutdown), 241 },
++ { SCMP_SYS(getsockopt), 241 },
++ { SCMP_SYS(semctl), 241 },
++ { SCMP_SYS(semop), 241 },
++ { SCMP_SYS(semtimedop), 241 },
++ { SCMP_SYS(epoll_ctl_old), 241 },
++ { SCMP_SYS(epoll_wait_old), 241 },
++#endif
++ { SCMP_SYS(epoll_pwait), 241 },
++ { SCMP_SYS(epoll_create1), 241 },
++ { SCMP_SYS(ppoll), 241 },
++ { SCMP_SYS(creat), 241 },
++ { SCMP_SYS(link), 241 },
++ { SCMP_SYS(getpid), 241 },
++ { SCMP_SYS(getppid), 241 },
++ { SCMP_SYS(getpgrp), 241 },
++ { SCMP_SYS(getpgid), 241 },
++ { SCMP_SYS(getsid), 241 },
++ { SCMP_SYS(getdents64), 241 },
++ { SCMP_SYS(getresuid), 241 },
++ { SCMP_SYS(getresgid), 241 },
++ { SCMP_SYS(getgroups), 241 },
++#if defined(__i386__)
++ { SCMP_SYS(getresuid32), 241 },
++ { SCMP_SYS(getresgid32), 241 },
++ { SCMP_SYS(getgroups32), 241 },
++ { SCMP_SYS(signal), 241 },
++ { SCMP_SYS(sigaction), 241 },
++ { SCMP_SYS(sigsuspend), 241 },
++ { SCMP_SYS(sigpending), 241 },
++ { SCMP_SYS(truncate64), 241 },
++ { SCMP_SYS(ftruncate64), 241 },
++ { SCMP_SYS(fchown32), 241 },
++ { SCMP_SYS(chown32), 241 },
++ { SCMP_SYS(lchown32), 241 },
++ { SCMP_SYS(statfs64), 241 },
++ { SCMP_SYS(fstatfs64), 241 },
++ { SCMP_SYS(fstatat64), 241 },
++ { SCMP_SYS(lstat64), 241 },
++ { SCMP_SYS(sendfile64), 241 },
++ { SCMP_SYS(ugetrlimit), 241 },
++#endif
++ { SCMP_SYS(alarm), 241 },
++ { SCMP_SYS(rt_sigsuspend), 241 },
++ { SCMP_SYS(rt_sigqueueinfo), 241 },
++ { SCMP_SYS(rt_tgsigqueueinfo), 241 },
++ { SCMP_SYS(sigaltstack), 241 },
++ { SCMP_SYS(signalfd4), 241 },
++ { SCMP_SYS(truncate), 241 },
++ { SCMP_SYS(fchown), 241 },
++ { SCMP_SYS(lchown), 241 },
++ { SCMP_SYS(fchownat), 241 },
++ { SCMP_SYS(fstatfs), 241 },
++ { SCMP_SYS(sendfile), 241 },
++ { SCMP_SYS(getitimer), 241 },
++ { SCMP_SYS(syncfs), 241 },
++ { SCMP_SYS(fsync), 241 },
++ { SCMP_SYS(fchdir), 241 },
++ { SCMP_SYS(flock), 241 },
++ { SCMP_SYS(msync), 241 },
++ { SCMP_SYS(sched_setparam), 241 },
++ { SCMP_SYS(sched_setscheduler), 241 },
++ { SCMP_SYS(sched_yield), 241 },
++ { SCMP_SYS(sched_rr_get_interval), 241 },
++ { SCMP_SYS(sched_setaffinity), 241 },
++ { SCMP_SYS(sched_getaffinity), 241 },
++ { SCMP_SYS(readahead), 241 },
++ { SCMP_SYS(timer_getoverrun), 241 },
++ { SCMP_SYS(unlinkat), 241 },
++ { SCMP_SYS(readlinkat), 241 },
++ { SCMP_SYS(faccessat), 241 },
++ { SCMP_SYS(get_robust_list), 241 },
++ { SCMP_SYS(splice), 241 },
++ { SCMP_SYS(vmsplice), 241 },
++ { SCMP_SYS(getcpu), 241 },
++ { SCMP_SYS(sendmmsg), 241 },
++ { SCMP_SYS(recvmmsg), 241 },
++ { SCMP_SYS(prlimit64), 241 },
++ { SCMP_SYS(waitid), 241 }
+ };
+
+ int seccomp_start(void)
+--
+1.8.0.2
+
diff --git a/0001-target-xtensa-convert-host-errno-values-to-guest.patch b/0001-target-xtensa-convert-host-errno-values-to-guest.patch
index 7eb51fe..a8eb0a1 100644
--- a/0001-target-xtensa-convert-host-errno-values-to-guest.patch
+++ b/0001-target-xtensa-convert-host-errno-values-to-guest.patch
@@ -179,5 +179,5 @@ index 6d001c2..e745bef 100644
}
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0002-target-cris-Fix-buffer-overflow.patch b/0002-target-cris-Fix-buffer-overflow.patch
index 79640b1..6e370cd 100644
--- a/0002-target-cris-Fix-buffer-overflow.patch
+++ b/0002-target-cris-Fix-buffer-overflow.patch
@@ -31,5 +31,5 @@ index 1ad9ec7..ad31877 100644
cpu_fprintf(f, "s%2.2d=%8.8x ",
i, env->sregs[srs][i]);
--
-1.7.12.1
+1.8.0.2
diff --git a/0003-target-xtensa-fix-missing-errno-codes-for-mingw32.patch b/0003-target-xtensa-fix-missing-errno-codes-for-mingw32.patch
index b5fdd18..2ef4163 100644
--- a/0003-target-xtensa-fix-missing-errno-codes-for-mingw32.patch
+++ b/0003-target-xtensa-fix-missing-errno-codes-for-mingw32.patch
@@ -60,5 +60,5 @@ index e745bef..52be07a 100644
if (host_errno == 0) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0004-target-sparc-fix-fcmp-s-d-q-instructions-wrt-excepti.patch b/0004-target-sparc-fix-fcmp-s-d-q-instructions-wrt-excepti.patch
index e6095aa..c72fca4 100644
--- a/0004-target-sparc-fix-fcmp-s-d-q-instructions-wrt-excepti.patch
+++ b/0004-target-sparc-fix-fcmp-s-d-q-instructions-wrt-excepti.patch
@@ -129,5 +129,5 @@ index 9c64ef8..f4b62a5 100644
break; \
default: \
--
-1.7.12.1
+1.8.0.2
diff --git a/0005-target-s390x-fix-style.patch b/0005-target-s390x-fix-style.patch
index 0f0a63e..21b777d 100644
--- a/0005-target-s390x-fix-style.patch
+++ b/0005-target-s390x-fix-style.patch
@@ -1599,5 +1599,5 @@ index abc35dd..195e93e 100644
env->regs[r1] = ret;
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0006-target-s390x-split-FPU-ops.patch b/0006-target-s390x-split-FPU-ops.patch
index 5aabf6f..b5d1cfa 100644
--- a/0006-target-s390x-split-FPU-ops.patch
+++ b/0006-target-s390x-split-FPU-ops.patch
@@ -1752,5 +1752,5 @@ index 1c1baf5..c370df3 100644
break;
case 0xd: /* DEB R1,D2(X2,B2) [RXE] */
--
-1.7.12.1
+1.8.0.2
diff --git a/0007-target-s390x-split-condition-code-helpers.patch b/0007-target-s390x-split-condition-code-helpers.patch
index 33ddc67..ab12a6c 100644
--- a/0007-target-s390x-split-condition-code-helpers.patch
+++ b/0007-target-s390x-split-condition-code-helpers.patch
@@ -1154,5 +1154,5 @@ index 270bf14..eced890 100644
void HELPER(ipte)(uint64_t pte_addr, uint64_t vaddr)
{
--
-1.7.12.1
+1.8.0.2
diff --git a/0008-target-s390x-split-integer-helpers.patch b/0008-target-s390x-split-integer-helpers.patch
index 5610e6d..998b49f 100644
--- a/0008-target-s390x-split-integer-helpers.patch
+++ b/0008-target-s390x-split-integer-helpers.patch
@@ -440,5 +440,5 @@ index eced890..3b8b997 100644
{
int len_dest = len >> 4;
--
-1.7.12.1
+1.8.0.2
diff --git a/0009-target-s390x-split-memory-access-helpers.patch b/0009-target-s390x-split-memory-access-helpers.patch
index 0e87180..43e46a5 100644
--- a/0009-target-s390x-split-memory-access-helpers.patch
+++ b/0009-target-s390x-split-memory-access-helpers.patch
@@ -2420,5 +2420,5 @@ index 3b8b997..bb8dbf5 100644
-
#endif
--
-1.7.12.1
+1.8.0.2
diff --git a/0010-target-s390x-rename-op_helper.c-to-misc_helper.c.patch b/0010-target-s390x-rename-op_helper.c-to-misc_helper.c.patch
index e96aa52..b9182c5 100644
--- a/0010-target-s390x-rename-op_helper.c-to-misc_helper.c.patch
+++ b/0010-target-s390x-rename-op_helper.c-to-misc_helper.c.patch
@@ -920,5 +920,5 @@ index bb8dbf5..0000000
-}
-#endif
--
-1.7.12.1
+1.8.0.2
diff --git a/0011-target-s390x-avoid-AREG0-for-FPU-helpers.patch b/0011-target-s390x-avoid-AREG0-for-FPU-helpers.patch
index 597face..254d47f 100644
--- a/0011-target-s390x-avoid-AREG0-for-FPU-helpers.patch
+++ b/0011-target-s390x-avoid-AREG0-for-FPU-helpers.patch
@@ -1214,5 +1214,5 @@ index c370df3..b1f2071 100644
tcg_temp_free_i32(tmp32_1);
tcg_temp_free_i32(tmp32_2);
--
-1.7.12.1
+1.8.0.2
diff --git a/0012-target-s390x-avoid-AREG0-for-integer-helpers.patch b/0012-target-s390x-avoid-AREG0-for-integer-helpers.patch
index 379d0f7..9e2b2ef 100644
--- a/0012-target-s390x-avoid-AREG0-for-integer-helpers.patch
+++ b/0012-target-s390x-avoid-AREG0-for-integer-helpers.patch
@@ -198,5 +198,5 @@ index b1f2071..2a61e92 100644
tcg_temp_free_i32(tmp32_1);
tcg_temp_free_i32(tmp32_2);
--
-1.7.12.1
+1.8.0.2
diff --git a/0013-target-s390x-avoid-AREG0-for-condition-code-helpers.patch b/0013-target-s390x-avoid-AREG0-for-condition-code-helpers.patch
index eddecbb..fbda591 100644
--- a/0013-target-s390x-avoid-AREG0-for-condition-code-helpers.patch
+++ b/0013-target-s390x-avoid-AREG0-for-condition-code-helpers.patch
@@ -186,5 +186,5 @@ index 2a61e92..1d87272 100644
tcg_temp_free_i64(tmp2);
tcg_temp_free_i64(tmp3);
--
-1.7.12.1
+1.8.0.2
diff --git a/0014-target-s390x-avoid-AREG0-for-misc-helpers.patch b/0014-target-s390x-avoid-AREG0-for-misc-helpers.patch
index 11ff8fb..b804afb 100644
--- a/0014-target-s390x-avoid-AREG0-for-misc-helpers.patch
+++ b/0014-target-s390x-avoid-AREG0-for-misc-helpers.patch
@@ -407,5 +407,5 @@ index 1d87272..0c61e63 100644
tcg_temp_free_i64(tmp);
tcg_temp_free_i64(tmp2);
--
-1.7.12.1
+1.8.0.2
diff --git a/0015-target-s390x-switch-to-AREG0-free-mode.patch b/0015-target-s390x-switch-to-AREG0-free-mode.patch
index 2329cb2..a4b1a3e 100644
--- a/0015-target-s390x-switch-to-AREG0-free-mode.patch
+++ b/0015-target-s390x-switch-to-AREG0-free-mode.patch
@@ -1580,5 +1580,5 @@ index 0c61e63..66119cd 100644
set_cc_static(s);
tcg_temp_free_i64(tmp);
--
-1.7.12.1
+1.8.0.2
diff --git a/0016-tcg-s390-fix-ld-st-with-CONFIG_TCG_PASS_AREG0.patch b/0016-tcg-s390-fix-ld-st-with-CONFIG_TCG_PASS_AREG0.patch
index 96c305e..ddfa091 100644
--- a/0016-tcg-s390-fix-ld-st-with-CONFIG_TCG_PASS_AREG0.patch
+++ b/0016-tcg-s390-fix-ld-st-with-CONFIG_TCG_PASS_AREG0.patch
@@ -60,5 +60,5 @@ index 04662c1..99b5339 100644
#endif
tgen_calli(s, (tcg_target_ulong)qemu_ld_helpers[s_bits]);
--
-1.7.12.1
+1.8.0.2
diff --git a/0017-target-arm-Fix-potential-buffer-overflow.patch b/0017-target-arm-Fix-potential-buffer-overflow.patch
index 6b9726e..918e22d 100644
--- a/0017-target-arm-Fix-potential-buffer-overflow.patch
+++ b/0017-target-arm-Fix-potential-buffer-overflow.patch
@@ -43,5 +43,5 @@ index dceaa95..e27df96 100644
}
env->cp15.c6_region[ri->crm] = value;
--
-1.7.12.1
+1.8.0.2
diff --git a/0018-tcg-optimize-split-expression-simplification.patch b/0018-tcg-optimize-split-expression-simplification.patch
index 0dcd9b0..7d5d7cd 100644
--- a/0018-tcg-optimize-split-expression-simplification.patch
+++ b/0018-tcg-optimize-split-expression-simplification.patch
@@ -53,5 +53,5 @@ index 9c65474..63f970d 100644
CASE_OP_32_64(and):
if (args[1] == args[2]) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0019-tcg-optimize-simplify-or-xor-r-a-0-cases.patch b/0019-tcg-optimize-simplify-or-xor-r-a-0-cases.patch
index 4f9dd62..3bb71ae 100644
--- a/0019-tcg-optimize-simplify-or-xor-r-a-0-cases.patch
+++ b/0019-tcg-optimize-simplify-or-xor-r-a-0-cases.patch
@@ -26,5 +26,5 @@ index 63f970d..0db849e 100644
/* Proceed with possible constant folding. */
break;
--
-1.7.12.1
+1.8.0.2
diff --git a/0020-tcg-optimize-simplify-and-r-a-0-cases.patch b/0020-tcg-optimize-simplify-and-r-a-0-cases.patch
index e609e66..26ba03d 100644
--- a/0020-tcg-optimize-simplify-and-r-a-0-cases.patch
+++ b/0020-tcg-optimize-simplify-and-r-a-0-cases.patch
@@ -25,5 +25,5 @@ index 0db849e..c12cb2b 100644
if ((temps[args[2]].state == TCG_TEMP_CONST
&& temps[args[2]].val == 0)) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0021-tcg-optimize-simplify-shift-rot-r-0-a-movi-r-0-cases.patch b/0021-tcg-optimize-simplify-shift-rot-r-0-a-movi-r-0-cases.patch
index d77bf30..9af5fe4 100644
--- a/0021-tcg-optimize-simplify-shift-rot-r-0-a-movi-r-0-cases.patch
+++ b/0021-tcg-optimize-simplify-shift-rot-r-0-a-movi-r-0-cases.patch
@@ -44,5 +44,5 @@ index c12cb2b..1698ba3 100644
switch (op) {
CASE_OP_32_64(add):
--
-1.7.12.1
+1.8.0.2
diff --git a/0022-tcg-optimize-swap-brcond-setcond-arguments-when-poss.patch b/0022-tcg-optimize-swap-brcond-setcond-arguments-when-poss.patch
index 19135ee..f003828 100644
--- a/0022-tcg-optimize-swap-brcond-setcond-arguments-when-poss.patch
+++ b/0022-tcg-optimize-swap-brcond-setcond-arguments-when-poss.patch
@@ -45,5 +45,5 @@ index 1698ba3..7debc8a 100644
break;
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0023-tcg-optimize-add-constant-folding-for-setcond.patch b/0023-tcg-optimize-add-constant-folding-for-setcond.patch
index 0968e1e..be84590 100644
--- a/0023-tcg-optimize-add-constant-folding-for-setcond.patch
+++ b/0023-tcg-optimize-add-constant-folding-for-setcond.patch
@@ -110,5 +110,5 @@ index 7debc8a..1cb1f36 100644
nb_call_args = (args[0] >> 16) + (args[0] & 0xffff);
if (!(args[nb_call_args + 1] & (TCG_CALL_CONST | TCG_CALL_PURE))) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0024-tcg-optimize-add-constant-folding-for-brcond.patch b/0024-tcg-optimize-add-constant-folding-for-brcond.patch
index 0b4c73b..172d65e 100644
--- a/0024-tcg-optimize-add-constant-folding-for-brcond.patch
+++ b/0024-tcg-optimize-add-constant-folding-for-brcond.patch
@@ -56,5 +56,5 @@ index 1cb1f36..156e8d9 100644
for (i = 0; i < def->nb_args; i++) {
*gen_args = *args;
--
-1.7.12.1
+1.8.0.2
diff --git a/0025-tcg-optimize-fix-if-else-break-coding-style.patch b/0025-tcg-optimize-fix-if-else-break-coding-style.patch
index ef77b6e..d922bed 100644
--- a/0025-tcg-optimize-fix-if-else-break-coding-style.patch
+++ b/0025-tcg-optimize-fix-if-else-break-coding-style.patch
@@ -140,5 +140,5 @@ index 156e8d9..fba0ed9 100644
nb_call_args = (args[0] >> 16) + (args[0] & 0xffff);
if (!(args[nb_call_args + 1] & (TCG_CALL_CONST | TCG_CALL_PURE))) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0026-target-s390x-avoid-cpu_single_env.patch b/0026-target-s390x-avoid-cpu_single_env.patch
index 2b3e6a4..dbfe5b9 100644
--- a/0026-target-s390x-avoid-cpu_single_env.patch
+++ b/0026-target-s390x-avoid-cpu_single_env.patch
@@ -1333,5 +1333,5 @@ index 66119cd..3214783 100644
num_insns++;
if (env->singlestep_enabled) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0027-target-lm32-switch-to-AREG0-free-mode.patch b/0027-target-lm32-switch-to-AREG0-free-mode.patch
index 9a92a12..72668c5 100644
--- a/0027-target-lm32-switch-to-AREG0-free-mode.patch
+++ b/0027-target-lm32-switch-to-AREG0-free-mode.patch
@@ -278,5 +278,5 @@ index 872a2ba..5f6dcba 100644
num_insns++;
--
-1.7.12.1
+1.8.0.2
diff --git a/0028-target-m68k-switch-to-AREG0-free-mode.patch b/0028-target-m68k-switch-to-AREG0-free-mode.patch
index 220b78d..4e2b518 100644
--- a/0028-target-m68k-switch-to-AREG0-free-mode.patch
+++ b/0028-target-m68k-switch-to-AREG0-free-mode.patch
@@ -498,5 +498,5 @@ index 9fc1e31..10bb303 100644
switch(dc->is_jmp) {
case DISAS_NEXT:
--
-1.7.12.1
+1.8.0.2
diff --git a/0029-target-m68k-avoid-using-cpu_single_env.patch b/0029-target-m68k-avoid-using-cpu_single_env.patch
index 871bbe8..0cb01b5 100644
--- a/0029-target-m68k-avoid-using-cpu_single_env.patch
+++ b/0029-target-m68k-avoid-using-cpu_single_env.patch
@@ -897,5 +897,5 @@ index 10bb303..fb707f2 100644
/* generate intermediate code for basic block 'tb'. */
--
-1.7.12.1
+1.8.0.2
diff --git a/0030-target-unicore32-switch-to-AREG0-free-mode.patch b/0030-target-unicore32-switch-to-AREG0-free-mode.patch
index 4880417..c1fce32 100644
--- a/0030-target-unicore32-switch-to-AREG0-free-mode.patch
+++ b/0030-target-unicore32-switch-to-AREG0-free-mode.patch
@@ -433,5 +433,5 @@ index 188bf8c..b786a6b 100644
/* UniCore instructions class:
--
-1.7.12.1
+1.8.0.2
diff --git a/0031-target-arm-convert-void-helpers.patch b/0031-target-arm-convert-void-helpers.patch
index 3ea4640..8e50813 100644
--- a/0031-target-arm-convert-void-helpers.patch
+++ b/0031-target-arm-convert-void-helpers.patch
@@ -177,5 +177,5 @@ index edef79a..6f651d9 100644
case DISAS_SWI:
gen_exception(EXCP_SWI);
--
-1.7.12.1
+1.8.0.2
diff --git a/0032-target-arm-convert-remaining-helpers.patch b/0032-target-arm-convert-remaining-helpers.patch
index 73dd928..e5a39f4 100644
--- a/0032-target-arm-convert-remaining-helpers.patch
+++ b/0032-target-arm-convert-remaining-helpers.patch
@@ -817,5 +817,5 @@ index 6f651d9..9ae3b26 100644
break;
case 0xc: /* orr */
--
-1.7.12.1
+1.8.0.2
diff --git a/0033-target-arm-final-conversion-to-AREG0-free-mode.patch b/0033-target-arm-final-conversion-to-AREG0-free-mode.patch
index 8a83359..0a3790a 100644
--- a/0033-target-arm-final-conversion-to-AREG0-free-mode.patch
+++ b/0033-target-arm-final-conversion-to-AREG0-free-mode.patch
@@ -175,5 +175,5 @@ index 9ae3b26..f4b447a 100644
switch (insn >> 12) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0034-target-microblaze-switch-to-AREG0-free-mode.patch b/0034-target-microblaze-switch-to-AREG0-free-mode.patch
index fea6bb8..923f524 100644
--- a/0034-target-microblaze-switch-to-AREG0-free-mode.patch
+++ b/0034-target-microblaze-switch-to-AREG0-free-mode.patch
@@ -711,5 +711,5 @@ index 7470149..9c7d77f 100644
} else {
switch(dc->is_jmp) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0035-target-cris-Avoid-AREG0-for-helpers.patch b/0035-target-cris-Avoid-AREG0-for-helpers.patch
index 9314afb..ce3a4fd 100644
--- a/0035-target-cris-Avoid-AREG0-for-helpers.patch
+++ b/0035-target-cris-Avoid-AREG0-for-helpers.patch
@@ -519,5 +519,5 @@ index 3629629..9a39c6a 100644
break;
case CRISV10_REG_DSTEP:
--
-1.7.12.1
+1.8.0.2
diff --git a/0036-target-cris-Switch-to-AREG0-free-mode.patch b/0036-target-cris-Switch-to-AREG0-free-mode.patch
index 1464e22..113ed4b 100644
--- a/0036-target-cris-Switch-to-AREG0-free-mode.patch
+++ b/0036-target-cris-Switch-to-AREG0-free-mode.patch
@@ -1534,5 +1534,5 @@ index 9a39c6a..d2cca89 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0037-target-sh4-switch-to-AREG0-free-mode.patch b/0037-target-sh4-switch-to-AREG0-free-mode.patch
index dbbffb0..31c3ce3 100644
--- a/0037-target-sh4-switch-to-AREG0-free-mode.patch
+++ b/0037-target-sh4-switch-to-AREG0-free-mode.patch
@@ -1056,5 +1056,5 @@ index 6532ad2..d05c74c 100644
switch (ctx.bstate) {
case BS_STOP:
--
-1.7.12.1
+1.8.0.2
diff --git a/0038-target-mips-switch-to-AREG0-free-mode.patch b/0038-target-mips-switch-to-AREG0-free-mode.patch
index 6c8ea5a..95e6466 100644
--- a/0038-target-mips-switch-to-AREG0-free-mode.patch
+++ b/0038-target-mips-switch-to-AREG0-free-mode.patch
@@ -6332,5 +6332,5 @@ index b293419..7ab769f 100644
switch (ctx.bstate) {
case BS_STOP:
--
-1.7.12.1
+1.8.0.2
diff --git a/0039-Remove-unused-CONFIG_TCG_PASS_AREG0-and-dead-code.patch b/0039-Remove-unused-CONFIG_TCG_PASS_AREG0-and-dead-code.patch
index 72c61e8..cfa93c5 100644
--- a/0039-Remove-unused-CONFIG_TCG_PASS_AREG0-and-dead-code.patch
+++ b/0039-Remove-unused-CONFIG_TCG_PASS_AREG0-and-dead-code.patch
@@ -1679,5 +1679,5 @@ index b9ea9dd..ef9b172 100644
qemu_printf("qemu: SIGSEGV pc=0x%08lx address=%08lx w=%d oldset=0x%08lx\n",
pc, address, is_write, *(unsigned long *)old_set);
--
-1.7.12.1
+1.8.0.2
diff --git a/0040-tcg-i386-allow-constants-in-load-store-ops.patch b/0040-tcg-i386-allow-constants-in-load-store-ops.patch
index 0c9066c..e675050 100644
--- a/0040-tcg-i386-allow-constants-in-load-store-ops.patch
+++ b/0040-tcg-i386-allow-constants-in-load-store-ops.patch
@@ -110,5 +110,5 @@ index 34c2df8..3017858 100644
{ INDEX_op_add_i64, { "r", "0", "re" } },
{ INDEX_op_mul_i64, { "r", "0", "re" } },
--
-1.7.12.1
+1.8.0.2
diff --git a/0041-tcg-mark-set_label-with-TCG_OPF_BB_END-flag.patch b/0041-tcg-mark-set_label-with-TCG_OPF_BB_END-flag.patch
index bfab53b..516e728 100644
--- a/0041-tcg-mark-set_label-with-TCG_OPF_BB_END-flag.patch
+++ b/0041-tcg-mark-set_label-with-TCG_OPF_BB_END-flag.patch
@@ -49,5 +49,5 @@ index 8386b70..c002a88 100644
args -= def->nb_args;
break;
--
-1.7.12.1
+1.8.0.2
diff --git a/0042-revert-TCG-fix-copy-propagation.patch b/0042-revert-TCG-fix-copy-propagation.patch
index 9e0a169..809aeef 100644
--- a/0042-revert-TCG-fix-copy-propagation.patch
+++ b/0042-revert-TCG-fix-copy-propagation.patch
@@ -81,5 +81,5 @@ index d710694..8fbbc81 100644
/* If you call tcg_clear_temp_count() at the start of a section of
* code which is not supposed to leak any TCG temporaries, then
--
-1.7.12.1
+1.8.0.2
diff --git a/0043-target-mips-Set-opn-in-gen_ldst_multiple.patch b/0043-target-mips-Set-opn-in-gen_ldst_multiple.patch
index 874c31e..e1b3f22 100644
--- a/0043-target-mips-Set-opn-in-gen_ldst_multiple.patch
+++ b/0043-target-mips-Set-opn-in-gen_ldst_multiple.patch
@@ -51,5 +51,5 @@ index 7ab769f..c31f91c 100644
tcg_temp_free(t0);
tcg_temp_free(t1);
--
-1.7.12.1
+1.8.0.2
diff --git a/0044-target-mips-Fix-MIPS_DEBUG.patch b/0044-target-mips-Fix-MIPS_DEBUG.patch
index 0fa094a..72c05de 100644
--- a/0044-target-mips-Fix-MIPS_DEBUG.patch
+++ b/0044-target-mips-Fix-MIPS_DEBUG.patch
@@ -284,5 +284,5 @@ index c31f91c..4937f6b 100644
case OPC_J ... OPC_JAL: /* Jump */
offset = (int32_t)(ctx->opcode & 0x3FFFFFF) << 2;
--
-1.7.12.1
+1.8.0.2
diff --git a/0045-target-mips-Always-evaluate-debugging-macro-argument.patch b/0045-target-mips-Always-evaluate-debugging-macro-argument.patch
index e424bcf..d32bed4 100644
--- a/0045-target-mips-Always-evaluate-debugging-macro-argument.patch
+++ b/0045-target-mips-Always-evaluate-debugging-macro-argument.patch
@@ -66,5 +66,5 @@ index 4937f6b..aba7935 100644
/* General purpose registers moves. */
static inline void gen_load_gpr (TCGv t, int reg)
--
-1.7.12.1
+1.8.0.2
diff --git a/0046-tcg-optimize-fix-end-of-basic-block-detection.patch b/0046-tcg-optimize-fix-end-of-basic-block-detection.patch
index c498962..345bcab 100644
--- a/0046-tcg-optimize-fix-end-of-basic-block-detection.patch
+++ b/0046-tcg-optimize-fix-end-of-basic-block-detection.patch
@@ -58,5 +58,5 @@ index 10d9773..9da333c 100644
for (i = 0; i < def->nb_args; i++) {
gen_args[i] = args[i];
--
-1.7.12.1
+1.8.0.2
diff --git a/0047-target-xtensa-fix-extui-shift-amount.patch b/0047-target-xtensa-fix-extui-shift-amount.patch
index c654322..f2e209d 100644
--- a/0047-target-xtensa-fix-extui-shift-amount.patch
+++ b/0047-target-xtensa-fix-extui-shift-amount.patch
@@ -53,5 +53,5 @@ index 1900bd5..7a1c528 100644
}
break;
--
-1.7.12.1
+1.8.0.2
diff --git a/0048-target-xtensa-don-t-emit-extra-tcg_gen_goto_tb.patch b/0048-target-xtensa-don-t-emit-extra-tcg_gen_goto_tb.patch
index 2e8e219..f7636fd 100644
--- a/0048-target-xtensa-don-t-emit-extra-tcg_gen_goto_tb.patch
+++ b/0048-target-xtensa-don-t-emit-extra-tcg_gen_goto_tb.patch
@@ -31,5 +31,5 @@ index 7a1c528..b6643eb 100644
return;
--
-1.7.12.1
+1.8.0.2
diff --git a/0049-tcg-Introduce-movcond.patch b/0049-tcg-Introduce-movcond.patch
index 3ead932..2f17299 100644
--- a/0049-tcg-Introduce-movcond.patch
+++ b/0049-tcg-Introduce-movcond.patch
@@ -329,5 +329,5 @@ index 30a0f21..6d89495 100644
/* Offset to user memory in user mode. */
--
-1.7.12.1
+1.8.0.2
diff --git a/0050-target-alpha-Use-movcond.patch b/0050-target-alpha-Use-movcond.patch
index 0bd5272..ebbddcc 100644
--- a/0050-target-alpha-Use-movcond.patch
+++ b/0050-target-alpha-Use-movcond.patch
@@ -156,5 +156,5 @@ index 12de6a3..4a9011a 100644
#define QUAL_RM_N 0x080 /* Round mode nearest even */
--
-1.7.12.1
+1.8.0.2
diff --git a/0051-tcg-i386-Implement-movcond.patch b/0051-tcg-i386-Implement-movcond.patch
index 4d3983f..b979337 100644
--- a/0051-tcg-i386-Implement-movcond.patch
+++ b/0051-tcg-i386-Implement-movcond.patch
@@ -114,5 +114,5 @@ index 504f953..b356d76 100644
#define TCG_TARGET_deposit_i32_valid(ofs, len) \
--
-1.7.12.1
+1.8.0.2
diff --git a/0052-tcg-Optimize-movcond-for-constant-comparisons.patch b/0052-tcg-Optimize-movcond-for-constant-comparisons.patch
index ce0f00b..b5d36e2 100644
--- a/0052-tcg-Optimize-movcond-for-constant-comparisons.patch
+++ b/0052-tcg-Optimize-movcond-for-constant-comparisons.patch
@@ -69,5 +69,5 @@ index 9da333c..26038a6 100644
nb_call_args = (args[0] >> 16) + (args[0] & 0xffff);
if (!(args[nb_call_args + 1] & (TCG_CALL_CONST | TCG_CALL_PURE))) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0053-tcg-Optimize-two-address-commutative-operations.patch b/0053-tcg-Optimize-two-address-commutative-operations.patch
index adacbb8..b142681 100644
--- a/0053-tcg-Optimize-two-address-commutative-operations.patch
+++ b/0053-tcg-Optimize-two-address-commutative-operations.patch
@@ -53,5 +53,5 @@ index 26038a6..1be7631 100644
break;
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0054-gdbstub-sh4-fix-build-with-USE_SOFTFLOAT_STRUCT_TYPE.patch b/0054-gdbstub-sh4-fix-build-with-USE_SOFTFLOAT_STRUCT_TYPE.patch
index 250f893..3c3c71e 100644
--- a/0054-gdbstub-sh4-fix-build-with-USE_SOFTFLOAT_STRUCT_TYPE.patch
+++ b/0054-gdbstub-sh4-fix-build-with-USE_SOFTFLOAT_STRUCT_TYPE.patch
@@ -188,5 +188,5 @@ index 5d37dd9..a91709f 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0055-tcg-Fix-USE_DIRECT_JUMP.patch b/0055-tcg-Fix-USE_DIRECT_JUMP.patch
index 3f88ee8..6a1bb50 100644
--- a/0055-tcg-Fix-USE_DIRECT_JUMP.patch
+++ b/0055-tcg-Fix-USE_DIRECT_JUMP.patch
@@ -31,5 +31,5 @@ index f454107..609ed86 100644
uint16_t *tb_jmp_offset; /* != NULL if USE_DIRECT_JUMP */
--
-1.7.12.1
+1.8.0.2
diff --git a/0056-tcg-hppa-Fix-brcond2-and-setcond2.patch b/0056-tcg-hppa-Fix-brcond2-and-setcond2.patch
index fa1f7cb..26a807a 100644
--- a/0056-tcg-hppa-Fix-brcond2-and-setcond2.patch
+++ b/0056-tcg-hppa-Fix-brcond2-and-setcond2.patch
@@ -104,5 +104,5 @@ index 8b81b70..a76569d 100644
tcg_out_mov(s, TCG_TYPE_I32, ret, scratch);
--
-1.7.12.1
+1.8.0.2
diff --git a/0057-tcg-hppa-Fix-broken-load-store-helpers.patch b/0057-tcg-hppa-Fix-broken-load-store-helpers.patch
index 3666a95..b23c10d 100644
--- a/0057-tcg-hppa-Fix-broken-load-store-helpers.patch
+++ b/0057-tcg-hppa-Fix-broken-load-store-helpers.patch
@@ -245,5 +245,5 @@ index a76569d..5385d45 100644
}
tcg_out_qemu_st_direct(s, datalo_reg, datahi_reg, addrlo_reg, opc);
--
-1.7.12.1
+1.8.0.2
diff --git a/0058-tcg-mips-fix-wrong-usage-of-Z-constraint.patch b/0058-tcg-mips-fix-wrong-usage-of-Z-constraint.patch
index a4e1059..52839e3 100644
--- a/0058-tcg-mips-fix-wrong-usage-of-Z-constraint.patch
+++ b/0058-tcg-mips-fix-wrong-usage-of-Z-constraint.patch
@@ -61,5 +61,5 @@ index 74db83d..9293745 100644
#if TARGET_LONG_BITS == 32
--
-1.7.12.1
+1.8.0.2
diff --git a/0059-tcg-mips-kill-warnings-in-user-mode.patch b/0059-tcg-mips-kill-warnings-in-user-mode.patch
index 96de9cb..3179bcb 100644
--- a/0059-tcg-mips-kill-warnings-in-user-mode.patch
+++ b/0059-tcg-mips-kill-warnings-in-user-mode.patch
@@ -162,5 +162,5 @@ index 9293745..a09c0d6 100644
#if defined(CONFIG_SOFTMMU)
tcg_out_opc_sa(s, OPC_SRL, TCG_REG_A0, addr_regl, TARGET_PAGE_BITS - CPU_TLB_ENTRY_BITS);
--
-1.7.12.1
+1.8.0.2
diff --git a/0060-tcg-mips-use-TCGArg-or-TCGReg-instead-of-int.patch b/0060-tcg-mips-use-TCGArg-or-TCGReg-instead-of-int.patch
index a6eb42f..7bd5d17 100644
--- a/0060-tcg-mips-use-TCGArg-or-TCGReg-instead-of-int.patch
+++ b/0060-tcg-mips-use-TCGArg-or-TCGReg-instead-of-int.patch
@@ -242,5 +242,5 @@ index a09c0d6..8b38f98 100644
#endif
data_regl = *args++;
--
-1.7.12.1
+1.8.0.2
diff --git a/0061-tcg-mips-don-t-use-global-pointer.patch b/0061-tcg-mips-don-t-use-global-pointer.patch
index a9aaf69..27884f8 100644
--- a/0061-tcg-mips-don-t-use-global-pointer.patch
+++ b/0061-tcg-mips-don-t-use-global-pointer.patch
@@ -33,5 +33,5 @@ index 8b38f98..0ea6a76 100644
tcg_add_target_add_op_defs(mips_op_defs);
tcg_set_frame(s, TCG_AREG0, offsetof(CPUArchState, temp_buf),
--
-1.7.12.1
+1.8.0.2
diff --git a/0062-tcg-mips-use-stack-for-TCG-temps.patch b/0062-tcg-mips-use-stack-for-TCG-temps.patch
index 09ea3fb..6be77f1 100644
--- a/0062-tcg-mips-use-stack-for-TCG-temps.patch
+++ b/0062-tcg-mips-use-stack-for-TCG-temps.patch
@@ -43,5 +43,5 @@ index 0ea6a76..c05169f 100644
- CPU_TEMP_BUF_NLONGS * sizeof(long));
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0063-tcg-mips-optimize-brcond-arg-0.patch b/0063-tcg-mips-optimize-brcond-arg-0.patch
index e21fcac..9f5f839 100644
--- a/0063-tcg-mips-optimize-brcond-arg-0.patch
+++ b/0063-tcg-mips-optimize-brcond-arg-0.patch
@@ -95,5 +95,5 @@ index c05169f..6aa4527 100644
case TCG_COND_GTU:
tcg_out_opc_reg(s, OPC_SLTU, TCG_REG_AT, arg2, arg1);
--
-1.7.12.1
+1.8.0.2
diff --git a/0064-tcg-mips-optimize-bswap-16-16s-32-on-MIPS32R2.patch b/0064-tcg-mips-optimize-bswap-16-16s-32-on-MIPS32R2.patch
index 45a881d..b3ca1c3 100644
--- a/0064-tcg-mips-optimize-bswap-16-16s-32-on-MIPS32R2.patch
+++ b/0064-tcg-mips-optimize-bswap-16-16s-32-on-MIPS32R2.patch
@@ -157,5 +157,5 @@ index 9c68a32..c5c13f7 100644
#define TCG_TARGET_HAS_neg_i32 0 /* sub rd, zero, rt */
#define TCG_TARGET_HAS_ext8u_i32 0 /* andi rt, rs, 0xff */
--
-1.7.12.1
+1.8.0.2
diff --git a/0065-tcg-mips-implement-rotl-rotr-ops-on-MIPS32R2.patch b/0065-tcg-mips-implement-rotl-rotr-ops-on-MIPS32R2.patch
index 6134676..78f918c 100644
--- a/0065-tcg-mips-implement-rotl-rotr-ops-on-MIPS32R2.patch
+++ b/0065-tcg-mips-implement-rotl-rotr-ops-on-MIPS32R2.patch
@@ -88,5 +88,5 @@ index c5c13f7..470314c 100644
/* optional instructions automatically implemented */
--
-1.7.12.1
+1.8.0.2
diff --git a/0066-tcg-mips-implement-deposit-op-on-MIPS32R2.patch b/0066-tcg-mips-implement-deposit-op-on-MIPS32R2.patch
index fe54bc0..eb38a58 100644
--- a/0066-tcg-mips-implement-deposit-op-on-MIPS32R2.patch
+++ b/0066-tcg-mips-implement-deposit-op-on-MIPS32R2.patch
@@ -73,5 +73,5 @@ index 470314c..897a737 100644
/* optional instructions automatically implemented */
--
-1.7.12.1
+1.8.0.2
diff --git a/0067-tcg-mips-implement-movcond-op-on-MIPS32R2.patch b/0067-tcg-mips-implement-movcond-op-on-MIPS32R2.patch
index 7f06797..4ecf038 100644
--- a/0067-tcg-mips-implement-movcond-op-on-MIPS32R2.patch
+++ b/0067-tcg-mips-implement-movcond-op-on-MIPS32R2.patch
@@ -136,5 +136,5 @@ index 897a737..d147e70 100644
/* optional instructions only implemented on MIPS32R2 */
#ifdef _MIPS_ARCH_MIPS32R2
--
-1.7.12.1
+1.8.0.2
diff --git a/0068-tcg-optimize-remove-TCG_TEMP_ANY.patch b/0068-tcg-optimize-remove-TCG_TEMP_ANY.patch
index 0702187..2002c81 100644
--- a/0068-tcg-optimize-remove-TCG_TEMP_ANY.patch
+++ b/0068-tcg-optimize-remove-TCG_TEMP_ANY.patch
@@ -58,5 +58,5 @@ index 1be7631..308b7f9 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0069-tcg-optimize-check-types-in-copy-propagation.patch b/0069-tcg-optimize-check-types-in-copy-propagation.patch
index 6627679..e269b63 100644
--- a/0069-tcg-optimize-check-types-in-copy-propagation.patch
+++ b/0069-tcg-optimize-check-types-in-copy-propagation.patch
@@ -74,5 +74,5 @@ index 308b7f9..da8dffe 100644
args += 2;
break;
--
-1.7.12.1
+1.8.0.2
diff --git a/0070-tcg-optimize-rework-copy-progagation.patch b/0070-tcg-optimize-rework-copy-progagation.patch
index ca39c5a..1ddca44 100644
--- a/0070-tcg-optimize-rework-copy-progagation.patch
+++ b/0070-tcg-optimize-rework-copy-progagation.patch
@@ -373,5 +373,5 @@ index da8dffe..1904b39 100644
}
for (i = 0; i < def->nb_args; i++) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0071-tcg-optimize-do-copy-propagation-for-all-operations.patch b/0071-tcg-optimize-do-copy-propagation-for-all-operations.patch
index 62a4efb..e0cd01c 100644
--- a/0071-tcg-optimize-do-copy-propagation-for-all-operations.patch
+++ b/0071-tcg-optimize-do-copy-propagation-for-all-operations.patch
@@ -38,5 +38,5 @@ index 1904b39..aeb2225 100644
if (temps[args[i]].state == TCG_TEMP_COPY) {
args[i] = find_better_copy(s, args[i]);
--
-1.7.12.1
+1.8.0.2
diff --git a/0072-tcg-optimize-optimize-op-r-a-a-mov-r-a.patch b/0072-tcg-optimize-optimize-op-r-a-a-mov-r-a.patch
index 65f5c50..bc92f45 100644
--- a/0072-tcg-optimize-optimize-op-r-a-a-mov-r-a.patch
+++ b/0072-tcg-optimize-optimize-op-r-a-a-mov-r-a.patch
@@ -27,5 +27,5 @@ index aeb2225..b9a7da9 100644
gen_opc_buf[op_index] = INDEX_op_nop;
} else {
--
-1.7.12.1
+1.8.0.2
diff --git a/0073-tcg-optimize-optimize-op-r-a-a-movi-r-0.patch b/0073-tcg-optimize-optimize-op-r-a-a-movi-r-0.patch
index 48ad5fe..32c5222 100644
--- a/0073-tcg-optimize-optimize-op-r-a-a-movi-r-0.patch
+++ b/0073-tcg-optimize-optimize-op-r-a-a-movi-r-0.patch
@@ -42,5 +42,5 @@ index b9a7da9..ceea644 100644
folding. Constants will be substituted to arguments by register
allocator where needed and possible. Also detect copies. */
--
-1.7.12.1
+1.8.0.2
diff --git a/0074-tcg-optimize-further-optimize-brcond-movcond-setcond.patch b/0074-tcg-optimize-further-optimize-brcond-movcond-setcond.patch
index 9b9180d..50401e3 100644
--- a/0074-tcg-optimize-further-optimize-brcond-movcond-setcond.patch
+++ b/0074-tcg-optimize-further-optimize-brcond-movcond-setcond.patch
@@ -188,5 +188,5 @@ index ceea644..abe016a 100644
gen_opc_buf[op_index] = INDEX_op_nop;
} else if (temps[args[4-tmp]].state == TCG_TEMP_CONST) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0075-tcg-optimize-prefer-the-op-a-a-b-form-for-commutativ.patch b/0075-tcg-optimize-prefer-the-op-a-a-b-form-for-commutativ.patch
index 4cb003b..14fcf13 100644
--- a/0075-tcg-optimize-prefer-the-op-a-a-b-form-for-commutativ.patch
+++ b/0075-tcg-optimize-prefer-the-op-a-a-b-form-for-commutativ.patch
@@ -34,5 +34,5 @@ index abe016a..c8ae50b 100644
args[1] = args[2];
args[2] = tmp;
--
-1.7.12.1
+1.8.0.2
diff --git a/0076-tcg-remove-ifdef-endif-around-TCGOpcode-tests.patch b/0076-tcg-remove-ifdef-endif-around-TCGOpcode-tests.patch
index 214a022..c335383 100644
--- a/0076-tcg-remove-ifdef-endif-around-TCGOpcode-tests.patch
+++ b/0076-tcg-remove-ifdef-endif-around-TCGOpcode-tests.patch
@@ -64,5 +64,5 @@ index 24ce830..93421cd 100644
break;
case INDEX_op_debug_insn_start:
--
-1.7.12.1
+1.8.0.2
diff --git a/0077-tcg-optimize-add-constant-folding-for-deposit.patch b/0077-tcg-optimize-add-constant-folding-for-deposit.patch
index 63566ce..14d9783 100644
--- a/0077-tcg-optimize-add-constant-folding-for-deposit.patch
+++ b/0077-tcg-optimize-add-constant-folding-for-deposit.patch
@@ -42,5 +42,5 @@ index c8ae50b..35532a1 100644
tmp = do_constant_folding_cond(op, args[1], args[2], args[3]);
if (tmp != 2) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0078-tcg-README-document-tcg_gen_goto_tb-restrictions.patch b/0078-tcg-README-document-tcg_gen_goto_tb-restrictions.patch
index b47b1f1..3adb4c8 100644
--- a/0078-tcg-README-document-tcg_gen_goto_tb-restrictions.patch
+++ b/0078-tcg-README-document-tcg_gen_goto_tb-restrictions.patch
@@ -29,5 +29,5 @@ index d03ae05..33783ee 100644
* qemu_ld8u t0, t1, flags
qemu_ld8s t0, t1, flags
--
-1.7.12.1
+1.8.0.2
diff --git a/0079-w64-Fix-TCG-helper-functions-with-5-arguments.patch b/0079-w64-Fix-TCG-helper-functions-with-5-arguments.patch
index 3cea914..686f492 100644
--- a/0079-w64-Fix-TCG-helper-functions-with-5-arguments.patch
+++ b/0079-w64-Fix-TCG-helper-functions-with-5-arguments.patch
@@ -53,5 +53,5 @@ index b356d76..ace63ba 100644
/* optional instructions */
#define TCG_TARGET_HAS_div2_i32 1
--
-1.7.12.1
+1.8.0.2
diff --git a/0080-tcg-ppc32-Implement-movcond32.patch b/0080-tcg-ppc32-Implement-movcond32.patch
index 2877379..d992f78 100644
--- a/0080-tcg-ppc32-Implement-movcond32.patch
+++ b/0080-tcg-ppc32-Implement-movcond32.patch
@@ -133,5 +133,5 @@ index 177eea1..3259d89 100644
#define TCG_AREG0 TCG_REG_R27
--
-1.7.12.1
+1.8.0.2
diff --git a/0081-tcg-sparc-Hack-in-qemu_ld-st64-for-32-bit.patch b/0081-tcg-sparc-Hack-in-qemu_ld-st64-for-32-bit.patch
index f84d719..8d2ac6a 100644
--- a/0081-tcg-sparc-Hack-in-qemu_ld-st64-for-32-bit.patch
+++ b/0081-tcg-sparc-Hack-in-qemu_ld-st64-for-32-bit.patch
@@ -26,5 +26,5 @@ index baed3b4..608fc46 100644
{ -1 },
};
--
-1.7.12.1
+1.8.0.2
diff --git a/0082-tcg-sparc-Fix-ADDX-opcode.patch b/0082-tcg-sparc-Fix-ADDX-opcode.patch
index af3a51a..87fbdbc 100644
--- a/0082-tcg-sparc-Fix-ADDX-opcode.patch
+++ b/0082-tcg-sparc-Fix-ADDX-opcode.patch
@@ -23,5 +23,5 @@ index 608fc46..0a19313 100644
#define ARITH_UMUL (INSN_OP(2) | INSN_OP3(0x0a))
#define ARITH_UDIV (INSN_OP(2) | INSN_OP3(0x0e))
--
-1.7.12.1
+1.8.0.2
diff --git a/0083-tcg-sparc-Don-t-MAP_FIXED-on-top-of-the-program.patch b/0083-tcg-sparc-Don-t-MAP_FIXED-on-top-of-the-program.patch
index 3e7946c..3ed5c98 100644
--- a/0083-tcg-sparc-Don-t-MAP_FIXED-on-top-of-the-program.patch
+++ b/0083-tcg-sparc-Don-t-MAP_FIXED-on-top-of-the-program.patch
@@ -41,5 +41,5 @@ index 5834766..871a68a 100644
code_gen_buffer_size = (512 * 1024 * 1024);
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0084-tcg-sparc-Assume-v9-cpu-always-i.e.-force-v8plus-in-.patch b/0084-tcg-sparc-Assume-v9-cpu-always-i.e.-force-v8plus-in-.patch
index a68474a..901d583 100644
--- a/0084-tcg-sparc-Assume-v9-cpu-always-i.e.-force-v8plus-in-.patch
+++ b/0084-tcg-sparc-Assume-v9-cpu-always-i.e.-force-v8plus-in-.patch
@@ -282,5 +282,5 @@ index 93421cd..16c4e1d 100644
(tcg_target_long)sizeof(tcg_target_long) - 1) &
~(sizeof(tcg_target_long) - 1);
--
-1.7.12.1
+1.8.0.2
diff --git a/0085-tcg-sparc-Fix-qemu_ld-st-to-handle-32-bit-host.patch b/0085-tcg-sparc-Fix-qemu_ld-st-to-handle-32-bit-host.patch
index beaf45b..1e6b5e4 100644
--- a/0085-tcg-sparc-Fix-qemu_ld-st-to-handle-32-bit-host.patch
+++ b/0085-tcg-sparc-Fix-qemu_ld-st-to-handle-32-bit-host.patch
@@ -963,5 +963,5 @@ index 23c2fda..d89c19b 100644
};
--
-1.7.12.1
+1.8.0.2
diff --git a/0086-tcg-sparc-Support-GUEST_BASE.patch b/0086-tcg-sparc-Support-GUEST_BASE.patch
index 3e8a175..e1996aa 100644
--- a/0086-tcg-sparc-Support-GUEST_BASE.patch
+++ b/0086-tcg-sparc-Support-GUEST_BASE.patch
@@ -109,5 +109,5 @@ index adca1d2..99e9f57 100644
#define TCG_AREG0 TCG_REG_G2
#elif HOST_LONG_BITS == 64
--
-1.7.12.1
+1.8.0.2
diff --git a/0087-tcg-sparc-Change-AREG0-in-generated-code-to-i0.patch b/0087-tcg-sparc-Change-AREG0-in-generated-code-to-i0.patch
index 336d7fe..ed711b2 100644
--- a/0087-tcg-sparc-Change-AREG0-in-generated-code-to-i0.patch
+++ b/0087-tcg-sparc-Change-AREG0-in-generated-code-to-i0.patch
@@ -47,5 +47,5 @@ index 99e9f57..ee154d0 100644
static inline void flush_icache_range(tcg_target_ulong start,
tcg_target_ulong stop)
--
-1.7.12.1
+1.8.0.2
diff --git a/0088-tcg-sparc-Clean-up-cruft-stemming-from-attempts-to-u.patch b/0088-tcg-sparc-Clean-up-cruft-stemming-from-attempts-to-u.patch
index 15c4571..edef4da 100644
--- a/0088-tcg-sparc-Clean-up-cruft-stemming-from-attempts-to-u.patch
+++ b/0088-tcg-sparc-Clean-up-cruft-stemming-from-attempts-to-u.patch
@@ -199,5 +199,5 @@ index ee154d0..6314ffb 100644
#if TCG_TARGET_REG_BITS == 64
--
-1.7.12.1
+1.8.0.2
diff --git a/0089-tcg-sparc-Mask-shift-immediates-to-avoid-illegal-ins.patch b/0089-tcg-sparc-Mask-shift-immediates-to-avoid-illegal-ins.patch
index 7ce69d1..fdd8142 100644
--- a/0089-tcg-sparc-Mask-shift-immediates-to-avoid-illegal-ins.patch
+++ b/0089-tcg-sparc-Mask-shift-immediates-to-avoid-illegal-ins.patch
@@ -58,5 +58,5 @@ index e625aa3..be5c170 100644
c = ARITH_MULX;
goto gen_arith;
--
-1.7.12.1
+1.8.0.2
diff --git a/0090-tcg-sparc-Use-defines-for-temporaries.patch b/0090-tcg-sparc-Use-defines-for-temporaries.patch
index c837d22..2dbc636 100644
--- a/0090-tcg-sparc-Use-defines-for-temporaries.patch
+++ b/0090-tcg-sparc-Use-defines-for-temporaries.patch
@@ -271,5 +271,5 @@ index be5c170..d401f8e 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0091-tcg-sparc-Add-g-o-registers-to-alloc_order.patch b/0091-tcg-sparc-Add-g-o-registers-to-alloc_order.patch
index 2bf9e95..03d8469 100644
--- a/0091-tcg-sparc-Add-g-o-registers-to-alloc_order.patch
+++ b/0091-tcg-sparc-Add-g-o-registers-to-alloc_order.patch
@@ -40,5 +40,5 @@ index d401f8e..03c385a 100644
static const int tcg_target_call_iarg_regs[6] = {
--
-1.7.12.1
+1.8.0.2
diff --git a/0092-tcg-sparc-Fix-and-enable-direct-TB-chaining.patch b/0092-tcg-sparc-Fix-and-enable-direct-TB-chaining.patch
index 7b876c0..6eea805 100644
--- a/0092-tcg-sparc-Fix-and-enable-direct-TB-chaining.patch
+++ b/0092-tcg-sparc-Fix-and-enable-direct-TB-chaining.patch
@@ -75,5 +75,5 @@ index 03c385a..1db0c9d 100644
+ flush_icache_range(jmp_addr, jmp_addr + 4);
+}
--
-1.7.12.1
+1.8.0.2
diff --git a/0093-tcg-sparc-Preserve-branch-destinations-during-retran.patch b/0093-tcg-sparc-Preserve-branch-destinations-during-retran.patch
index 167dc41..e002185 100644
--- a/0093-tcg-sparc-Preserve-branch-destinations-during-retran.patch
+++ b/0093-tcg-sparc-Preserve-branch-destinations-during-retran.patch
@@ -56,5 +56,5 @@ index 1db0c9d..876da4f 100644
#endif
--
-1.7.12.1
+1.8.0.2
diff --git a/0094-target-alpha-Initialize-env-cpu_model_str.patch b/0094-target-alpha-Initialize-env-cpu_model_str.patch
index 9734b0e..2b0155f 100644
--- a/0094-target-alpha-Initialize-env-cpu_model_str.patch
+++ b/0094-target-alpha-Initialize-env-cpu_model_str.patch
@@ -29,5 +29,5 @@ index 4a9011a..3f9aee1 100644
qemu_init_vcpu(env);
return env;
--
-1.7.12.1
+1.8.0.2
diff --git a/0095-tcg-mips-fix-MIPS32-R2-detection.patch b/0095-tcg-mips-fix-MIPS32-R2-detection.patch
index e145e3b..a31cfdd 100644
--- a/0095-tcg-mips-fix-MIPS32-R2-detection.patch
+++ b/0095-tcg-mips-fix-MIPS32-R2-detection.patch
@@ -89,5 +89,5 @@ index d147e70..7020d65 100644
#define TCG_TARGET_HAS_bswap32_i32 1
#define TCG_TARGET_HAS_rot_i32 1
--
-1.7.12.1
+1.8.0.2
diff --git a/0096-tcg-Adjust-descriptions-of-cond-opcodes.patch b/0096-tcg-Adjust-descriptions-of-cond-opcodes.patch
index 64c62cb..cfe0d8b 100644
--- a/0096-tcg-Adjust-descriptions-of-cond-opcodes.patch
+++ b/0096-tcg-Adjust-descriptions-of-cond-opcodes.patch
@@ -63,5 +63,5 @@ index 33783ee..27846f1 100644
Similar to setcond, except that the 64-bit values T1 and T2 are
formed from two 32-bit arguments. The result is a 32-bit value.
--
-1.7.12.1
+1.8.0.2
diff --git a/0097-tcg-i386-fix-build-with-march-i686.patch b/0097-tcg-i386-fix-build-with-march-i686.patch
index a841086..f8bfc32 100644
--- a/0097-tcg-i386-fix-build-with-march-i686.patch
+++ b/0097-tcg-i386-fix-build-with-march-i686.patch
@@ -30,5 +30,5 @@ index 85c6b81..616ef23 100644
#if TCG_TARGET_REG_BITS == 32
{ INDEX_op_mulu2_i32, { "a", "d", "a", "r" } },
--
-1.7.12.1
+1.8.0.2
diff --git a/0098-tcg-Fix-MAX_OPC_PARAM_IARGS.patch b/0098-tcg-Fix-MAX_OPC_PARAM_IARGS.patch
index dfc44fa..2fca6d4 100644
--- a/0098-tcg-Fix-MAX_OPC_PARAM_IARGS.patch
+++ b/0098-tcg-Fix-MAX_OPC_PARAM_IARGS.patch
@@ -48,5 +48,5 @@ index 1f81da7..6516da0 100644
#define MAX_OPC_PARAM_ARGS (MAX_OPC_PARAM_IARGS + MAX_OPC_PARAM_OARGS)
--
-1.7.12.1
+1.8.0.2
diff --git a/0099-tci-Fix-for-AREG0-free-mode.patch b/0099-tci-Fix-for-AREG0-free-mode.patch
index c67e4a3..31b4673 100644
--- a/0099-tci-Fix-for-AREG0-free-mode.patch
+++ b/0099-tci-Fix-for-AREG0-free-mode.patch
@@ -115,5 +115,5 @@ index ce8a988..a4f7b78 100644
#endif
break;
--
-1.7.12.1
+1.8.0.2
diff --git a/0100-spice-abort-on-invalid-streaming-cmdline-params.patch b/0100-spice-abort-on-invalid-streaming-cmdline-params.patch
index d73d347..67d3d35 100644
--- a/0100-spice-abort-on-invalid-streaming-cmdline-params.patch
+++ b/0100-spice-abort-on-invalid-streaming-cmdline-params.patch
@@ -37,5 +37,5 @@ index 4fc48f8..bb4f585 100644
static const char *compression_names[] = {
[ SPICE_IMAGE_COMPRESS_OFF ] = "off",
--
-1.7.12.1
+1.8.0.2
diff --git a/0101-spice-notify-spice-server-on-vm-start-stop.patch b/0101-spice-notify-spice-server-on-vm-start-stop.patch
index 708bfe0..6e08d98 100644
--- a/0101-spice-notify-spice-server-on-vm-start-stop.patch
+++ b/0101-spice-notify-spice-server-on-vm-start-stop.patch
@@ -51,5 +51,5 @@ index bb4f585..a515c94 100644
g_free(x509_cert_file);
g_free(x509_cacert_file);
--
-1.7.12.1
+1.8.0.2
diff --git a/0102-spice-notify-on-vm-state-change-only-via-spice_serve.patch b/0102-spice-notify-on-vm-state-change-only-via-spice_serve.patch
index c599743..6c96f49 100644
--- a/0102-spice-notify-on-vm-state-change-only-via-spice_serve.patch
+++ b/0102-spice-notify-on-vm-state-change-only-via-spice_serve.patch
@@ -169,5 +169,5 @@ index 12e50b6..672d65e 100644
+#endif
+int qemu_spice_display_is_running(SimpleSpiceDisplay *ssd);
--
-1.7.12.1
+1.8.0.2
diff --git a/0103-spice-migration-add-QEVENT_SPICE_MIGRATE_COMPLETED.patch b/0103-spice-migration-add-QEVENT_SPICE_MIGRATE_COMPLETED.patch
index e8580c2..fbfabaa 100644
--- a/0103-spice-migration-add-QEVENT_SPICE_MIGRATE_COMPLETED.patch
+++ b/0103-spice-migration-add-QEVENT_SPICE_MIGRATE_COMPLETED.patch
@@ -89,5 +89,5 @@ index 1a7a773..851e869 100644
spice_server_migrate_end(spice_server, true);
} else if (migration_has_failed(s)) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0104-spice-add-migrated-flag-to-spice-info.patch b/0104-spice-add-migrated-flag-to-spice-info.patch
index 0247edd..458d912 100644
--- a/0104-spice-add-migrated-flag-to-spice-info.patch
+++ b/0104-spice-add-migrated-flag-to-spice-info.patch
@@ -93,5 +93,5 @@ index 851e869..ab069c5 100644
spice_server_migrate_end(spice_server, true);
} else if (migration_has_failed(s)) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0105-spice-adding-seamless-migration-option-to-the-comman.patch b/0105-spice-adding-seamless-migration-option-to-the-comman.patch
index 70eb7c0..c43d3fb 100644
--- a/0105-spice-adding-seamless-migration-option-to-the-comman.patch
+++ b/0105-spice-adding-seamless-migration-option-to-the-comman.patch
@@ -75,5 +75,5 @@ index ab069c5..ba0d0bd 100644
error_report("failed to initialize spice server");
exit(1);
--
-1.7.12.1
+1.8.0.2
diff --git a/0106-spice-increase-the-verbosity-of-spice-section-in-qem.patch b/0106-spice-increase-the-verbosity-of-spice-section-in-qem.patch
index 24ad9ff..77c0890 100644
--- a/0106-spice-increase-the-verbosity-of-spice-section-in-qem.patch
+++ b/0106-spice-increase-the-verbosity-of-spice-section-in-qem.patch
@@ -46,5 +46,5 @@ index dd7aa63..1af4fec 100644
@item -spice @var{option}[, at var{option}[,...]]
@findex -spice
--
-1.7.12.1
+1.8.0.2
diff --git a/0107-qxl-update_area_io-guest_bug-on-invalid-parameters.patch b/0107-qxl-update_area_io-guest_bug-on-invalid-parameters.patch
index 7572299..341717c 100644
--- a/0107-qxl-update_area_io-guest_bug-on-invalid-parameters.patch
+++ b/0107-qxl-update_area_io-guest_bug-on-invalid-parameters.patch
@@ -36,5 +36,5 @@ index 95bbc03..baf9bb4 100644
cookie = qxl_cookie_new(QXL_COOKIE_TYPE_IO,
QXL_IO_UPDATE_AREA_ASYNC);
--
-1.7.12.1
+1.8.0.2
diff --git a/0108-qxl-add-QXL_IO_MONITORS_CONFIG_ASYNC.patch b/0108-qxl-add-QXL_IO_MONITORS_CONFIG_ASYNC.patch
index 50dbee0..bdfcbe8 100644
--- a/0108-qxl-add-QXL_IO_MONITORS_CONFIG_ASYNC.patch
+++ b/0108-qxl-add-QXL_IO_MONITORS_CONFIG_ASYNC.patch
@@ -323,5 +323,5 @@ index 672d65e..bcff114 100644
typedef struct QXLCookie {
--
-1.7.12.1
+1.8.0.2
diff --git a/0109-configure-print-spice-protocol-and-spice-server-vers.patch b/0109-configure-print-spice-protocol-and-spice-server-vers.patch
index 9e7f529..2990c3f 100644
--- a/0109-configure-print-spice-protocol-and-spice-server-vers.patch
+++ b/0109-configure-print-spice-protocol-and-spice-server-vers.patch
@@ -35,5 +35,5 @@ index b5cea26..d7a948f 100755
echo "xfsctl support $xfs"
echo "nss used $smartcard_nss"
--
-1.7.12.1
+1.8.0.2
diff --git a/0110-fix-doc-of-using-raw-values-with-sendkey.patch b/0110-fix-doc-of-using-raw-values-with-sendkey.patch
index 9e59097..855f817 100644
--- a/0110-fix-doc-of-using-raw-values-with-sendkey.patch
+++ b/0110-fix-doc-of-using-raw-values-with-sendkey.patch
@@ -38,5 +38,5 @@ index 13f28cf..a72614d 100644
sendkey ctrl-alt-f1
@end example
--
-1.7.12.1
+1.8.0.2
diff --git a/0111-qapi-Fix-potential-NULL-pointer-segfault.patch b/0111-qapi-Fix-potential-NULL-pointer-segfault.patch
index 8f15921..ff6d326 100644
--- a/0111-qapi-Fix-potential-NULL-pointer-segfault.patch
+++ b/0111-qapi-Fix-potential-NULL-pointer-segfault.patch
@@ -34,5 +34,5 @@ index 04ef7c4..5b15ee3 100644
if (!err) {
switch ((*obj)->kind) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0112-json-parser-Fix-potential-NULL-pointer-segfault.patch b/0112-json-parser-Fix-potential-NULL-pointer-segfault.patch
index 8198f24..c7737da 100644
--- a/0112-json-parser-Fix-potential-NULL-pointer-segfault.patch
+++ b/0112-json-parser-Fix-potential-NULL-pointer-segfault.patch
@@ -36,5 +36,5 @@ index d42386d..9124649 100644
/* Initialize an object to default values */
#define QOBJECT_INIT(obj, qtype_type) \
--
-1.7.12.1
+1.8.0.2
diff --git a/0113-pcie-drop-version_id-field-for-live-migration.patch b/0113-pcie-drop-version_id-field-for-live-migration.patch
index c3a469f..3f8f0dc 100644
--- a/0113-pcie-drop-version_id-field-for-live-migration.patch
+++ b/0113-pcie-drop-version_id-field-for-live-migration.patch
@@ -75,5 +75,5 @@ index b8ab0c7..4889194 100644
.vmsd = &vmstate_pcie_device, \
.flags = VMS_STRUCT, \
--
-1.7.12.1
+1.8.0.2
diff --git a/0114-pcie_aer-clear-cmask-for-Advanced-Error-Interrupt-Me.patch b/0114-pcie_aer-clear-cmask-for-Advanced-Error-Interrupt-Me.patch
index 80aad2b..e1f0739 100644
--- a/0114-pcie_aer-clear-cmask-for-Advanced-Error-Interrupt-Me.patch
+++ b/0114-pcie_aer-clear-cmask-for-Advanced-Error-Interrupt-Me.patch
@@ -36,5 +36,5 @@ index 3b6981c..b04c164 100644
void pcie_aer_root_reset(PCIDevice *dev)
--
-1.7.12.1
+1.8.0.2
diff --git a/0115-fix-entry-pointer-for-ELF-kernels-loaded-with-kernel.patch b/0115-fix-entry-pointer-for-ELF-kernels-loaded-with-kernel.patch
index 4488d60..02f9105 100644
--- a/0115-fix-entry-pointer-for-ELF-kernels-loaded-with-kernel.patch
+++ b/0115-fix-entry-pointer-for-ELF-kernels-loaded-with-kernel.patch
@@ -38,5 +38,5 @@ index fa65ce2..731a983 100644
rom_add_blob_fixed(label, data, mem_size, addr);
--
-1.7.12.1
+1.8.0.2
diff --git a/0116-lan9118-fix-multicast-filtering.patch b/0116-lan9118-fix-multicast-filtering.patch
index 19cb229..877e6a4 100644
--- a/0116-lan9118-fix-multicast-filtering.patch
+++ b/0116-lan9118-fix-multicast-filtering.patch
@@ -33,5 +33,5 @@ index ff0a50b..ceaf96f 100644
return (s->mac_hashh >> (hash & 0x1f)) & 1;
} else {
--
-1.7.12.1
+1.8.0.2
diff --git a/0117-MIPS-user-Fix-reset-CPU-state-initialization.patch b/0117-MIPS-user-Fix-reset-CPU-state-initialization.patch
index e98d248..427408f 100644
--- a/0117-MIPS-user-Fix-reset-CPU-state-initialization.patch
+++ b/0117-MIPS-user-Fix-reset-CPU-state-initialization.patch
@@ -192,5 +192,5 @@ index aba7935..4e04e97 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0118-Add-MAINTAINERS-entry-for-leon3.patch b/0118-Add-MAINTAINERS-entry-for-leon3.patch
index cbc0ff8..3b14753 100644
--- a/0118-Add-MAINTAINERS-entry-for-leon3.patch
+++ b/0118-Add-MAINTAINERS-entry-for-leon3.patch
@@ -30,5 +30,5 @@ index 6d864c1..61f8b45 100644
-------------
S390 Virtio
--
-1.7.12.1
+1.8.0.2
diff --git a/0119-musicpal-Fix-flash-mapping.patch b/0119-musicpal-Fix-flash-mapping.patch
index 9c95c49..1ec2830 100644
--- a/0119-musicpal-Fix-flash-mapping.patch
+++ b/0119-musicpal-Fix-flash-mapping.patch
@@ -38,5 +38,5 @@ index ad725b5..f305e21 100644
dinfo->bdrv, 0x10000,
(flash_size + 0xffff) >> 16,
--
-1.7.12.1
+1.8.0.2
diff --git a/0120-qemu-Use-valgrind-annotations-to-mark-kvm-guest-memo.patch b/0120-qemu-Use-valgrind-annotations-to-mark-kvm-guest-memo.patch
index 40caa2c..f2b0456 100644
--- a/0120-qemu-Use-valgrind-annotations-to-mark-kvm-guest-memo.patch
+++ b/0120-qemu-Use-valgrind-annotations-to-mark-kvm-guest-memo.patch
@@ -80,5 +80,5 @@ index badf1d8..90c71f9 100644
int ret = qemu_madvise(start, size, QEMU_MADV_DONTFORK);
--
-1.7.12.1
+1.8.0.2
diff --git a/0121-hw-wm8750-Fix-potential-buffer-overflow.patch b/0121-hw-wm8750-Fix-potential-buffer-overflow.patch
index 2b3acbe..36802b7 100644
--- a/0121-hw-wm8750-Fix-potential-buffer-overflow.patch
+++ b/0121-hw-wm8750-Fix-potential-buffer-overflow.patch
@@ -39,5 +39,5 @@ index 11bcec3..44f138f 100644
s->i2c_data[s->i2c_len ++] = data;
if (s->i2c_len != 2)
--
-1.7.12.1
+1.8.0.2
diff --git a/0122-hw-mcf5206-Fix-buffer-overflow-for-MBAR-read-write.patch b/0122-hw-mcf5206-Fix-buffer-overflow-for-MBAR-read-write.patch
index c5fe15f..7f385bd 100644
--- a/0122-hw-mcf5206-Fix-buffer-overflow-for-MBAR-read-write.patch
+++ b/0122-hw-mcf5206-Fix-buffer-overflow-for-MBAR-read-write.patch
@@ -83,5 +83,5 @@ index 539b391..27753e2 100644
}
width = m5206_mbar_width[offset >> 2];
--
-1.7.12.1
+1.8.0.2
diff --git a/0123-use-libexecdir-instead-of-ignoring-it-first-and-rein.patch b/0123-use-libexecdir-instead-of-ignoring-it-first-and-rein.patch
index 9764f22..5020cb2 100644
--- a/0123-use-libexecdir-instead-of-ignoring-it-first-and-rein.patch
+++ b/0123-use-libexecdir-instead-of-ignoring-it-first-and-rein.patch
@@ -1,8 +1,8 @@
From 6762c144443bca8fa97a389289bda7693bd4c8d4 Mon Sep 17 00:00:00 2001
From: Michael Tokarev <mjt at tls.msk.ru>
Date: Thu, 7 Jun 2012 01:11:00 +0400
-Subject: [PATCH] use --libexecdir instead of ignoring it first and
- reinventing it later
+Subject: [PATCH] use --libexecdir instead of ignoring it first and reinventing
+ it later
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -90,5 +90,5 @@ index 8874eff..d01f9dc 100755
echo "ARCH=$ARCH" >> $config_host_mak
if test "$debug_tcg" = "yes" ; then
--
-1.7.12.1
+1.8.0.2
diff --git a/0124-socket-don-t-attempt-to-reconnect-a-TCP-socket-in-se.patch b/0124-socket-don-t-attempt-to-reconnect-a-TCP-socket-in-se.patch
index cff77f8..babe9ee 100644
--- a/0124-socket-don-t-attempt-to-reconnect-a-TCP-socket-in-se.patch
+++ b/0124-socket-don-t-attempt-to-reconnect-a-TCP-socket-in-se.patch
@@ -39,5 +39,5 @@ index 398baf1..767da93 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0125-Add-ability-to-force-enable-disable-of-tools-build.patch b/0125-Add-ability-to-force-enable-disable-of-tools-build.patch
index 35e05ee..c76157c 100644
--- a/0125-Add-ability-to-force-enable-disable-of-tools-build.patch
+++ b/0125-Add-ability-to-force-enable-disable-of-tools-build.patch
@@ -79,5 +79,5 @@ index d01f9dc..a8061c1 100755
# Mac OS X ships with a broken assembler
--
-1.7.12.1
+1.8.0.2
diff --git a/0126-usb-controllers-do-not-need-to-check-for-babble-them.patch b/0126-usb-controllers-do-not-need-to-check-for-babble-them.patch
index 2630139..3ad2a65 100644
--- a/0126-usb-controllers-do-not-need-to-check-for-babble-them.patch
+++ b/0126-usb-controllers-do-not-need-to-check-for-babble-them.patch
@@ -54,5 +54,5 @@ index b0db921..c7c8786 100644
*int_mask |= 0x02;
/* short packet: do not update QH */
--
-1.7.12.1
+1.8.0.2
diff --git a/0127-usb-core-Don-t-set-packet-state-to-complete-on-a-nak.patch b/0127-usb-core-Don-t-set-packet-state-to-complete-on-a-nak.patch
index 1bbaed0..348947d 100644
--- a/0127-usb-core-Don-t-set-packet-state-to-complete-on-a-nak.patch
+++ b/0127-usb-core-Don-t-set-packet-state-to-complete-on-a-nak.patch
@@ -33,5 +33,5 @@ index 2da38e7..be6d936 100644
} else {
ret = USB_RET_ASYNC;
--
-1.7.12.1
+1.8.0.2
diff --git a/0128-usb-core-Add-a-usb_ep_find_packet_by_id-helper-funct.patch b/0128-usb-core-Add-a-usb_ep_find_packet_by_id-helper-funct.patch
index 994e450..c975292 100644
--- a/0128-usb-core-Add-a-usb_ep_find_packet_by_id-helper-funct.patch
+++ b/0128-usb-core-Add-a-usb_ep_find_packet_by_id-helper-funct.patch
@@ -50,5 +50,5 @@ index be6d936..fe431d0 100644
+ return NULL;
+}
--
-1.7.12.1
+1.8.0.2
diff --git a/0129-usb-core-Allow-the-first-packet-of-a-pipelined-ep-to.patch b/0129-usb-core-Allow-the-first-packet-of-a-pipelined-ep-to.patch
index c264ca1..7186113 100644
--- a/0129-usb-core-Allow-the-first-packet-of-a-pipelined-ep-to.patch
+++ b/0129-usb-core-Allow-the-first-packet-of-a-pipelined-ep-to.patch
@@ -31,5 +31,5 @@ index fe431d0..b9f1f7a 100644
p->result = ret;
usb_packet_set_state(p, USB_PACKET_COMPLETE);
--
-1.7.12.1
+1.8.0.2
diff --git a/0130-Revert-ehci-don-t-flush-cache-on-doorbell-rings.patch b/0130-Revert-ehci-don-t-flush-cache-on-doorbell-rings.patch
index ae5d4d3..7600ddb 100644
--- a/0130-Revert-ehci-don-t-flush-cache-on-doorbell-rings.patch
+++ b/0130-Revert-ehci-don-t-flush-cache-on-doorbell-rings.patch
@@ -120,5 +120,5 @@ index 9523247..e7c36f4 100644
default:
--
-1.7.12.1
+1.8.0.2
diff --git a/0131-ehci-Validate-qh-is-not-changed-unexpectedly-by-the-.patch b/0131-ehci-Validate-qh-is-not-changed-unexpectedly-by-the-.patch
index a0b0897..27a76c8 100644
--- a/0131-ehci-Validate-qh-is-not-changed-unexpectedly-by-the-.patch
+++ b/0131-ehci-Validate-qh-is-not-changed-unexpectedly-by-the-.patch
@@ -82,5 +82,5 @@ index e7c36f4..35eb441 100644
q->dev = ehci_find_device(q->ehci, devaddr);
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0132-ehci-Update-copyright-headers-to-reflect-recent-work.patch b/0132-ehci-Update-copyright-headers-to-reflect-recent-work.patch
index 020cb38..e557925 100644
--- a/0132-ehci-Update-copyright-headers-to-reflect-recent-work.patch
+++ b/0132-ehci-Update-copyright-headers-to-reflect-recent-work.patch
@@ -31,5 +31,5 @@ index 35eb441..78a248f 100644
* EHCI project was started by Mark Burkley, with contributions by
* Niels de Vos. David S. Ahern continued working on it. Kevin Wolf,
--
-1.7.12.1
+1.8.0.2
diff --git a/0133-ehci-Properly-cleanup-packets-on-cancel.patch b/0133-ehci-Properly-cleanup-packets-on-cancel.patch
index 1e20c4f..3cdc6a4 100644
--- a/0133-ehci-Properly-cleanup-packets-on-cancel.patch
+++ b/0133-ehci-Properly-cleanup-packets-on-cancel.patch
@@ -25,5 +25,5 @@ index 78a248f..4fe85c8 100644
QTAILQ_REMOVE(&p->queue->packets, p, next);
usb_packet_cleanup(&p->packet);
--
-1.7.12.1
+1.8.0.2
diff --git a/0134-ehci-Properly-report-completed-but-not-yet-processed.patch b/0134-ehci-Properly-report-completed-but-not-yet-processed.patch
index e70d469..430ea91 100644
--- a/0134-ehci-Properly-report-completed-but-not-yet-processed.patch
+++ b/0134-ehci-Properly-report-completed-but-not-yet-processed.patch
@@ -1,8 +1,8 @@
From c7251f2557d09ce4b8466eeccd0f3264c297c515 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Thu, 30 Aug 2012 15:18:24 +0200
-Subject: [PATCH] ehci: Properly report completed but not yet processed
- packets to the guest
+Subject: [PATCH] ehci: Properly report completed but not yet processed packets
+ to the guest
Reported packets which have completed before being cancelled as such to the
host. Note that the new code path this patch adds is untested since it I've
@@ -48,5 +48,5 @@ index 4fe85c8..0a6c9ef 100644
usb_packet_cleanup(&p->packet);
g_free(p);
--
-1.7.12.1
+1.8.0.2
diff --git a/0135-ehci-check-for-EHCI_ASYNC_FINISHED-first-in-ehci_fre.patch b/0135-ehci-check-for-EHCI_ASYNC_FINISHED-first-in-ehci_fre.patch
index f53bbe2..56269e4 100644
--- a/0135-ehci-check-for-EHCI_ASYNC_FINISHED-first-in-ehci_fre.patch
+++ b/0135-ehci-check-for-EHCI_ASYNC_FINISHED-first-in-ehci_fre.patch
@@ -1,8 +1,7 @@
From b3950fe894e2b26f9dba0888af092cb43d01a466 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri, 31 Aug 2012 10:31:54 +0200
-Subject: [PATCH] ehci: check for EHCI_ASYNC_FINISHED first in
- ehci_free_packet
+Subject: [PATCH] ehci: check for EHCI_ASYNC_FINISHED first in ehci_free_packet
Otherwise we'll see the packet free twice in the trace log even though
it actually happens only once.
@@ -46,5 +45,5 @@ index 0a6c9ef..23221d0 100644
usb_packet_cleanup(&p->packet);
g_free(p);
--
-1.7.12.1
+1.8.0.2
diff --git a/0136-ehci-trace-guest-bugs.patch b/0136-ehci-trace-guest-bugs.patch
index 52c2f4a..f93ccca 100644
--- a/0136-ehci-trace-guest-bugs.patch
+++ b/0136-ehci-trace-guest-bugs.patch
@@ -105,5 +105,5 @@ index 8fcbc50..5112a47 100644
# hw/usb/hcd-uhci.c
usb_uhci_reset(void) "=== RESET ==="
--
-1.7.12.1
+1.8.0.2
diff --git a/0137-ehci-add-doorbell-trace-events.patch b/0137-ehci-add-doorbell-trace-events.patch
index 33fb2a2..4b5e7a1 100644
--- a/0137-ehci-add-doorbell-trace-events.patch
+++ b/0137-ehci-add-doorbell-trace-events.patch
@@ -47,5 +47,5 @@ index 5112a47..10bc04e 100644
# hw/usb/hcd-uhci.c
usb_uhci_reset(void) "=== RESET ==="
--
-1.7.12.1
+1.8.0.2
diff --git a/0138-ehci-Add-some-additional-ehci_trace_guest_bug-calls.patch b/0138-ehci-Add-some-additional-ehci_trace_guest_bug-calls.patch
index 8a62ee7..73b4755 100644
--- a/0138-ehci-Add-some-additional-ehci_trace_guest_bug-calls.patch
+++ b/0138-ehci-Add-some-additional-ehci_trace_guest_bug-calls.patch
@@ -84,5 +84,5 @@ index 398f5e0..5a88268 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0139-ehci-Fix-memory-leak-in-handling-of-NAK-ed-packets.patch b/0139-ehci-Fix-memory-leak-in-handling-of-NAK-ed-packets.patch
index b144ab4..d80e373 100644
--- a/0139-ehci-Fix-memory-leak-in-handling-of-NAK-ed-packets.patch
+++ b/0139-ehci-Fix-memory-leak-in-handling-of-NAK-ed-packets.patch
@@ -116,5 +116,5 @@ index 5a88268..d87aca8 100644
break;
case EHCI_ASYNC_FINISHED:
--
-1.7.12.1
+1.8.0.2
diff --git a/0140-ehci-Handle-USB_RET_PROCERR-in-ehci_fill_queue.patch b/0140-ehci-Handle-USB_RET_PROCERR-in-ehci_fill_queue.patch
index 74b2853..b934bd6 100644
--- a/0140-ehci-Handle-USB_RET_PROCERR-in-ehci_fill_queue.patch
+++ b/0140-ehci-Handle-USB_RET_PROCERR-in-ehci_fill_queue.patch
@@ -53,5 +53,5 @@ index d87aca8..2534394 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0141-ehci-Correct-a-comment-in-fetchqtd-packet-processing.patch b/0141-ehci-Correct-a-comment-in-fetchqtd-packet-processing.patch
index 99c1351..99a1f6e 100644
--- a/0141-ehci-Correct-a-comment-in-fetchqtd-packet-processing.patch
+++ b/0141-ehci-Correct-a-comment-in-fetchqtd-packet-processing.patch
@@ -33,5 +33,5 @@ index 2534394..2f3e9c0 100644
break;
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0142-usb-redir-Never-return-USB_RET_NAK-for-async-handled.patch b/0142-usb-redir-Never-return-USB_RET_NAK-for-async-handled.patch
index f2723ac..4506477 100644
--- a/0142-usb-redir-Never-return-USB_RET_NAK-for-async-handled.patch
+++ b/0142-usb-redir-Never-return-USB_RET_NAK-for-async-handled.patch
@@ -1,8 +1,7 @@
From 262c9bb1e59c2cd561dad1cf9d47c50f07af0e0f Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Fri, 17 Aug 2012 17:27:08 +0200
-Subject: [PATCH] usb-redir: Never return USB_RET_NAK for async handled
- packets
+Subject: [PATCH] usb-redir: Never return USB_RET_NAK for async handled packets
USB_RET_NAK is not a valid response for async handled packets (and will
trigger an assert as such).
@@ -43,5 +42,5 @@ index 10b4fbb..7f3719b 100644
return USB_RET_BABBLE;
case usb_redir_ioerror:
--
-1.7.12.1
+1.8.0.2
diff --git a/0143-usb-redir-Don-t-delay-handling-of-open-events-to-a-b.patch b/0143-usb-redir-Don-t-delay-handling-of-open-events-to-a-b.patch
index 33f3ae9..e38ae3d 100644
--- a/0143-usb-redir-Don-t-delay-handling-of-open-events-to-a-b.patch
+++ b/0143-usb-redir-Don-t-delay-handling-of-open-events-to-a-b.patch
@@ -180,5 +180,5 @@ index 7f3719b..5cc3334 100644
qemu_del_timer(dev->attach_timer);
qemu_free_timer(dev->attach_timer);
--
-1.7.12.1
+1.8.0.2
diff --git a/0144-usb-redir-Get-rid-of-async-struct-get-member.patch b/0144-usb-redir-Get-rid-of-async-struct-get-member.patch
index 7ac41ee..9eaadb9 100644
--- a/0144-usb-redir-Get-rid-of-async-struct-get-member.patch
+++ b/0144-usb-redir-Get-rid-of-async-struct-get-member.patch
@@ -72,5 +72,5 @@ index 5cc3334..2cae8c5 100644
len = 1;
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0145-usb-redir-Get-rid-of-local-shadow-copy-of-packet-hea.patch b/0145-usb-redir-Get-rid-of-local-shadow-copy-of-packet-hea.patch
index eb581df..f9403bb 100644
--- a/0145-usb-redir-Get-rid-of-local-shadow-copy-of-packet-hea.patch
+++ b/0145-usb-redir-Get-rid-of-local-shadow-copy-of-packet-hea.patch
@@ -105,5 +105,5 @@ index 2cae8c5..e4ef372 100644
aurb->packet->result = usbredir_handle_status(dev,
interrupt_packet->status, len);
--
-1.7.12.1
+1.8.0.2
diff --git a/0146-usb-redir-Get-rid-of-unused-async-struct-dev-member.patch b/0146-usb-redir-Get-rid-of-unused-async-struct-dev-member.patch
index 18c7c1f..20cab1e 100644
--- a/0146-usb-redir-Get-rid-of-unused-async-struct-dev-member.patch
+++ b/0146-usb-redir-Get-rid-of-unused-async-struct-dev-member.patch
@@ -37,5 +37,5 @@ index e4ef372..6593d50 100644
aurb->packet_id = dev->packet_id;
QTAILQ_INSERT_TAIL(&dev->asyncq, aurb, next);
--
-1.7.12.1
+1.8.0.2
diff --git a/0147-usb-redir-Move-to-core-packet-id-and-queue-handling.patch b/0147-usb-redir-Move-to-core-packet-id-and-queue-handling.patch
index f32e6cc..a99b211 100644
--- a/0147-usb-redir-Move-to-core-packet-id-and-queue-handling.patch
+++ b/0147-usb-redir-Move-to-core-packet-id-and-queue-handling.patch
@@ -498,5 +498,5 @@ index 6593d50..fd1f8cc 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0148-usb-redir-Return-babble-when-getting-more-bulk-data-.patch b/0148-usb-redir-Return-babble-when-getting-more-bulk-data-.patch
index 4c4e98b..ee4691f 100644
--- a/0148-usb-redir-Return-babble-when-getting-more-bulk-data-.patch
+++ b/0148-usb-redir-Return-babble-when-getting-more-bulk-data-.patch
@@ -33,5 +33,5 @@ index fd1f8cc..ee75217 100644
}
p->result = len;
--
-1.7.12.1
+1.8.0.2
diff --git a/0149-Better-name-usb-braille-device.patch b/0149-Better-name-usb-braille-device.patch
index 00c8599..26c4728 100644
--- a/0149-Better-name-usb-braille-device.patch
+++ b/0149-Better-name-usb-braille-device.patch
@@ -29,5 +29,5 @@ index 8aa6552..69b6e48 100644
};
--
-1.7.12.1
+1.8.0.2
diff --git a/0150-usb-audio-fix-usb-version.patch b/0150-usb-audio-fix-usb-version.patch
index ceeb70d..7170c9f 100644
--- a/0150-usb-audio-fix-usb-version.patch
+++ b/0150-usb-audio-fix-usb-version.patch
@@ -28,5 +28,5 @@ index 79b75fb..2594c78 100644
.bNumConfigurations = 1,
.confs = (USBDescConfig[]) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0151-xhci-rip-out-background-transfer-code.patch b/0151-xhci-rip-out-background-transfer-code.patch
index e728029..1622c3a 100644
--- a/0151-xhci-rip-out-background-transfer-code.patch
+++ b/0151-xhci-rip-out-background-transfer-code.patch
@@ -323,5 +323,5 @@ index 3eb27fa..c0a2476 100644
}
length = xhci_ring_chain_length(xhci, &epctx->ring);
--
-1.7.12.1
+1.8.0.2
diff --git a/0152-xhci-drop-buffering.patch b/0152-xhci-drop-buffering.patch
index af60c86..210e4ea 100644
--- a/0152-xhci-drop-buffering.patch
+++ b/0152-xhci-drop-buffering.patch
@@ -382,5 +382,5 @@ index 10bc04e..c83d65e 100644
usb_xhci_xfer_nak(void *xfer) "%p"
usb_xhci_xfer_retry(void *xfer) "%p"
--
-1.7.12.1
+1.8.0.2
diff --git a/0153-xhci-fix-runtime-write-tracepoint.patch b/0153-xhci-fix-runtime-write-tracepoint.patch
index 133df2e..af2878a 100644
--- a/0153-xhci-fix-runtime-write-tracepoint.patch
+++ b/0153-xhci-fix-runtime-write-tracepoint.patch
@@ -25,5 +25,5 @@ index 446d692..24b1f87 100644
switch (reg) {
case 0x20: /* IMAN */
--
-1.7.12.1
+1.8.0.2
diff --git a/0154-xhci-allow-bytewise-capability-register-reads.patch b/0154-xhci-allow-bytewise-capability-register-reads.patch
index 0870f14..5f733da 100644
--- a/0154-xhci-allow-bytewise-capability-register-reads.patch
+++ b/0154-xhci-allow-bytewise-capability-register-reads.patch
@@ -35,5 +35,5 @@ index 24b1f87..333df59 100644
};
--
-1.7.12.1
+1.8.0.2
diff --git a/0155-qxl-dont-update-invalid-area.patch b/0155-qxl-dont-update-invalid-area.patch
index 902566d..01d79db 100644
--- a/0155-qxl-dont-update-invalid-area.patch
+++ b/0155-qxl-dont-update-invalid-area.patch
@@ -40,5 +40,5 @@ index 27f3779..038a8bb 100644
cookie = qxl_cookie_new(QXL_COOKIE_TYPE_IO,
QXL_IO_UPDATE_AREA_ASYNC);
--
-1.7.12.1
+1.8.0.2
diff --git a/0156-usb-host-allow-emulated-non-async-control-requests-w.patch b/0156-usb-host-allow-emulated-non-async-control-requests-w.patch
index 11fcb3f..72b7216 100644
--- a/0156-usb-host-allow-emulated-non-async-control-requests-w.patch
+++ b/0156-usb-host-allow-emulated-non-async-control-requests-w.patch
@@ -1,8 +1,8 @@
From e84037892a04dac64104b43d0a6342aee4c4e6f4 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu, 6 Sep 2012 12:03:41 +0200
-Subject: [PATCH] usb-host: allow emulated (non-async) control requests
- without USBPacket
+Subject: [PATCH] usb-host: allow emulated (non-async) control requests without
+ USBPacket
xhci needs this for USB_REQ_SET_ADDRESS due to the way
usb addressing is handled by the xhci hardware.
@@ -36,5 +36,5 @@ index 8df9207..44f1a64 100644
if (length > sizeof(dev->data_buf)) {
fprintf(stderr, "husb: ctrl buffer too small (%d > %zu)\n",
--
-1.7.12.1
+1.8.0.2
diff --git a/0157-qxl-better-cleanup-for-surface-destroy.patch b/0157-qxl-better-cleanup-for-surface-destroy.patch
index b796173..090e57b 100644
--- a/0157-qxl-better-cleanup-for-surface-destroy.patch
+++ b/0157-qxl-better-cleanup-for-surface-destroy.patch
@@ -31,5 +31,5 @@ index 038a8bb..67f7100 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0158-ehci-switch-to-new-style-memory-ops.patch b/0158-ehci-switch-to-new-style-memory-ops.patch
index 4932df4..00e00dc 100644
--- a/0158-ehci-switch-to-new-style-memory-ops.patch
+++ b/0158-ehci-switch-to-new-style-memory-ops.patch
@@ -366,5 +366,5 @@ index c83d65e..cf05414 100644
usb_ehci_state(const char *schedule, const char *state) "%s schedule %s"
usb_ehci_qh_ptrs(void *q, uint32_t addr, uint32_t nxt, uint32_t c_qtd, uint32_t n_qtd, uint32_t a_qtd) "q %p - QH @ %08x: next %08x qtds %08x,%08x,%08x"
--
-1.7.12.1
+1.8.0.2
diff --git a/0159-ehci-Fix-interrupts-stopping-when-Interrupt-Threshol.patch b/0159-ehci-Fix-interrupts-stopping-when-Interrupt-Threshol.patch
index bd8d88b..c92665f 100644
--- a/0159-ehci-Fix-interrupts-stopping-when-Interrupt-Threshol.patch
+++ b/0159-ehci-Fix-interrupts-stopping-when-Interrupt-Threshol.patch
@@ -34,5 +34,5 @@ index f5ba8e1..54273d7 100644
} else {
ehci->usbsts_frindex = 0;
--
-1.7.12.1
+1.8.0.2
diff --git a/0160-ehci-Don-t-process-too-much-frames-in-1-timer-tick-v.patch b/0160-ehci-Don-t-process-too-much-frames-in-1-timer-tick-v.patch
index f0a4b00..0825bfc 100644
--- a/0160-ehci-Don-t-process-too-much-frames-in-1-timer-tick-v.patch
+++ b/0160-ehci-Don-t-process-too-much-frames-in-1-timer-tick-v.patch
@@ -56,5 +56,5 @@ index 54273d7..017a01d 100644
ehci_advance_periodic_state(ehci);
ehci->last_run_ns += FRAME_TIMER_NS;
--
-1.7.12.1
+1.8.0.2
diff --git a/0161-sheepdog-fix-savevm-and-loadvm.patch b/0161-sheepdog-fix-savevm-and-loadvm.patch
index f85cc0b..01e836a 100644
--- a/0161-sheepdog-fix-savevm-and-loadvm.patch
+++ b/0161-sheepdog-fix-savevm-and-loadvm.patch
@@ -37,5 +37,5 @@ index df4f441..e0753ee 100644
}
ret = size;
--
-1.7.12.1
+1.8.0.2
diff --git a/0162-ide-Fix-error-messages-from-static-code-analysis-no-.patch b/0162-ide-Fix-error-messages-from-static-code-analysis-no-.patch
index 62a21ce..9ace08e 100644
--- a/0162-ide-Fix-error-messages-from-static-code-analysis-no-.patch
+++ b/0162-ide-Fix-error-messages-from-static-code-analysis-no-.patch
@@ -63,5 +63,5 @@ index d65ef3d..d6fb69c 100644
for(i = 0; i < 11; i++) {
s->io_buffer[2+i+(n*12)] = smart_attributes[n][i];
--
-1.7.12.1
+1.8.0.2
diff --git a/0163-block-curl-Fix-wrong-free-statement.patch b/0163-block-curl-Fix-wrong-free-statement.patch
index a37ad7f..4ee0e8d 100644
--- a/0163-block-curl-Fix-wrong-free-statement.patch
+++ b/0163-block-curl-Fix-wrong-free-statement.patch
@@ -33,5 +33,5 @@ index e7c3634..c1074cd 100644
static int64_t curl_getlength(BlockDriverState *bs)
--
-1.7.12.1
+1.8.0.2
diff --git a/0164-vdi-Fix-warning-from-clang.patch b/0164-vdi-Fix-warning-from-clang.patch
index c8e751d..fbefc69 100644
--- a/0164-vdi-Fix-warning-from-clang.patch
+++ b/0164-vdi-Fix-warning-from-clang.patch
@@ -71,5 +71,5 @@ index c4f1529..550cf58 100644
if (ftruncate(fd, sizeof(header) + bmap_size + blocks * block_size)) {
result = -errno;
--
-1.7.12.1
+1.8.0.2
diff --git a/0165-block-fix-block-tray-status.patch b/0165-block-fix-block-tray-status.patch
index 6db09b8..47861e3 100644
--- a/0165-block-fix-block-tray-status.patch
+++ b/0165-block-fix-block-tray-status.patch
@@ -32,5 +32,5 @@ index 470bdcc..c754353 100644
if (bs->io_limits_enabled) {
bdrv_io_limits_disable(bs);
--
-1.7.12.1
+1.8.0.2
diff --git a/0166-ahci-properly-reset-PxCMD-on-HBA-reset.patch b/0166-ahci-properly-reset-PxCMD-on-HBA-reset.patch
index ad2d6b5..e496d34 100644
--- a/0166-ahci-properly-reset-PxCMD-on-HBA-reset.patch
+++ b/0166-ahci-properly-reset-PxCMD-on-HBA-reset.patch
@@ -60,5 +60,5 @@ index 5ea3cad..68671bc 100644
}
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0167-Don-t-require-encryption-password-for-qemu-img-info-.patch b/0167-Don-t-require-encryption-password-for-qemu-img-info-.patch
index 6b9d67f..f44ff81 100644
--- a/0167-Don-t-require-encryption-password-for-qemu-img-info-.patch
+++ b/0167-Don-t-require-encryption-password-for-qemu-img-info-.patch
@@ -1,8 +1,7 @@
From 4812a358ff2d7442c33a517a6c80d7d3c301ec56 Mon Sep 17 00:00:00 2001
From: "Daniel P. Berrange" <berrange at redhat.com>
Date: Mon, 10 Sep 2012 12:11:31 +0100
-Subject: [PATCH] Don't require encryption password for 'qemu-img info'
- command
+Subject: [PATCH] Don't require encryption password for 'qemu-img info' command
The encryption password is only required if I/O is going to be
performed on a disk image. The 'qemu-img info' command merely
@@ -117,5 +116,5 @@ index b41e670..0d208e8 100644
ret = -1;
goto out;
--
-1.7.12.1
+1.8.0.2
diff --git a/0168-block-Don-t-forget-to-delete-temporary-file.patch b/0168-block-Don-t-forget-to-delete-temporary-file.patch
index 90d07b9..4eef95e 100644
--- a/0168-block-Don-t-forget-to-delete-temporary-file.patch
+++ b/0168-block-Don-t-forget-to-delete-temporary-file.patch
@@ -32,5 +32,5 @@ index c754353..e78039b 100644
}
return 0;
--
-1.7.12.1
+1.8.0.2
diff --git a/0169-hw-qxl-tracing-fixes.patch b/0169-hw-qxl-tracing-fixes.patch
index 74c400f..11c1085 100644
--- a/0169-hw-qxl-tracing-fixes.patch
+++ b/0169-hw-qxl-tracing-fixes.patch
@@ -95,5 +95,5 @@ index cf05414..aa79836 100644
# hw/qxl-render.c
qxl_render_blit_guest_primary_initialized(void) ""
--
-1.7.12.1
+1.8.0.2
diff --git a/0170-configure-usbredir-fixes.patch b/0170-configure-usbredir-fixes.patch
index cf87afa..f896be4 100644
--- a/0170-configure-usbredir-fixes.patch
+++ b/0170-configure-usbredir-fixes.patch
@@ -32,5 +32,5 @@ index a8061c1..dcd8e7b 100755
if test "$usb_redir" = "yes"; then
feature_not_found "usb-redir"
--
-1.7.12.1
+1.8.0.2
diff --git a/0171-ehci-Don-t-set-seen-to-0-when-removing-unseen-queue-.patch b/0171-ehci-Don-t-set-seen-to-0-when-removing-unseen-queue-.patch
index de9f4ac..438e18e 100644
--- a/0171-ehci-Don-t-set-seen-to-0-when-removing-unseen-queue-.patch
+++ b/0171-ehci-Don-t-set-seen-to-0-when-removing-unseen-queue-.patch
@@ -100,5 +100,5 @@ index 017a01d..bc86460 100644
default:
--
-1.7.12.1
+1.8.0.2
diff --git a/0172-ehci-Walk-async-schedule-before-and-after-migration.patch b/0172-ehci-Walk-async-schedule-before-and-after-migration.patch
index 476e41e..882a426 100644
--- a/0172-ehci-Walk-async-schedule-before-and-after-migration.patch
+++ b/0172-ehci-Walk-async-schedule-before-and-after-migration.patch
@@ -66,5 +66,5 @@ index bc86460..6a5da84 100644
memory_region_init(&s->mem, "ehci", MMIO_SIZE);
memory_region_init_io(&s->mem_caps, &ehci_mmio_caps_ops, s,
--
-1.7.12.1
+1.8.0.2
diff --git a/0173-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch b/0173-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
index 11125f2..2d13524 100644
--- a/0173-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
+++ b/0173-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
@@ -59,5 +59,5 @@ index ee75217..ab8d79a 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0174-uhci-Don-t-queue-up-packets-after-one-with-the-SPD-f.patch b/0174-uhci-Don-t-queue-up-packets-after-one-with-the-SPD-f.patch
index a135563..95ee36e 100644
--- a/0174-uhci-Don-t-queue-up-packets-after-one-with-the-SPD-f.patch
+++ b/0174-uhci-Don-t-queue-up-packets-after-one-with-the-SPD-f.patch
@@ -43,5 +43,5 @@ index c7c8786..cdc8bc3 100644
}
link = curr_qh ? qh.link : td.link;
--
-1.7.12.1
+1.8.0.2
diff --git a/0175-slirp-Remove-wrong-type-casts-ins-debug-statements.patch b/0175-slirp-Remove-wrong-type-casts-ins-debug-statements.patch
index 365d586..c34a7a5 100644
--- a/0175-slirp-Remove-wrong-type-casts-ins-debug-statements.patch
+++ b/0175-slirp-Remove-wrong-type-casts-ins-debug-statements.patch
@@ -33,5 +33,5 @@ index 025b374..5890d7a 100644
DEBUG_ARG("seq = %u", seq);
DEBUG_ARG("flags = %x", flags);
--
-1.7.12.1
+1.8.0.2
diff --git a/0176-slirp-Fix-error-reported-by-static-code-analysis.patch b/0176-slirp-Fix-error-reported-by-static-code-analysis.patch
index 7f2a90a..d85c027 100644
--- a/0176-slirp-Fix-error-reported-by-static-code-analysis.patch
+++ b/0176-slirp-Fix-error-reported-by-static-code-analysis.patch
@@ -33,5 +33,5 @@ index 5890d7a..1542e43 100644
tlen = 0;
m->m_data += IF_MAXLINKHDR;
--
-1.7.12.1
+1.8.0.2
diff --git a/0177-slirp-improve-TFTP-performance.patch b/0177-slirp-improve-TFTP-performance.patch
index 65dce5d..f7124da 100644
--- a/0177-slirp-improve-TFTP-performance.patch
+++ b/0177-slirp-improve-TFTP-performance.patch
@@ -102,5 +102,5 @@ index 72e5e91..9c364ea 100644
struct in_addr client_ip;
uint16_t client_port;
--
-1.7.12.1
+1.8.0.2
diff --git a/0178-slirp-Handle-more-than-65535-blocks-in-TFTP-transfer.patch b/0178-slirp-Handle-more-than-65535-blocks-in-TFTP-transfer.patch
index 0a87572..d5bbebb 100644
--- a/0178-slirp-Handle-more-than-65535-blocks-in-TFTP-transfer.patch
+++ b/0178-slirp-Handle-more-than-65535-blocks-in-TFTP-transfer.patch
@@ -117,5 +117,5 @@ index 9c364ea..51704e4 100644
int timestamp;
};
--
-1.7.12.1
+1.8.0.2
diff --git a/0179-slirp-Implement-TFTP-Blocksize-option.patch b/0179-slirp-Implement-TFTP-Blocksize-option.patch
index 38ebba3..08a6554 100644
--- a/0179-slirp-Implement-TFTP-Blocksize-option.patch
+++ b/0179-slirp-Implement-TFTP-Blocksize-option.patch
@@ -119,5 +119,5 @@ index c6a5df2..37b0387 100644
tftp_send_next_block(spt, tp);
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0180-srp-Don-t-use-QEMU_PACKED-for-single-elements-of-a-s.patch b/0180-srp-Don-t-use-QEMU_PACKED-for-single-elements-of-a-s.patch
index 00cb718..ccad49f 100644
--- a/0180-srp-Don-t-use-QEMU_PACKED-for-single-elements-of-a-s.patch
+++ b/0180-srp-Don-t-use-QEMU_PACKED-for-single-elements-of-a-s.patch
@@ -59,5 +59,5 @@ index 3009bd5..5e0cad5 100644
enum {
SRP_RSP_FLAG_RSPVALID = 1 << 0,
--
-1.7.12.1
+1.8.0.2
diff --git a/0181-Spelling-fixes-in-comments-and-documentation.patch b/0181-Spelling-fixes-in-comments-and-documentation.patch
index 5b696ed..676fbc4 100644
--- a/0181-Spelling-fixes-in-comments-and-documentation.patch
+++ b/0181-Spelling-fixes-in-comments-and-documentation.patch
@@ -179,5 +179,5 @@ index 6b42e35..360543b 100644
Only the formats @code{qcow2}, @code{qed} and @code{vdi} support
consistency checks.
--
-1.7.12.1
+1.8.0.2
diff --git a/0182-console-Clean-up-bytes-per-pixel-calculation.patch b/0182-console-Clean-up-bytes-per-pixel-calculation.patch
index 7815a2d..a7705ea 100644
--- a/0182-console-Clean-up-bytes-per-pixel-calculation.patch
+++ b/0182-console-Clean-up-bytes-per-pixel-calculation.patch
@@ -47,5 +47,5 @@ index 3b5cabb..8b5e21d 100644
pf.gmask = 0x000003E0;
pf.bmask = 0x0000001F;
--
-1.7.12.1
+1.8.0.2
diff --git a/0183-qapi-Fix-enumeration-typo-error.patch b/0183-qapi-Fix-enumeration-typo-error.patch
index 8fc3e9f..ec44860 100644
--- a/0183-qapi-Fix-enumeration-typo-error.patch
+++ b/0183-qapi-Fix-enumeration-typo-error.patch
@@ -50,5 +50,5 @@ index 8ddde12..29dacb5 100644
# @client: Mouse cursor position is determined by the client.
#
--
-1.7.12.1
+1.8.0.2
diff --git a/0184-kvm-Fix-warning-from-static-code-analysis.patch b/0184-kvm-Fix-warning-from-static-code-analysis.patch
index 87ad81d..b31cc6d 100644
--- a/0184-kvm-Fix-warning-from-static-code-analysis.patch
+++ b/0184-kvm-Fix-warning-from-static-code-analysis.patch
@@ -45,5 +45,5 @@ index 90c71f9..08d6051 100644
g_free(s);
--
-1.7.12.1
+1.8.0.2
diff --git a/0185-arch_init.c-add-missing-symbols-before-PRIu64-in-deb.patch b/0185-arch_init.c-add-missing-symbols-before-PRIu64-in-deb.patch
index 7fcc366..a4b0068 100644
--- a/0185-arch_init.c-add-missing-symbols-before-PRIu64-in-deb.patch
+++ b/0185-arch_init.c-add-missing-symbols-before-PRIu64-in-deb.patch
@@ -50,5 +50,5 @@ index 5a1173e..47977de 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0186-net-notify-iothread-after-flushing-queue.patch b/0186-net-notify-iothread-after-flushing-queue.patch
index b6a9f65..7a5625d 100644
--- a/0186-net-notify-iothread-after-flushing-queue.patch
+++ b/0186-net-notify-iothread-after-flushing-queue.patch
@@ -101,5 +101,5 @@ index 9d44a9b..fc02b33 100644
#endif /* QEMU_NET_QUEUE_H */
--
-1.7.12.1
+1.8.0.2
diff --git a/0187-e1000-flush-queue-whenever-can_receive-can-go-from-f.patch b/0187-e1000-flush-queue-whenever-can_receive-can-go-from-f.patch
index 9d61ff8..da0e2a3 100644
--- a/0187-e1000-flush-queue-whenever-can_receive-can-go-from-f.patch
+++ b/0187-e1000-flush-queue-whenever-can_receive-can-go-from-f.patch
@@ -47,5 +47,5 @@ index ae8a6c5..ec3a7c4 100644
static void
--
-1.7.12.1
+1.8.0.2
diff --git a/0188-xen-flush-queue-when-getting-an-event.patch b/0188-xen-flush-queue-when-getting-an-event.patch
index 6c52eb4..e01d7fa 100644
--- a/0188-xen-flush-queue-when-getting-an-event.patch
+++ b/0188-xen-flush-queue-when-getting-an-event.patch
@@ -33,5 +33,5 @@ index 8b79bfb..cf7d559 100644
static int net_free(struct XenDevice *xendev)
--
-1.7.12.1
+1.8.0.2
diff --git a/0189-eepro100-Fix-network-hang-when-rx-buffers-run-out.patch b/0189-eepro100-Fix-network-hang-when-rx-buffers-run-out.patch
index 4e2df82..cdb886a 100644
--- a/0189-eepro100-Fix-network-hang-when-rx-buffers-run-out.patch
+++ b/0189-eepro100-Fix-network-hang-when-rx-buffers-run-out.patch
@@ -68,5 +68,5 @@ index 50d117e..5b23116 100644
if (rfd_command & COMMAND_S) {
/* S bit is set. */
--
-1.7.12.1
+1.8.0.2
diff --git a/0190-net-add-receive_disabled-logic-to-iov-delivery-path.patch b/0190-net-add-receive_disabled-logic-to-iov-delivery-path.patch
index f94a29e..fdb1ad8 100644
--- a/0190-net-add-receive_disabled-logic-to-iov-delivery-path.patch
+++ b/0190-net-add-receive_disabled-logic-to-iov-delivery-path.patch
@@ -61,5 +61,5 @@ index 76a8336..1303819 100644
ssize_t qemu_sendv_packet_async(NetClientState *sender,
--
-1.7.12.1
+1.8.0.2
diff --git a/0191-net-do-not-report-queued-packets-as-sent.patch b/0191-net-do-not-report-queued-packets-as-sent.patch
index b6deca0..4ebde09 100644
--- a/0191-net-do-not-report-queued-packets-as-sent.patch
+++ b/0191-net-do-not-report-queued-packets-as-sent.patch
@@ -99,5 +99,5 @@ index 6e64091..254f280 100644
ret = qemu_net_queue_deliver_iov(queue, sender, flags, iov, iovcnt);
--
-1.7.12.1
+1.8.0.2
diff --git a/0192-net-add-netdev-options-to-man-page.patch b/0192-net-add-netdev-options-to-man-page.patch
index b0272da..e2585d5 100644
--- a/0192-net-add-netdev-options-to-man-page.patch
+++ b/0192-net-add-netdev-options-to-man-page.patch
@@ -77,5 +77,5 @@ index 1af4fec..1021ab7 100644
Connect VLAN @var{n} to PORT @var{n} of a vde switch running on host and
listening for incoming connections on @var{socketpath}. Use GROUP @var{groupname}
--
-1.7.12.1
+1.8.0.2
diff --git a/0193-net-clean-up-usbnet_receive.patch b/0193-net-clean-up-usbnet_receive.patch
index c92890e..e86c6bb 100644
--- a/0193-net-clean-up-usbnet_receive.patch
+++ b/0193-net-clean-up-usbnet_receive.patch
@@ -76,5 +76,5 @@ index c84892c..0b5cb71 100644
return size;
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0194-net-fix-usbnet_receive-packet-drops.patch b/0194-net-fix-usbnet_receive-packet-drops.patch
index bbe1c76..b2c99c8 100644
--- a/0194-net-fix-usbnet_receive-packet-drops.patch
+++ b/0194-net-fix-usbnet_receive-packet-drops.patch
@@ -77,5 +77,5 @@ index 0b5cb71..e4a4359 100644
struct rndis_packet_msg_type *msg;
--
-1.7.12.1
+1.8.0.2
diff --git a/0195-net-broadcast-hub-packets-if-at-least-one-port-can-r.patch b/0195-net-broadcast-hub-packets-if-at-least-one-port-can-r.patch
index 5cb7e1c..e5f9771 100644
--- a/0195-net-broadcast-hub-packets-if-at-least-one-port-can-r.patch
+++ b/0195-net-broadcast-hub-packets-if-at-least-one-port-can-r.patch
@@ -47,5 +47,5 @@ index ac157e3..650a8b4 100644
static ssize_t net_hub_port_receive(NetClientState *nc,
--
-1.7.12.1
+1.8.0.2
diff --git a/0196-net-asynchronous-send-receive-infrastructure-for-net.patch b/0196-net-asynchronous-send-receive-infrastructure-for-net.patch
index 53f0722..e4f77f9 100644
--- a/0196-net-asynchronous-send-receive-infrastructure-for-net.patch
+++ b/0196-net-asynchronous-send-receive-infrastructure-for-net.patch
@@ -129,5 +129,5 @@ index c172c24..54e32f0 100644
static NetClientInfo net_socket_info = {
--
-1.7.12.1
+1.8.0.2
diff --git a/0197-net-EAGAIN-handling-for-net-socket.c-UDP.patch b/0197-net-EAGAIN-handling-for-net-socket.c-UDP.patch
index 9745eaa..c39e101 100644
--- a/0197-net-EAGAIN-handling-for-net-socket.c-UDP.patch
+++ b/0197-net-EAGAIN-handling-for-net-socket.c-UDP.patch
@@ -41,5 +41,5 @@ index 54e32f0..e5e4e8d 100644
static void net_socket_send(void *opaque)
--
-1.7.12.1
+1.8.0.2
diff --git a/0198-net-EAGAIN-handling-for-net-socket.c-TCP.patch b/0198-net-EAGAIN-handling-for-net-socket.c-TCP.patch
index d318bf1..76ae44a 100644
--- a/0198-net-EAGAIN-handling-for-net-socket.c-TCP.patch
+++ b/0198-net-EAGAIN-handling-for-net-socket.c-TCP.patch
@@ -93,5 +93,5 @@ index e5e4e8d..c3e55b8 100644
static ssize_t net_socket_receive_dgram(NetClientState *nc, const uint8_t *buf, size_t size)
--
-1.7.12.1
+1.8.0.2
diff --git a/0199-configure-fix-seccomp-check.patch b/0199-configure-fix-seccomp-check.patch
index bf742c6..020826d 100644
--- a/0199-configure-fix-seccomp-check.patch
+++ b/0199-configure-fix-seccomp-check.patch
@@ -41,5 +41,5 @@ index dcd8e7b..9e53cc2 100755
fi
##########################################
--
-1.7.12.1
+1.8.0.2
diff --git a/0200-configure-properly-check-if-lrt-and-lm-is-needed.patch b/0200-configure-properly-check-if-lrt-and-lm-is-needed.patch
index 2e9a949..d1ff74d 100644
--- a/0200-configure-properly-check-if-lrt-and-lm-is-needed.patch
+++ b/0200-configure-properly-check-if-lrt-and-lm-is-needed.patch
@@ -76,5 +76,5 @@ index 9e53cc2..a1f256c 100755
if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \
--
-1.7.12.1
+1.8.0.2
diff --git a/0201-Revert-455aa1e08-and-c3767ed0eb.patch b/0201-Revert-455aa1e08-and-c3767ed0eb.patch
index 5466652..00b3564 100644
--- a/0201-Revert-455aa1e08-and-c3767ed0eb.patch
+++ b/0201-Revert-455aa1e08-and-c3767ed0eb.patch
@@ -47,5 +47,5 @@ index 767da93..10d1504 100644
}
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0202-qemu-char-BUGFIX-don-t-call-FD_ISSET-with-negative-f.patch b/0202-qemu-char-BUGFIX-don-t-call-FD_ISSET-with-negative-f.patch
index 74f8f39..88569ff 100644
--- a/0202-qemu-char-BUGFIX-don-t-call-FD_ISSET-with-negative-f.patch
+++ b/0202-qemu-char-BUGFIX-don-t-call-FD_ISSET-with-negative-f.patch
@@ -55,5 +55,5 @@ index 10d1504..7f0f895 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0203-cpu_physical_memory_write_rom-needs-to-do-TB-invalid.patch b/0203-cpu_physical_memory_write_rom-needs-to-do-TB-invalid.patch
index cceb39c..c4950ba 100644
--- a/0203-cpu_physical_memory_write_rom-needs-to-do-TB-invalid.patch
+++ b/0203-cpu_physical_memory_write_rom-needs-to-do-TB-invalid.patch
@@ -48,5 +48,5 @@ index ad175db..3fdbbde 100644
}
len -= l;
--
-1.7.12.1
+1.8.0.2
diff --git a/0204-arch_init.c-Improve-soundhw-help-for-non-HAS_AUDIO_C.patch b/0204-arch_init.c-Improve-soundhw-help-for-non-HAS_AUDIO_C.patch
index d9001a5..5630073 100644
--- a/0204-arch_init.c-Improve-soundhw-help-for-non-HAS_AUDIO_C.patch
+++ b/0204-arch_init.c-Improve-soundhw-help-for-non-HAS_AUDIO_C.patch
@@ -1,8 +1,8 @@
From 8daf993d3d75acea92ef5054c924c7d825ae812e Mon Sep 17 00:00:00 2001
From: Peter Maydell <peter.maydell at linaro.org>
Date: Wed, 19 Sep 2012 14:51:38 +0100
-Subject: [PATCH] arch_init.c: Improve '-soundhw help' for
- non-HAS_AUDIO_CHOICE archs
+Subject: [PATCH] arch_init.c: Improve '-soundhw help' for non-HAS_AUDIO_CHOICE
+ archs
For architectures which don't set HAS_AUDIO_CHOICE, improve the
'-soundhw help' message so that it doesn't simply print an empty
@@ -39,5 +39,5 @@ index 47977de..f849f9b 100644
}
else {
--
-1.7.12.1
+1.8.0.2
diff --git a/0205-xilinx_timer-Removed-comma-in-device-name.patch b/0205-xilinx_timer-Removed-comma-in-device-name.patch
index 26b5d66..10b5802 100644
--- a/0205-xilinx_timer-Removed-comma-in-device-name.patch
+++ b/0205-xilinx_timer-Removed-comma-in-device-name.patch
@@ -50,5 +50,5 @@ index b562bd0..053ba02 100644
.instance_size = sizeof(struct timerblock),
.class_init = xilinx_timer_class_init,
--
-1.7.12.1
+1.8.0.2
diff --git a/0206-xilinx_timer-Send-dbg-msgs-to-stderr-not-stdout.patch b/0206-xilinx_timer-Send-dbg-msgs-to-stderr-not-stdout.patch
index e7b8ea1..ee2fab9 100644
--- a/0206-xilinx_timer-Send-dbg-msgs-to-stderr-not-stdout.patch
+++ b/0206-xilinx_timer-Send-dbg-msgs-to-stderr-not-stdout.patch
@@ -52,5 +52,5 @@ index 053ba02..c02e6ca 100644
if (xt->regs[R_TCSR] & TCSR_ARHT)
--
-1.7.12.1
+1.8.0.2
diff --git a/0207-xilinx.h-Error-check-when-setting-links.patch b/0207-xilinx.h-Error-check-when-setting-links.patch
index 924d91f..1bcbfe6 100644
--- a/0207-xilinx.h-Error-check-when-setting-links.patch
+++ b/0207-xilinx.h-Error-check-when-setting-links.patch
@@ -50,5 +50,5 @@ index df06a00..35d6681 100644
sysbus_mmio_map(sysbus_from_qdev(dev), 0, base);
--
-1.7.12.1
+1.8.0.2
diff --git a/0208-xilinx_timer-Fix-a-compile-error-if-debug-enabled.patch b/0208-xilinx_timer-Fix-a-compile-error-if-debug-enabled.patch
index 7c084bf..7e32f7d 100644
--- a/0208-xilinx_timer-Fix-a-compile-error-if-debug-enabled.patch
+++ b/0208-xilinx_timer-Fix-a-compile-error-if-debug-enabled.patch
@@ -37,5 +37,5 @@ index c02e6ca..f410487 100644
if (xt->regs[R_TCSR] & TCSR_ARHT)
--
-1.7.12.1
+1.8.0.2
diff --git a/0209-pflash_cfi01-fix-vendor-specific-extended-query.patch b/0209-pflash_cfi01-fix-vendor-specific-extended-query.patch
index 40c0e51..5244dfd 100644
--- a/0209-pflash_cfi01-fix-vendor-specific-extended-query.patch
+++ b/0209-pflash_cfi01-fix-vendor-specific-extended-query.patch
@@ -45,5 +45,5 @@ index d1c7423..d56b51a 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0210-MAINTAINERS-Add-entry-for-QOM-CPU.patch b/0210-MAINTAINERS-Add-entry-for-QOM-CPU.patch
index 17385e6..8cf16da 100644
--- a/0210-MAINTAINERS-Add-entry-for-QOM-CPU.patch
+++ b/0210-MAINTAINERS-Add-entry-for-QOM-CPU.patch
@@ -32,5 +32,5 @@ index 61f8b45..25733fc 100644
M: Peter Crosthwaite <peter.crosthwaite at petalogix.com>
M: Alexander Graf <agraf at suse.de>
--
-1.7.12.1
+1.8.0.2
diff --git a/0211-iSCSI-We-need-to-support-SG_IO-also-from-iscsi_ioctl.patch b/0211-iSCSI-We-need-to-support-SG_IO-also-from-iscsi_ioctl.patch
index 856ed96..2af6fe3 100644
--- a/0211-iSCSI-We-need-to-support-SG_IO-also-from-iscsi_ioctl.patch
+++ b/0211-iSCSI-We-need-to-support-SG_IO-also-from-iscsi_ioctl.patch
@@ -55,5 +55,5 @@ index 0b96165..ea16609 100644
return -1;
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0212-iSCSI-We-dont-need-to-explicitely-call-qemu_notify_e.patch b/0212-iSCSI-We-dont-need-to-explicitely-call-qemu_notify_e.patch
index d2d4b2d..5236629 100644
--- a/0212-iSCSI-We-dont-need-to-explicitely-call-qemu_notify_e.patch
+++ b/0212-iSCSI-We-dont-need-to-explicitely-call-qemu_notify_e.patch
@@ -35,5 +35,5 @@ index ea16609..fb001b9 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0213-scsi-disk-introduce-check_lba_range.patch b/0213-scsi-disk-introduce-check_lba_range.patch
index 567728d..52bac3e 100644
--- a/0213-scsi-disk-introduce-check_lba_range.patch
+++ b/0213-scsi-disk-introduce-check_lba_range.patch
@@ -78,5 +78,5 @@ index 1585683..3959603 100644
}
r->sector = r->req.cmd.lba * (s->qdev.blocksize / 512);
--
-1.7.12.1
+1.8.0.2
diff --git a/0214-scsi-disk-fix-check-for-out-of-range-LBA.patch b/0214-scsi-disk-fix-check-for-out-of-range-LBA.patch
index 9deef86..8d7d358 100644
--- a/0214-scsi-disk-fix-check-for-out-of-range-LBA.patch
+++ b/0214-scsi-disk-fix-check-for-out-of-range-LBA.patch
@@ -34,5 +34,5 @@ index 3959603..d621852 100644
typedef struct UnmapCBData {
--
-1.7.12.1
+1.8.0.2
diff --git a/0215-SCSI-Standard-INQUIRY-data-should-report-HiSup-flag-.patch b/0215-SCSI-Standard-INQUIRY-data-should-report-HiSup-flag-.patch
index 840be83..6465ed5 100644
--- a/0215-SCSI-Standard-INQUIRY-data-should-report-HiSup-flag-.patch
+++ b/0215-SCSI-Standard-INQUIRY-data-should-report-HiSup-flag-.patch
@@ -39,5 +39,5 @@ index d621852..7ed1bde 100644
if (buflen > 36) {
outbuf[4] = buflen - 5; /* Additional Length = (Len - 1) - 4 */
--
-1.7.12.1
+1.8.0.2
diff --git a/0216-audio-Fix-warning-from-static-code-analysis.patch b/0216-audio-Fix-warning-from-static-code-analysis.patch
index d25383c..838551d 100644
--- a/0216-audio-Fix-warning-from-static-code-analysis.patch
+++ b/0216-audio-Fix-warning-from-static-code-analysis.patch
@@ -43,5 +43,5 @@ index 519432a..16f7880 100644
audio_print_settings (as);
goto fail;
--
-1.7.12.1
+1.8.0.2
diff --git a/0217-qemu-ga-Remove-unreachable-code-after-g_error.patch b/0217-qemu-ga-Remove-unreachable-code-after-g_error.patch
index 5b64003..7daf257 100644
--- a/0217-qemu-ga-Remove-unreachable-code-after-g_error.patch
+++ b/0217-qemu-ga-Remove-unreachable-code-after-g_error.patch
@@ -36,5 +36,5 @@ index 7623079..b747470 100644
return true;
--
-1.7.12.1
+1.8.0.2
diff --git a/0218-qemu-sockets-Fix-potential-memory-leak.patch b/0218-qemu-sockets-Fix-potential-memory-leak.patch
index 35d9a44..e3693c2 100644
--- a/0218-qemu-sockets-Fix-potential-memory-leak.patch
+++ b/0218-qemu-sockets-Fix-potential-memory-leak.patch
@@ -28,5 +28,5 @@ index 361d890..037775b 100644
/* create socket */
--
-1.7.12.1
+1.8.0.2
diff --git a/0219-cadence_uart-Fix-buffer-overflow.patch b/0219-cadence_uart-Fix-buffer-overflow.patch
index 3dbf127..8e22ca1 100644
--- a/0219-cadence_uart-Fix-buffer-overflow.patch
+++ b/0219-cadence_uart-Fix-buffer-overflow.patch
@@ -31,5 +31,5 @@ index d98e531..f8afc4e 100644
} else if (offset == R_TX_RX) {
uart_read_rx_fifo(s, &c);
--
-1.7.12.1
+1.8.0.2
diff --git a/0220-lm4549-Fix-buffer-overflow.patch b/0220-lm4549-Fix-buffer-overflow.patch
index 656c9aa..bea3118 100644
--- a/0220-lm4549-Fix-buffer-overflow.patch
+++ b/0220-lm4549-Fix-buffer-overflow.patch
@@ -43,5 +43,5 @@ index 80b3ec4..e0137d5 100644
return 0;
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0221-ioh3420-Remove-unreachable-code.patch b/0221-ioh3420-Remove-unreachable-code.patch
index e465486..92346da 100644
--- a/0221-ioh3420-Remove-unreachable-code.patch
+++ b/0221-ioh3420-Remove-unreachable-code.patch
@@ -29,5 +29,5 @@ index 94a537c..4d31473 100644
pcie_cap_root_init(d);
rc = pcie_aer_init(d, IOH_EP_AER_OFFSET);
--
-1.7.12.1
+1.8.0.2
diff --git a/0222-pflash_cfi01-Fix-warning-caused-by-unreachable-code.patch b/0222-pflash_cfi01-Fix-warning-caused-by-unreachable-code.patch
index ef3cecd..f0204a8 100644
--- a/0222-pflash_cfi01-Fix-warning-caused-by-unreachable-code.patch
+++ b/0222-pflash_cfi01-Fix-warning-caused-by-unreachable-code.patch
@@ -61,5 +61,5 @@ index d56b51a..ac503cf 100644
/* Should never happen */
DPRINTF("%s: invalid write state\n", __func__);
--
-1.7.12.1
+1.8.0.2
diff --git a/0223-curses-don-t-initialize-curses-when-qemu-is-daemoniz.patch b/0223-curses-don-t-initialize-curses-when-qemu-is-daemoniz.patch
index 9f29c5e..71d0d75 100644
--- a/0223-curses-don-t-initialize-curses-when-qemu-is-daemoniz.patch
+++ b/0223-curses-don-t-initialize-curses-when-qemu-is-daemoniz.patch
@@ -86,5 +86,5 @@ index c681c33..49d7a52 100644
#endif
#if defined(CONFIG_SDL)
--
-1.7.12.1
+1.8.0.2
diff --git a/0224-TextConsole-saturate-escape-parameter-in-TTY_STATE_C.patch b/0224-TextConsole-saturate-escape-parameter-in-TTY_STATE_C.patch
index 523d5f4..78c8155 100644
--- a/0224-TextConsole-saturate-escape-parameter-in-TTY_STATE_C.patch
+++ b/0224-TextConsole-saturate-escape-parameter-in-TTY_STATE_C.patch
@@ -32,5 +32,5 @@ index 8b5e21d..314f5a5 100644
} else {
if (s->nb_esc_params < MAX_ESC_PARAMS)
--
-1.7.12.1
+1.8.0.2
diff --git a/0225-linux-user-Remove-redundant-null-check-and-replace-f.patch b/0225-linux-user-Remove-redundant-null-check-and-replace-f.patch
index acb18c0..1c36efc 100644
--- a/0225-linux-user-Remove-redundant-null-check-and-replace-f.patch
+++ b/0225-linux-user-Remove-redundant-null-check-and-replace-f.patch
@@ -38,5 +38,5 @@ index 6257a04..471d060 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0226-net-socket-Fix-compiler-warning-regression-for-MinGW.patch b/0226-net-socket-Fix-compiler-warning-regression-for-MinGW.patch
index e3cb65f..a227db4 100644
--- a/0226-net-socket-Fix-compiler-warning-regression-for-MinGW.patch
+++ b/0226-net-socket-Fix-compiler-warning-regression-for-MinGW.patch
@@ -64,5 +64,5 @@ index e5c2bcd..15d9e4e 100644
/* Error handling. */
--
-1.7.12.1
+1.8.0.2
diff --git a/0227-w32-Always-use-standard-instead-of-native-format-str.patch b/0227-w32-Always-use-standard-instead-of-native-format-str.patch
index 91b7bba..16b1f5a 100644
--- a/0227-w32-Always-use-standard-instead-of-native-format-str.patch
+++ b/0227-w32-Always-use-standard-instead-of-native-format-str.patch
@@ -48,5 +48,5 @@ index 07ba1f8..c734a71 100644
#if defined(_WIN32)
#define GCC_WEAK __attribute__((weak))
--
-1.7.12.1
+1.8.0.2
diff --git a/0228-w32-Add-implementation-of-gmtime_r-localtime_r.patch b/0228-w32-Add-implementation-of-gmtime_r-localtime_r.patch
index 16473ea..3895884 100644
--- a/0228-w32-Add-implementation-of-gmtime_r-localtime_r.patch
+++ b/0228-w32-Add-implementation-of-gmtime_r-localtime_r.patch
@@ -77,5 +77,5 @@ index b3e451b..8ba466d 100644
static inline void os_daemonize(void) {}
static inline void os_setup_post(void) {}
--
-1.7.12.1
+1.8.0.2
diff --git a/0229-blockdev-preserve-readonly-and-snapshot-states-acros.patch b/0229-blockdev-preserve-readonly-and-snapshot-states-acros.patch
index 19bbd20..d44d264 100644
--- a/0229-blockdev-preserve-readonly-and-snapshot-states-acros.patch
+++ b/0229-blockdev-preserve-readonly-and-snapshot-states-acros.patch
@@ -33,5 +33,5 @@ index 4a5266e..9ba3503 100644
dinfo->type = type;
dinfo->bus = bus_id;
--
-1.7.12.1
+1.8.0.2
diff --git a/0230-block-correctly-set-the-keep_read_only-flag.patch b/0230-block-correctly-set-the-keep_read_only-flag.patch
index ec1affa..33605d9 100644
--- a/0230-block-correctly-set-the-keep_read_only-flag.patch
+++ b/0230-block-correctly-set-the-keep_read_only-flag.patch
@@ -100,5 +100,5 @@ index 2e2be11..4d919c2 100644
#define BDRV_O_CACHE_MASK (BDRV_O_NOCACHE | BDRV_O_CACHE_WB | BDRV_O_NO_FLUSH)
--
-1.7.12.1
+1.8.0.2
diff --git a/0231-configure-Allow-builds-without-any-system-or-user-em.patch b/0231-configure-Allow-builds-without-any-system-or-user-em.patch
index d40c6dc..47ca6f3 100644
--- a/0231-configure-Allow-builds-without-any-system-or-user-em.patch
+++ b/0231-configure-Allow-builds-without-any-system-or-user-em.patch
@@ -55,5 +55,5 @@ index a1f256c..f528146 100755
case " $target_list " in
*"-softmmu "*) softmmu=yes
--
-1.7.12.1
+1.8.0.2
diff --git a/0232-Refactor-inet_connect_opts-function.patch b/0232-Refactor-inet_connect_opts-function.patch
index bd8702f..b0a1b17 100644
--- a/0232-Refactor-inet_connect_opts-function.patch
+++ b/0232-Refactor-inet_connect_opts-function.patch
@@ -203,5 +203,5 @@ index 037775b..22797bf 100644
int inet_dgram_opts(QemuOpts *opts)
--
-1.7.12.1
+1.8.0.2
diff --git a/0233-Separate-inet_connect-into-inet_connect-blocking-and.patch b/0233-Separate-inet_connect-into-inet_connect-blocking-and.patch
index e017ef0..691792d 100644
--- a/0233-Separate-inet_connect-into-inet_connect-blocking-and.patch
+++ b/0233-Separate-inet_connect-into-inet_connect-blocking-and.patch
@@ -184,5 +184,5 @@ index 385e345..01b2daf 100644
g_free(vs->display);
vs->display = NULL;
--
-1.7.12.1
+1.8.0.2
diff --git a/0234-Fix-address-handling-in-inet_nonblocking_connect.patch b/0234-Fix-address-handling-in-inet_nonblocking_connect.patch
index 9e64c16..c089ea3 100644
--- a/0234-Fix-address-handling-in-inet_nonblocking_connect.patch
+++ b/0234-Fix-address-handling-in-inet_nonblocking_connect.patch
@@ -365,5 +365,5 @@ index 80696aa..3e8aee9 100644
const char *inet_strfamily(int family);
--
-1.7.12.1
+1.8.0.2
diff --git a/0235-Clear-handler-only-for-valid-fd.patch b/0235-Clear-handler-only-for-valid-fd.patch
index 3ddcd80..cf1ef37 100644
--- a/0235-Clear-handler-only-for-valid-fd.patch
+++ b/0235-Clear-handler-only-for-valid-fd.patch
@@ -28,5 +28,5 @@ index 1edeec5..22a05c4 100644
if (s->file) {
DPRINTF("closing file\n");
--
-1.7.12.1
+1.8.0.2
diff --git a/0236-pl190-fix-read-of-VECTADDR.patch b/0236-pl190-fix-read-of-VECTADDR.patch
index c306cb5..c4b99ae 100644
--- a/0236-pl190-fix-read-of-VECTADDR.patch
+++ b/0236-pl190-fix-read-of-VECTADDR.patch
@@ -47,5 +47,5 @@ index cb50afb..7332f4d 100644
We return the default address. */
if (i == PL190_NUM_PRIO)
--
-1.7.12.1
+1.8.0.2
diff --git a/0237-hw-armv7m_nvic-Correctly-register-GIC-region-when-se.patch b/0237-hw-armv7m_nvic-Correctly-register-GIC-region-when-se.patch
index 2f3f36d..faf59ef 100644
--- a/0237-hw-armv7m_nvic-Correctly-register-GIC-region-when-se.patch
+++ b/0237-hw-armv7m_nvic-Correctly-register-GIC-region-when-se.patch
@@ -1,8 +1,8 @@
From f4a5b8185d067430cd605a740af654cd1cd2e2aa Mon Sep 17 00:00:00 2001
From: Meador Inge <meadori at codesourcery.com>
Date: Wed, 26 Sep 2012 16:46:28 +0100
-Subject: [PATCH] hw/armv7m_nvic: Correctly register GIC region when setting
- up NVIC
+Subject: [PATCH] hw/armv7m_nvic: Correctly register GIC region when setting up
+ NVIC
When setting up the NVIC memory regions the memory range
0x100..0xcff is aliased to an IO memory region that belongs
@@ -36,5 +36,5 @@ index 6a0832e..5c09116 100644
* by the v7M architecture.
*/
--
-1.7.12.1
+1.8.0.2
diff --git a/0238-Versatile-Express-Fix-NOR-flash-0-address-and-remove.patch b/0238-Versatile-Express-Fix-NOR-flash-0-address-and-remove.patch
index 4fd2f11..4161dc7 100644
--- a/0238-Versatile-Express-Fix-NOR-flash-0-address-and-remove.patch
+++ b/0238-Versatile-Express-Fix-NOR-flash-0-address-and-remove.patch
@@ -52,5 +52,5 @@ index b615844..454c2bb 100644
sram_size = 0x2000000;
--
-1.7.12.1
+1.8.0.2
diff --git a/0239-i386-kvm-bit-10-of-CPUID-8000_0001-.EDX-is-reserved.patch b/0239-i386-kvm-bit-10-of-CPUID-8000_0001-.EDX-is-reserved.patch
index 772314f..30e7bcd 100644
--- a/0239-i386-kvm-bit-10-of-CPUID-8000_0001-.EDX-is-reserved.patch
+++ b/0239-i386-kvm-bit-10-of-CPUID-8000_0001-.EDX-is-reserved.patch
@@ -32,5 +32,5 @@ index 6790180..acb9369 100644
}
break;
--
-1.7.12.1
+1.8.0.2
diff --git a/0240-fpu-softfloat.c-Return-correctly-signed-values-from-.patch b/0240-fpu-softfloat.c-Return-correctly-signed-values-from-.patch
index 37e5c3a..c94ba5d 100644
--- a/0240-fpu-softfloat.c-Return-correctly-signed-values-from-.patch
+++ b/0240-fpu-softfloat.c-Return-correctly-signed-values-from-.patch
@@ -40,5 +40,5 @@ index b29256a..91497e8 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0241-pseries-Don-t-test-for-MSR_PR-for-hypercalls-under-K.patch b/0241-pseries-Don-t-test-for-MSR_PR-for-hypercalls-under-K.patch
index 7edb0b2..7950b22 100644
--- a/0241-pseries-Don-t-test-for-MSR_PR-for-hypercalls-under-K.patch
+++ b/0241-pseries-Don-t-test-for-MSR_PR-for-hypercalls-under-K.patch
@@ -62,5 +62,5 @@ index abd847f..38098f7 100644
&& ((opcode & 0x3) == 0)) {
spapr_hcall_fn fn = papr_hypercall_table[opcode / 4];
--
-1.7.12.1
+1.8.0.2
diff --git a/0242-update-VERSION-for-v1.2.1.patch b/0242-update-VERSION-for-v1.2.1.patch
index 5a2045d..c68a13d 100644
--- a/0242-update-VERSION-for-v1.2.1.patch
+++ b/0242-update-VERSION-for-v1.2.1.patch
@@ -16,5 +16,5 @@ index 26aaba0..6085e94 100644
-1.2.0
+1.2.1
--
-1.7.12.1
+1.8.0.2
diff --git a/0805-configure-Fix-CONFIG_QEMU_HELPERDIR-generation.patch b/0301-configure-Fix-CONFIG_QEMU_HELPERDIR-generation.patch
similarity index 70%
rename from 0805-configure-Fix-CONFIG_QEMU_HELPERDIR-generation.patch
rename to 0301-configure-Fix-CONFIG_QEMU_HELPERDIR-generation.patch
index dfaf285..2ba6e0e 100644
--- a/0805-configure-Fix-CONFIG_QEMU_HELPERDIR-generation.patch
+++ b/0301-configure-Fix-CONFIG_QEMU_HELPERDIR-generation.patch
@@ -1,4 +1,4 @@
-From 38f419f35225decdbaea9fe1fd00218f8924ce84 Mon Sep 17 00:00:00 2001
+From abd9b89fe95879eb73ff4728397de6a390464de3 Mon Sep 17 00:00:00 2001
From: Jan Kiszka <jan.kiszka at siemens.com>
Date: Wed, 17 Oct 2012 19:09:25 +0200
Subject: [PATCH] configure: Fix CONFIG_QEMU_HELPERDIR generation
@@ -9,15 +9,22 @@ CONFIG_QEMU_HELPERDIR.
Signed-off-by: Jan Kiszka <jan.kiszka at siemens.com>
Signed-off-by: Aurelien Jarno <aurelien at aurel32.net>
+(cherry picked from commit 38f419f35225decdbaea9fe1fd00218f8924ce84)
+
+Conflicts:
+
+ configure
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
---
configure | 2 +-
- 1 file modificato, 1 inserzione(+). 1 rimozione(-)
+ 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
-index f9c31f4..9f33c7d 100755
+index f528146..2de0900 100755
--- a/configure
+++ b/configure
-@@ -3200,7 +3200,7 @@ echo "qemu_confdir=$qemu_confdir" >> $config_host_mak
+@@ -3201,7 +3201,7 @@ echo "sysconfdir=$sysconfdir" >> $config_host_mak
echo "qemu_confdir=$qemu_confdir" >> $config_host_mak
echo "qemu_datadir=$qemu_datadir" >> $config_host_mak
echo "qemu_docdir=$qemu_docdir" >> $config_host_mak
@@ -27,5 +34,5 @@ index f9c31f4..9f33c7d 100755
echo "ARCH=$ARCH" >> $config_host_mak
if test "$debug_tcg" = "yes" ; then
--
-1.7.12.1
+1.8.0.2
diff --git a/0302-fix-CONFIG_QEMU_HELPERDIR-generation-again.patch b/0302-fix-CONFIG_QEMU_HELPERDIR-generation-again.patch
new file mode 100644
index 0000000..31c7a78
--- /dev/null
+++ b/0302-fix-CONFIG_QEMU_HELPERDIR-generation-again.patch
@@ -0,0 +1,40 @@
+From 6cfdf00d58feb60e60a4844dc073a5995e6c08d5 Mon Sep 17 00:00:00 2001
+From: Michael Tokarev <mjt at tls.msk.ru>
+Date: Sun, 21 Oct 2012 22:52:54 +0400
+Subject: [PATCH] fix CONFIG_QEMU_HELPERDIR generation again
+
+commit 38f419f35225 fixed a breakage with CONFIG_QEMU_HELPERDIR
+which has been introduced by 8bf188aa18ef7a8. But while techinically
+that fix has been correct, all other similar variables are handled
+differently. Make it consistent, and let scripts/create_config
+expand and capitalize the variable properly like for all other
+qemu_*dir variables.
+
+Signed-off-by: Michael Tokarev <mjt at tls.msk.ru>
+(cherry picked from commit f354b1a1ee7a1c72d51b42808724a2b10eec315f)
+
+Conflicts:
+
+ configure
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index 2de0900..4d11fe3 100755
+--- a/configure
++++ b/configure
+@@ -3201,7 +3201,7 @@ echo "sysconfdir=$sysconfdir" >> $config_host_mak
+ echo "qemu_confdir=$qemu_confdir" >> $config_host_mak
+ echo "qemu_datadir=$qemu_datadir" >> $config_host_mak
+ echo "qemu_docdir=$qemu_docdir" >> $config_host_mak
+-echo "CONFIG_QEMU_HELPERDIR=\"`eval echo $libexecdir`\"" >> $config_host_mak
++echo "qemu_helperdir=$libexecdir" >> $config_host_mak
+
+ echo "ARCH=$ARCH" >> $config_host_mak
+ if test "$debug_tcg" = "yes" ; then
+--
+1.8.0.2
+
diff --git a/0303-ui-vnc-Only-report-use-TIGHT_PNG-encoding-if-enabled.patch b/0303-ui-vnc-Only-report-use-TIGHT_PNG-encoding-if-enabled.patch
new file mode 100644
index 0000000..c0c468c
--- /dev/null
+++ b/0303-ui-vnc-Only-report-use-TIGHT_PNG-encoding-if-enabled.patch
@@ -0,0 +1,42 @@
+From c441420055790934d7f344800a46c7ae644002a4 Mon Sep 17 00:00:00 2001
+From: Joel Martin <github at martintribe.org>
+Date: Wed, 16 May 2012 12:54:25 +0000
+Subject: [PATCH] ui/vnc: Only report/use TIGHT_PNG encoding if enabled.
+
+If TIGHT_PNG is not enabled by the --enable-vnc-png configure flag
+then do not report to the client that it is supported.
+
+Also, since TIGHT_PNG is the same as the TIGHT encoding but with the
+filter/copy replaced with PNG data, adding it to the supported
+encodings list when it is disabled will cause the TIGHT encoding to be
+used even though the client requested TIGHT_PNG.
+
+Signed-off-by: Joel Martin <github at martintribe.org>
+Signed-off-by: Stefan Hajnoczi <stefanha at redhat.com>
+(cherry picked from commit fe3e7f2dc05225cdd2ba40defcd4e2581bebc5e0)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ ui/vnc.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/ui/vnc.c b/ui/vnc.c
+index 01b2daf..18ec101 100644
+--- a/ui/vnc.c
++++ b/ui/vnc.c
+@@ -1802,10 +1802,12 @@ static void set_encodings(VncState *vs, int32_t *encodings, size_t n_encodings)
+ vs->features |= VNC_FEATURE_TIGHT_MASK;
+ vs->vnc_encoding = enc;
+ break;
++#ifdef CONFIG_VNC_PNG
+ case VNC_ENCODING_TIGHT_PNG:
+ vs->features |= VNC_FEATURE_TIGHT_PNG_MASK;
+ vs->vnc_encoding = enc;
+ break;
++#endif
+ case VNC_ENCODING_ZLIB:
+ vs->features |= VNC_FEATURE_ZLIB_MASK;
+ vs->vnc_encoding = enc;
+--
+1.8.0.2
+
diff --git a/0304-vnc-fix-info-vnc-with-vnc-.-reverse-on.patch b/0304-vnc-fix-info-vnc-with-vnc-.-reverse-on.patch
new file mode 100644
index 0000000..66871c6
--- /dev/null
+++ b/0304-vnc-fix-info-vnc-with-vnc-.-reverse-on.patch
@@ -0,0 +1,54 @@
+From 07a824f03fe1e820b5a0f19c380b19595ac0caa9 Mon Sep 17 00:00:00 2001
+From: Paolo Bonzini <pbonzini at redhat.com>
+Date: Wed, 10 Oct 2012 14:30:58 +0200
+Subject: [PATCH] vnc: fix "info vnc" with "-vnc ..., reverse=on"
+
+When reverse connection is in use, there is no active VNC server
+socket. Because of this, getsockopt(-1, ...) is attempted and
+the following error is emitted:
+
+ $ socat TCP-LISTEN:5900,reuseaddr TCP-LISTEN:5901,reuseaddr &
+ $ x86_64-softmmu/qemu-system-x86_64 -vnc localhost:5900,reverse -monitor stdio
+ QEMU 1.2.50 monitor - type 'help' for more information
+ (qemu) info vnc
+ An undefined error has occurred
+
+Because however the host, family, service and auth fields are
+optional, we can just exit if there is no active server socket.
+
+ $ x86_64-softmmu/qemu-system-x86_64 -vnc localhost:5900,reverse -monitor stdio
+ QEMU 1.2.50 monitor - type 'help' for more information
+ (qemu) info vnc
+ Server:
+ Client:
+ address: 127.0.0.1:5900
+ x509_dname: none
+ username: none
+
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+Signed-off-by: Stefan Hajnoczi <stefanha at redhat.com>
+(cherry picked from commit 417b0b88904fe1dd8c41bff8092dfbab0134d9cb)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ ui/vnc.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/ui/vnc.c b/ui/vnc.c
+index 18ec101..66ae930 100644
+--- a/ui/vnc.c
++++ b/ui/vnc.c
+@@ -372,6 +372,10 @@ VncInfo *qmp_query_vnc(Error **errp)
+ }
+ }
+
++ if (vnc_display->lsock == -1) {
++ return info;
++ }
++
+ if (getsockname(vnc_display->lsock, (struct sockaddr *)&sa,
+ &salen) == -1) {
+ error_set(errp, QERR_UNDEFINED_ERROR);
+--
+1.8.0.2
+
diff --git a/0305-uhci-Raise-interrupt-when-requested-even-for-non-act.patch b/0305-uhci-Raise-interrupt-when-requested-even-for-non-act.patch
new file mode 100644
index 0000000..962838d
--- /dev/null
+++ b/0305-uhci-Raise-interrupt-when-requested-even-for-non-act.patch
@@ -0,0 +1,51 @@
+From 7fdcb0738e43e49ac3081cc28212c1b7985f8bae Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede at redhat.com>
+Date: Wed, 10 Oct 2012 15:50:36 +0200
+Subject: [PATCH] uhci: Raise interrupt when requested even for non active tds
+
+According to the spec we must raise an interrupt when one is requested
+even for non active tds.
+
+Linux depends on this, for bulk transfers it runs an inactivity timer
+to work around a bug in early uhci revisions, when we take longer then
+200 ms to process a packet, this timer goes of, and as part of the
+handling Linux then unlinks the qh, and relinks it after the frindex
+has increased by atleast 1, the problem is Linux only checks for the
+frindex increases on an interrupt, and we don't send that, causing
+the qh to go inactive for more then 32 frames, at which point we
+consider the packet cancelled.
+
+Signed-off-by: Hans de Goede <hdegoede at redhat.com>
+Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
+(cherry picked from commit 883bca776daa43111e9c39008f0038f7c62ae723)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/usb/hcd-uhci.c | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/hw/usb/hcd-uhci.c b/hw/usb/hcd-uhci.c
+index cdc8bc3..c2f08e3 100644
+--- a/hw/usb/hcd-uhci.c
++++ b/hw/usb/hcd-uhci.c
+@@ -826,8 +826,16 @@ static int uhci_handle_td(UHCIState *s, uint32_t addr, UHCI_TD *td,
+ USBEndpoint *ep;
+
+ /* Is active ? */
+- if (!(td->ctrl & TD_CTRL_ACTIVE))
++ if (!(td->ctrl & TD_CTRL_ACTIVE)) {
++ /*
++ * ehci11d spec page 22: "Even if the Active bit in the TD is already
++ * cleared when the TD is fetched ... an IOC interrupt is generated"
++ */
++ if (td->ctrl & TD_CTRL_IOC) {
++ *int_mask |= 0x01;
++ }
+ return TD_RESULT_NEXT_QH;
++ }
+
+ async = uhci_async_find_td(s, addr, td);
+ if (async) {
+--
+1.8.0.2
+
diff --git a/0516-hw-qxl-qxl_dirty_surfaces-use-uintptr_t.patch b/0306-hw-qxl-qxl_dirty_surfaces-use-uintptr_t.patch
similarity index 67%
rename from 0516-hw-qxl-qxl_dirty_surfaces-use-uintptr_t.patch
rename to 0306-hw-qxl-qxl_dirty_surfaces-use-uintptr_t.patch
index e285559..15c9c57 100644
--- a/0516-hw-qxl-qxl_dirty_surfaces-use-uintptr_t.patch
+++ b/0306-hw-qxl-qxl_dirty_surfaces-use-uintptr_t.patch
@@ -1,21 +1,24 @@
-From d59685f5667e25d0805bde93c068052afb30efda Mon Sep 17 00:00:00 2001
+From d03ab137143aeae21ab7bb4e8cab72e1f49b8309 Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Sun, 7 Oct 2012 17:03:35 +0200
-Subject: [PATCH 516/647] hw/qxl: qxl_dirty_surfaces: use uintptr_t
+Subject: [PATCH] hw/qxl: qxl_dirty_surfaces: use uintptr_t
As suggested by Paolo Bonzini, to avoid possible integer overflow issues.
Signed-off-by: Alon Levy <alevy at redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
+(cherry picked from commit c5825ac6c861bfe1a4adfa27517931b56079e298)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
---
hw/qxl.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/qxl.c b/hw/qxl.c
-index e3a164a..5a9bf1c 100644
+index 59bf822..89e9ad9 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
-@@ -1803,7 +1803,7 @@ static void qxl_hw_text_update(void *opaque, console_ch_t *chardata)
+@@ -1703,7 +1703,7 @@ static void qxl_hw_text_update(void *opaque, console_ch_t *chardata)
static void qxl_dirty_surfaces(PCIQXLDevice *qxl)
{
@@ -24,7 +27,7 @@ index e3a164a..5a9bf1c 100644
int i;
if (qxl->mode != QXL_MODE_NATIVE && qxl->mode != QXL_MODE_COMPAT) {
-@@ -1814,7 +1814,7 @@ static void qxl_dirty_surfaces(PCIQXLDevice *qxl)
+@@ -1714,7 +1714,7 @@ static void qxl_dirty_surfaces(PCIQXLDevice *qxl)
qxl_set_dirty(&qxl->vga.vram, qxl->shadow_rom.draw_area_offset,
qxl->shadow_rom.surface0_area_size);
@@ -32,7 +35,7 @@ index e3a164a..5a9bf1c 100644
+ vram_start = (uintptr_t)memory_region_get_ram_ptr(&qxl->vram_bar);
/* dirty the off-screen surfaces */
- for (i = 0; i < qxl->ssd.num_surfaces; i++) {
+ for (i = 0; i < NUM_SURFACES; i++) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0511-qxl-always-update-displaysurface-on-resize.patch b/0307-qxl-always-update-displaysurface-on-resize.patch
similarity index 88%
rename from 0511-qxl-always-update-displaysurface-on-resize.patch
rename to 0307-qxl-always-update-displaysurface-on-resize.patch
index 4b556c7..c981d7e 100644
--- a/0511-qxl-always-update-displaysurface-on-resize.patch
+++ b/0307-qxl-always-update-displaysurface-on-resize.patch
@@ -1,4 +1,4 @@
-From d0b5c82d532ef14bbbc770b06a6ae68f6ec3c1a8 Mon Sep 17 00:00:00 2001
+From 5100d7f2beedd5248337f956c74aee4300a00915 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri, 14 Sep 2012 22:09:23 +0200
Subject: [PATCH] qxl: always update displaysurface on resize
@@ -13,6 +13,9 @@ and X11 use the display same resolution. Then watch X11 screen being
upside down.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
+(cherry picked from commit 0ec8df3974d2a4ff95b5fd4785b9bd3def7252f3)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
---
hw/qxl-render.c | 4 ----
1 file changed, 4 deletions(-)
@@ -40,5 +43,5 @@ index e2e3fe2..b66c168 100644
qemu_free_displaysurface(vga->ds);
qemu_create_displaysurface_from(qxl->guest_primary.surface.width,
--
-1.7.12.1
+1.8.0.2
diff --git a/0308-rtc-fix-overflow-in-mktimegm.patch b/0308-rtc-fix-overflow-in-mktimegm.patch
new file mode 100644
index 0000000..ca4541b
--- /dev/null
+++ b/0308-rtc-fix-overflow-in-mktimegm.patch
@@ -0,0 +1,100 @@
+From 6dfc8874df8648e37f19f099cb8c2efee19bcee3 Mon Sep 17 00:00:00 2001
+From: Paolo Bonzini <pbonzini at redhat.com>
+Date: Mon, 1 Oct 2012 14:22:06 +0200
+Subject: [PATCH] rtc: fix overflow in mktimegm
+
+When setting a date in 1980, Linux is actually disregarding the century
+byte and setting the year to 2080. This causes a year-2038 overflow
+in mktimegm. Fix this by doing the days-to-seconds computation in
+64-bit math.
+
+Reported-by: Lucas Meneghel Rodrigues <lookkas at gmail.com>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
+(cherry picked from commit b6db4aca20e9af4f62c9c9e08b9b9672a6ed3390)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ cutils.c | 2 +-
+ tests/rtc-test.c | 45 +++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 46 insertions(+), 1 deletion(-)
+
+diff --git a/cutils.c b/cutils.c
+index 8ef648f..8edd8fa 100644
+--- a/cutils.c
++++ b/cutils.c
+@@ -115,7 +115,7 @@ time_t mktimegm(struct tm *tm)
+ m += 12;
+ y--;
+ }
+- t = 86400 * (d + (153 * m - 457) / 5 + 365 * y + y / 4 - y / 100 +
++ t = 86400ULL * (d + (153 * m - 457) / 5 + 365 * y + y / 4 - y / 100 +
+ y / 400 - 719469);
+ t += 3600 * tm->tm_hour + 60 * tm->tm_min + tm->tm_sec;
+ return t;
+diff --git a/tests/rtc-test.c b/tests/rtc-test.c
+index f23ac3a..2b9aa63 100644
+--- a/tests/rtc-test.c
++++ b/tests/rtc-test.c
+@@ -179,6 +179,50 @@ static void check_time(int wiggle)
+
+ static int wiggle = 2;
+
++static void set_year(void)
++{
++ /* Set BCD mode */
++ cmos_write(RTC_REG_B, cmos_read(RTC_REG_B) & ~REG_B_DM);
++ cmos_write(RTC_REG_A, 0x76);
++ cmos_write(RTC_YEAR, 0x11);
++ cmos_write(RTC_MONTH, 0x02);
++ cmos_write(RTC_DAY_OF_MONTH, 0x02);
++ cmos_write(RTC_HOURS, 0x02);
++ cmos_write(RTC_MINUTES, 0x04);
++ cmos_write(RTC_SECONDS, 0x58);
++ cmos_write(RTC_REG_A, 0x26);
++
++ g_assert_cmpint(cmos_read(RTC_HOURS), ==, 0x02);
++ g_assert_cmpint(cmos_read(RTC_MINUTES), ==, 0x04);
++ g_assert_cmpint(cmos_read(RTC_SECONDS), >=, 0x58);
++ g_assert_cmpint(cmos_read(RTC_DAY_OF_MONTH), ==, 0x02);
++ g_assert_cmpint(cmos_read(RTC_MONTH), ==, 0x02);
++ g_assert_cmpint(cmos_read(RTC_YEAR), ==, 0x11);
++
++ /* Set a date in 2080 to ensure there is no year-2038 overflow. */
++ cmos_write(RTC_REG_A, 0x76);
++ cmos_write(RTC_YEAR, 0x80);
++ cmos_write(RTC_REG_A, 0x26);
++
++ g_assert_cmpint(cmos_read(RTC_HOURS), ==, 0x02);
++ g_assert_cmpint(cmos_read(RTC_MINUTES), ==, 0x04);
++ g_assert_cmpint(cmos_read(RTC_SECONDS), >=, 0x58);
++ g_assert_cmpint(cmos_read(RTC_DAY_OF_MONTH), ==, 0x02);
++ g_assert_cmpint(cmos_read(RTC_MONTH), ==, 0x02);
++ g_assert_cmpint(cmos_read(RTC_YEAR), ==, 0x80);
++
++ cmos_write(RTC_REG_A, 0x76);
++ cmos_write(RTC_YEAR, 0x11);
++ cmos_write(RTC_REG_A, 0x26);
++
++ g_assert_cmpint(cmos_read(RTC_HOURS), ==, 0x02);
++ g_assert_cmpint(cmos_read(RTC_MINUTES), ==, 0x04);
++ g_assert_cmpint(cmos_read(RTC_SECONDS), >=, 0x58);
++ g_assert_cmpint(cmos_read(RTC_DAY_OF_MONTH), ==, 0x02);
++ g_assert_cmpint(cmos_read(RTC_MONTH), ==, 0x02);
++ g_assert_cmpint(cmos_read(RTC_YEAR), ==, 0x11);
++}
++
+ static void bcd_check_time(void)
+ {
+ /* Set BCD mode */
+@@ -269,6 +313,7 @@ int main(int argc, char **argv)
+ qtest_add_func("/rtc/bcd/check-time", bcd_check_time);
+ qtest_add_func("/rtc/dec/check-time", dec_check_time);
+ qtest_add_func("/rtc/alarm-time", alarm_time);
++ qtest_add_func("/rtc/set-year", set_year);
+ qtest_add_func("/rtc/fuzz-registers", fuzz_registers);
+ ret = g_test_run();
+
+--
+1.8.0.2
+
diff --git a/0309-hw-Fix-return-value-check-for-bdrv_read-bdrv_write.patch b/0309-hw-Fix-return-value-check-for-bdrv_read-bdrv_write.patch
new file mode 100644
index 0000000..b7021cc
--- /dev/null
+++ b/0309-hw-Fix-return-value-check-for-bdrv_read-bdrv_write.patch
@@ -0,0 +1,201 @@
+From 4c9e1e2839d81b65a1b4a3a150c793d577e4ce70 Mon Sep 17 00:00:00 2001
+From: Stefan Weil <sw at weilnetz.de>
+Date: Sun, 23 Sep 2012 08:51:01 +0200
+Subject: [PATCH] hw: Fix return value check for bdrv_read, bdrv_write
+
+Those functions return -errno in case of an error.
+The old code would typically only detect EPERM (1) errors.
+
+Signed-off-by: Stefan Weil <sw at weilnetz.de>
+Signed-off-by: Stefan Hajnoczi <stefanha at gmail.com>
+(cherry picked from commit 7a608f562ebd91e811ed0b725e528c894e4f19c4)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/nand.c | 34 ++++++++++++++++++++++------------
+ hw/onenand.c | 2 +-
+ hw/sd.c | 16 +++++++++-------
+ 3 files changed, 32 insertions(+), 20 deletions(-)
+
+diff --git a/hw/nand.c b/hw/nand.c
+index e9501ae..01f3ada 100644
+--- a/hw/nand.c
++++ b/hw/nand.c
+@@ -654,7 +654,7 @@ static void glue(nand_blk_write_, PAGE_SIZE)(NANDFlashState *s)
+ sector = SECTOR(s->addr);
+ off = (s->addr & PAGE_MASK) + s->offset;
+ soff = SECTOR_OFFSET(s->addr);
+- if (bdrv_read(s->bdrv, sector, iobuf, PAGE_SECTORS) == -1) {
++ if (bdrv_read(s->bdrv, sector, iobuf, PAGE_SECTORS) < 0) {
+ printf("%s: read error in sector %" PRIu64 "\n", __func__, sector);
+ return;
+ }
+@@ -666,21 +666,23 @@ static void glue(nand_blk_write_, PAGE_SIZE)(NANDFlashState *s)
+ MIN(OOB_SIZE, off + s->iolen - PAGE_SIZE));
+ }
+
+- if (bdrv_write(s->bdrv, sector, iobuf, PAGE_SECTORS) == -1)
++ if (bdrv_write(s->bdrv, sector, iobuf, PAGE_SECTORS) < 0) {
+ printf("%s: write error in sector %" PRIu64 "\n", __func__, sector);
++ }
+ } else {
+ off = PAGE_START(s->addr) + (s->addr & PAGE_MASK) + s->offset;
+ sector = off >> 9;
+ soff = off & 0x1ff;
+- if (bdrv_read(s->bdrv, sector, iobuf, PAGE_SECTORS + 2) == -1) {
++ if (bdrv_read(s->bdrv, sector, iobuf, PAGE_SECTORS + 2) < 0) {
+ printf("%s: read error in sector %" PRIu64 "\n", __func__, sector);
+ return;
+ }
+
+ mem_and(iobuf + soff, s->io, s->iolen);
+
+- if (bdrv_write(s->bdrv, sector, iobuf, PAGE_SECTORS + 2) == -1)
++ if (bdrv_write(s->bdrv, sector, iobuf, PAGE_SECTORS + 2) < 0) {
+ printf("%s: write error in sector %" PRIu64 "\n", __func__, sector);
++ }
+ }
+ s->offset = 0;
+ }
+@@ -704,31 +706,37 @@ static void glue(nand_blk_erase_, PAGE_SIZE)(NANDFlashState *s)
+ i = SECTOR(addr);
+ page = SECTOR(addr + (ADDR_SHIFT + s->erase_shift));
+ for (; i < page; i ++)
+- if (bdrv_write(s->bdrv, i, iobuf, 1) == -1)
++ if (bdrv_write(s->bdrv, i, iobuf, 1) < 0) {
+ printf("%s: write error in sector %" PRIu64 "\n", __func__, i);
++ }
+ } else {
+ addr = PAGE_START(addr);
+ page = addr >> 9;
+- if (bdrv_read(s->bdrv, page, iobuf, 1) == -1)
++ if (bdrv_read(s->bdrv, page, iobuf, 1) < 0) {
+ printf("%s: read error in sector %" PRIu64 "\n", __func__, page);
++ }
+ memset(iobuf + (addr & 0x1ff), 0xff, (~addr & 0x1ff) + 1);
+- if (bdrv_write(s->bdrv, page, iobuf, 1) == -1)
++ if (bdrv_write(s->bdrv, page, iobuf, 1) < 0) {
+ printf("%s: write error in sector %" PRIu64 "\n", __func__, page);
++ }
+
+ memset(iobuf, 0xff, 0x200);
+ i = (addr & ~0x1ff) + 0x200;
+ for (addr += ((PAGE_SIZE + OOB_SIZE) << s->erase_shift) - 0x200;
+ i < addr; i += 0x200)
+- if (bdrv_write(s->bdrv, i >> 9, iobuf, 1) == -1)
++ if (bdrv_write(s->bdrv, i >> 9, iobuf, 1) < 0) {
+ printf("%s: write error in sector %" PRIu64 "\n",
+ __func__, i >> 9);
++ }
+
+ page = i >> 9;
+- if (bdrv_read(s->bdrv, page, iobuf, 1) == -1)
++ if (bdrv_read(s->bdrv, page, iobuf, 1) < 0) {
+ printf("%s: read error in sector %" PRIu64 "\n", __func__, page);
++ }
+ memset(iobuf, 0xff, ((addr - 1) & 0x1ff) + 1);
+- if (bdrv_write(s->bdrv, page, iobuf, 1) == -1)
++ if (bdrv_write(s->bdrv, page, iobuf, 1) < 0) {
+ printf("%s: write error in sector %" PRIu64 "\n", __func__, page);
++ }
+ }
+ }
+
+@@ -740,18 +748,20 @@ static void glue(nand_blk_load_, PAGE_SIZE)(NANDFlashState *s,
+
+ if (s->bdrv) {
+ if (s->mem_oob) {
+- if (bdrv_read(s->bdrv, SECTOR(addr), s->io, PAGE_SECTORS) == -1)
++ if (bdrv_read(s->bdrv, SECTOR(addr), s->io, PAGE_SECTORS) < 0) {
+ printf("%s: read error in sector %" PRIu64 "\n",
+ __func__, SECTOR(addr));
++ }
+ memcpy(s->io + SECTOR_OFFSET(s->addr) + PAGE_SIZE,
+ s->storage + (PAGE(s->addr) << OOB_SHIFT),
+ OOB_SIZE);
+ s->ioaddr = s->io + SECTOR_OFFSET(s->addr) + offset;
+ } else {
+ if (bdrv_read(s->bdrv, PAGE_START(addr) >> 9,
+- s->io, (PAGE_SECTORS + 2)) == -1)
++ s->io, (PAGE_SECTORS + 2)) < 0) {
+ printf("%s: read error in sector %" PRIu64 "\n",
+ __func__, PAGE_START(addr) >> 9);
++ }
+ s->ioaddr = s->io + (PAGE_START(addr) & 0x1ff) + offset;
+ }
+ } else {
+diff --git a/hw/onenand.c b/hw/onenand.c
+index db6af68..0f7b755 100644
+--- a/hw/onenand.c
++++ b/hw/onenand.c
+@@ -351,7 +351,7 @@ static inline int onenand_erase(OneNANDState *s, int sec, int num)
+ for (; num > 0; num--, sec++) {
+ if (s->bdrv_cur) {
+ int erasesec = s->secs_cur + (sec >> 5);
+- if (bdrv_write(s->bdrv_cur, sec, blankbuf, 1)) {
++ if (bdrv_write(s->bdrv_cur, sec, blankbuf, 1) < 0) {
+ goto fail;
+ }
+ if (bdrv_read(s->bdrv_cur, erasesec, tmpbuf, 1) < 0) {
+diff --git a/hw/sd.c b/hw/sd.c
+index ec26407..297580a 100644
+--- a/hw/sd.c
++++ b/hw/sd.c
+@@ -1407,7 +1407,7 @@ static void sd_blk_read(SDState *sd, uint64_t addr, uint32_t len)
+
+ DPRINTF("sd_blk_read: addr = 0x%08llx, len = %d\n",
+ (unsigned long long) addr, len);
+- if (!sd->bdrv || bdrv_read(sd->bdrv, addr >> 9, sd->buf, 1) == -1) {
++ if (!sd->bdrv || bdrv_read(sd->bdrv, addr >> 9, sd->buf, 1) < 0) {
+ fprintf(stderr, "sd_blk_read: read error on host side\n");
+ return;
+ }
+@@ -1415,7 +1415,7 @@ static void sd_blk_read(SDState *sd, uint64_t addr, uint32_t len)
+ if (end > (addr & ~511) + 512) {
+ memcpy(sd->data, sd->buf + (addr & 511), 512 - (addr & 511));
+
+- if (bdrv_read(sd->bdrv, end >> 9, sd->buf, 1) == -1) {
++ if (bdrv_read(sd->bdrv, end >> 9, sd->buf, 1) < 0) {
+ fprintf(stderr, "sd_blk_read: read error on host side\n");
+ return;
+ }
+@@ -1429,29 +1429,31 @@ static void sd_blk_write(SDState *sd, uint64_t addr, uint32_t len)
+ uint64_t end = addr + len;
+
+ if ((addr & 511) || len < 512)
+- if (!sd->bdrv || bdrv_read(sd->bdrv, addr >> 9, sd->buf, 1) == -1) {
++ if (!sd->bdrv || bdrv_read(sd->bdrv, addr >> 9, sd->buf, 1) < 0) {
+ fprintf(stderr, "sd_blk_write: read error on host side\n");
+ return;
+ }
+
+ if (end > (addr & ~511) + 512) {
+ memcpy(sd->buf + (addr & 511), sd->data, 512 - (addr & 511));
+- if (bdrv_write(sd->bdrv, addr >> 9, sd->buf, 1) == -1) {
++ if (bdrv_write(sd->bdrv, addr >> 9, sd->buf, 1) < 0) {
+ fprintf(stderr, "sd_blk_write: write error on host side\n");
+ return;
+ }
+
+- if (bdrv_read(sd->bdrv, end >> 9, sd->buf, 1) == -1) {
++ if (bdrv_read(sd->bdrv, end >> 9, sd->buf, 1) < 0) {
+ fprintf(stderr, "sd_blk_write: read error on host side\n");
+ return;
+ }
+ memcpy(sd->buf, sd->data + 512 - (addr & 511), end & 511);
+- if (bdrv_write(sd->bdrv, end >> 9, sd->buf, 1) == -1)
++ if (bdrv_write(sd->bdrv, end >> 9, sd->buf, 1) < 0) {
+ fprintf(stderr, "sd_blk_write: write error on host side\n");
++ }
+ } else {
+ memcpy(sd->buf + (addr & 511), sd->data, len);
+- if (!sd->bdrv || bdrv_write(sd->bdrv, addr >> 9, sd->buf, 1) == -1)
++ if (!sd->bdrv || bdrv_write(sd->bdrv, addr >> 9, sd->buf, 1) < 0) {
+ fprintf(stderr, "sd_blk_write: write error on host side\n");
++ }
+ }
+ }
+
+--
+1.8.0.2
+
diff --git a/0310-target-i386-Allow-tsc-frequency-to-be-larger-then-2..patch b/0310-target-i386-Allow-tsc-frequency-to-be-larger-then-2..patch
new file mode 100644
index 0000000..6508c64
--- /dev/null
+++ b/0310-target-i386-Allow-tsc-frequency-to-be-larger-then-2..patch
@@ -0,0 +1,33 @@
+From 4c512ed2aa98b5219b84fa98e8b3ac9ef0128436 Mon Sep 17 00:00:00 2001
+From: Don Slutz <Don at CloudSwitch.com>
+Date: Fri, 21 Sep 2012 20:13:13 -0400
+Subject: [PATCH] target-i386: Allow tsc-frequency to be larger then 2.147G
+
+The check using INT_MAX (2147483647) is wrong in this case.
+
+Signed-off-by: Fred Oliveira <foliveira at cloudswitch.com>
+Signed-off-by: Don Slutz <Don at CloudSwitch.com>
+Signed-off-by: Stefan Hajnoczi <stefanha at gmail.com>
+(cherry picked from commit 2e84849aa2cc7f220d3b3668f5f7e3c57bb1b590)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ target-i386/cpu.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/target-i386/cpu.c b/target-i386/cpu.c
+index 423e009..cbc172e 100644
+--- a/target-i386/cpu.c
++++ b/target-i386/cpu.c
+@@ -846,7 +846,7 @@ static void x86_cpuid_set_tsc_freq(Object *obj, Visitor *v, void *opaque,
+ {
+ X86CPU *cpu = X86_CPU(obj);
+ const int64_t min = 0;
+- const int64_t max = INT_MAX;
++ const int64_t max = INT64_MAX;
+ int64_t value;
+
+ visit_type_int(v, &value, name, errp);
+--
+1.8.0.2
+
diff --git a/0311-e1000-drop-check_rxov-always-treat-RX-ring-with-RDH-.patch b/0311-e1000-drop-check_rxov-always-treat-RX-ring-with-RDH-.patch
new file mode 100644
index 0000000..dd3a367
--- /dev/null
+++ b/0311-e1000-drop-check_rxov-always-treat-RX-ring-with-RDH-.patch
@@ -0,0 +1,65 @@
+From 0b8f2583c9cd2b06b422c80ceec6a7f2641fc4e0 Mon Sep 17 00:00:00 2001
+From: Dmitry Fleytman <dmitry at daynix.com>
+Date: Fri, 19 Oct 2012 07:56:55 +0200
+Subject: [PATCH] e1000: drop check_rxov, always treat RX ring with RDH == RDT
+ as empty
+
+Real HW always treats RX ring with RDH == RDT as empty.
+Emulation is supposed to behave the same.
+
+Reported-by: Chris Webb <chris.webb at elastichosts.com>
+Reported-by: Richard Davies <richard.davies at elastichosts.com>
+Signed-off-by: Dmitry Fleytman <dmitry at daynix.com>
+Signed-off-by: Stefan Hajnoczi <stefanha at redhat.com>
+(cherry picked from commit e5b8b0d4ba29fe1268ba049519a1b0cf8552a21a)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/e1000.c | 7 ++-----
+ 1 file changed, 2 insertions(+), 5 deletions(-)
+
+diff --git a/hw/e1000.c b/hw/e1000.c
+index ec3a7c4..4d4ac32 100644
+--- a/hw/e1000.c
++++ b/hw/e1000.c
+@@ -92,7 +92,6 @@ typedef struct E1000State_st {
+
+ uint32_t rxbuf_size;
+ uint32_t rxbuf_min_shift;
+- int check_rxov;
+ struct e1000_tx {
+ unsigned char header[256];
+ unsigned char vlan_header[4];
+@@ -741,11 +740,11 @@ static bool e1000_has_rxbufs(E1000State *s, size_t total_size)
+ int bufs;
+ /* Fast-path short packets */
+ if (total_size <= s->rxbuf_size) {
+- return s->mac_reg[RDH] != s->mac_reg[RDT] || !s->check_rxov;
++ return s->mac_reg[RDH] != s->mac_reg[RDT];
+ }
+ if (s->mac_reg[RDH] < s->mac_reg[RDT]) {
+ bufs = s->mac_reg[RDT] - s->mac_reg[RDH];
+- } else if (s->mac_reg[RDH] > s->mac_reg[RDT] || !s->check_rxov) {
++ } else if (s->mac_reg[RDH] > s->mac_reg[RDT]) {
+ bufs = s->mac_reg[RDLEN] / sizeof(struct e1000_rx_desc) +
+ s->mac_reg[RDT] - s->mac_reg[RDH];
+ } else {
+@@ -848,7 +847,6 @@ e1000_receive(NetClientState *nc, const uint8_t *buf, size_t size)
+
+ if (++s->mac_reg[RDH] * sizeof(desc) >= s->mac_reg[RDLEN])
+ s->mac_reg[RDH] = 0;
+- s->check_rxov = 1;
+ /* see comment in start_xmit; same here */
+ if (s->mac_reg[RDH] == rdh_start) {
+ DBGOUT(RXERR, "RDH wraparound @%x, RDT %x, RDLEN %x\n",
+@@ -925,7 +923,6 @@ mac_writereg(E1000State *s, int index, uint32_t val)
+ static void
+ set_rdt(E1000State *s, int index, uint32_t val)
+ {
+- s->check_rxov = 0;
+ s->mac_reg[index] = val & 0xffff;
+ if (e1000_has_rxbufs(s, 1)) {
+ qemu_flush_queued_packets(&s->nic->nc);
+--
+1.8.0.2
+
diff --git a/0312-memory-fix-rendering-of-a-region-obscured-by-another.patch b/0312-memory-fix-rendering-of-a-region-obscured-by-another.patch
new file mode 100644
index 0000000..8e08900
--- /dev/null
+++ b/0312-memory-fix-rendering-of-a-region-obscured-by-another.patch
@@ -0,0 +1,57 @@
+From 4d172af076079d753cb666af31d93ed9a7b452ff Mon Sep 17 00:00:00 2001
+From: Avi Kivity <avi at redhat.com>
+Date: Mon, 29 Oct 2012 18:22:36 +0200
+Subject: [PATCH] memory: fix rendering of a region obscured by another
+
+The memory core drops regions that are hidden by another region (for example,
+during BAR sizing), but it doesn't do so correctly if the lower address of the
+existing range is below the lower address of the new range.
+
+Example (qemu-system-mips -M malta -kernel vmlinux-2.6.32-5-4kc-malta
+ -append "console=ttyS0" -nographic -vga cirrus):
+
+Existing range: 10000000-107fffff
+New range: 100a0000-100bffff
+
+Correct behaviour: drop new range
+Incorrect behaviour: add new range
+
+Fix by taking this case into account (previously we only considered
+equal lower boundaries).
+
+Tested-by: Aurelien Jarno <aurelien at aurel32.net>
+Signed-off-by: Avi Kivity <avi at redhat.com>
+Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
+(cherry picked from commit d26a8caea3f160782841efb87b5e8bea606b512b)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ memory.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/memory.c b/memory.c
+index d528d1f..7144020 100644
+--- a/memory.c
++++ b/memory.c
+@@ -538,12 +538,12 @@ static void render_memory_region(FlatView *view,
+ offset_in_region += int128_get64(now);
+ int128_subfrom(&remain, now);
+ }
+- if (int128_eq(base, view->ranges[i].addr.start)) {
+- now = int128_min(remain, view->ranges[i].addr.size);
+- int128_addto(&base, now);
+- offset_in_region += int128_get64(now);
+- int128_subfrom(&remain, now);
+- }
++ now = int128_sub(int128_min(int128_add(base, remain),
++ addrrange_end(view->ranges[i].addr)),
++ base);
++ int128_addto(&base, now);
++ offset_in_region += int128_get64(now);
++ int128_subfrom(&remain, now);
+ }
+ if (int128_nz(remain)) {
+ fr.mr = mr;
+--
+1.8.0.2
+
diff --git a/0313-s390x-fix-initrd-in-virtio-machine.patch b/0313-s390x-fix-initrd-in-virtio-machine.patch
new file mode 100644
index 0000000..25f40a8
--- /dev/null
+++ b/0313-s390x-fix-initrd-in-virtio-machine.patch
@@ -0,0 +1,37 @@
+From a89b91d1d8a0bf914c44deaca4f743de6971bdc7 Mon Sep 17 00:00:00 2001
+From: Alexander Graf <agraf at suse.de>
+Date: Wed, 19 Sep 2012 17:24:46 +0200
+Subject: [PATCH] s390x: fix -initrd in virtio machine
+
+When using -initrd in the virtio machine, we need to indicate the initrd
+start and size inside the kernel image. These parameters need to be stored
+in native endianness.
+
+Signed-off-by: Alexander Graf <agraf at suse.de>
+Acked-by: Richard Henderson <rth at twiddle.net>
+Acked-by: Christian Borntraeger <borntraeger at de.ibm.com>
+(cherry picked from commit 235a3f0bed3584fe65079ffa07c7a842971f261e)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/s390-virtio.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/s390-virtio.c b/hw/s390-virtio.c
+index 47eed35..12ae612 100644
+--- a/hw/s390-virtio.c
++++ b/hw/s390-virtio.c
+@@ -284,8 +284,8 @@ static void s390_init(ram_addr_t my_ram_size,
+ }
+
+ /* we have to overwrite values in the kernel image, which are "rom" */
+- memcpy(rom_ptr(INITRD_PARM_START), &initrd_offset, 8);
+- memcpy(rom_ptr(INITRD_PARM_SIZE), &initrd_size, 8);
++ stq_p(rom_ptr(INITRD_PARM_START), initrd_offset);
++ stq_p(rom_ptr(INITRD_PARM_SIZE), initrd_size);
+ }
+
+ if (rom_ptr(KERN_PARM_AREA)) {
+--
+1.8.0.2
+
diff --git a/0314-PPC-Bamboo-Fix-memory-size-DT-property.patch b/0314-PPC-Bamboo-Fix-memory-size-DT-property.patch
new file mode 100644
index 0000000..a40ac4c
--- /dev/null
+++ b/0314-PPC-Bamboo-Fix-memory-size-DT-property.patch
@@ -0,0 +1,33 @@
+From ef7b114db1a56aaa69cb872ea0212a8cbe5c438d Mon Sep 17 00:00:00 2001
+From: Alexander Graf <agraf at suse.de>
+Date: Sat, 6 Oct 2012 02:02:05 +0200
+Subject: [PATCH] PPC: Bamboo: Fix memory size DT property
+
+Device tree properties need to be specified in big endian. Fix the
+bamboo memory size property accordingly.
+
+Signed-off-by: Alexander Graf <agraf at suse.de>
+CC: qemu-stable at nongnu.org
+(cherry picked from commit 5232fa59b17b45c04bd24e0d38224964816bf391)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/ppc440_bamboo.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/hw/ppc440_bamboo.c b/hw/ppc440_bamboo.c
+index c198071..9286438 100644
+--- a/hw/ppc440_bamboo.c
++++ b/hw/ppc440_bamboo.c
+@@ -59,7 +59,7 @@ static int bamboo_load_device_tree(target_phys_addr_t addr,
+ {
+ int ret = -1;
+ #ifdef CONFIG_FDT
+- uint32_t mem_reg_property[] = { 0, 0, ramsize };
++ uint32_t mem_reg_property[] = { 0, 0, cpu_to_be32(ramsize) };
+ char *filename;
+ int fdt_size;
+ void *fdt;
+--
+1.8.0.2
+
diff --git a/0315-target-sparc64-disable-VGA-cirrus.patch b/0315-target-sparc64-disable-VGA-cirrus.patch
new file mode 100644
index 0000000..55a8715
--- /dev/null
+++ b/0315-target-sparc64-disable-VGA-cirrus.patch
@@ -0,0 +1,37 @@
+From d88afebe37fbaf40a5f43c1c82609abc69a629b3 Mon Sep 17 00:00:00 2001
+From: Aurelien Jarno <aurelien at aurel32.net>
+Date: Mon, 22 Oct 2012 00:50:58 +0200
+Subject: [PATCH] target-sparc64: disable VGA cirrus
+
+OpenBIOS on sparc64 only support Standard VGA and not Cirrus VGA. Don't
+build Cirrus VGA support so that it can't be selected.
+
+This fixes the breakage introduced by commit f2898771.
+
+Reported-by: Richard Henderson <rth at twiddle.net>
+Cc: Blue Swirl <blauwirbel at gmail.com>
+Signed-off-by: Aurelien Jarno <aurelien at aurel32.net>
+Tested-by: Richard Henderson <rth at twiddle.net>
+Signed-off-by: Blue Swirl <blauwirbel at gmail.com>
+(cherry picked from commit 0356404b0f1da939657cad1efeb556745cd430d5)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ default-configs/sparc64-softmmu.mak | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/default-configs/sparc64-softmmu.mak b/default-configs/sparc64-softmmu.mak
+index c9a36c1..03e8b42 100644
+--- a/default-configs/sparc64-softmmu.mak
++++ b/default-configs/sparc64-softmmu.mak
+@@ -6,7 +6,6 @@ CONFIG_M48T59=y
+ CONFIG_PTIMER=y
+ CONFIG_VGA=y
+ CONFIG_VGA_PCI=y
+-CONFIG_VGA_CIRRUS=y
+ CONFIG_SERIAL=y
+ CONFIG_PARALLEL=y
+ CONFIG_PCKBD=y
+--
+1.8.0.2
+
diff --git a/0316-xhci-fix-usb-name-in-caps.patch b/0316-xhci-fix-usb-name-in-caps.patch
new file mode 100644
index 0000000..1f3e668
--- /dev/null
+++ b/0316-xhci-fix-usb-name-in-caps.patch
@@ -0,0 +1,40 @@
+From 57f23d23f079eaea5605e636ba3fa5d1bd2fe377 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel at redhat.com>
+Date: Wed, 24 Oct 2012 16:19:21 +0200
+Subject: [PATCH] xhci: fix usb name in caps
+
+Used to be "UTB" not "USB".
+
+Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
+(cherry picked from commit 0ebfb144e8ad3f2da436d630fdcc5aa9ab646341)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/usb/hcd-xhci.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
+index 333df59..30cb0d5 100644
+--- a/hw/usb/hcd-xhci.c
++++ b/hw/usb/hcd-xhci.c
+@@ -2098,7 +2098,7 @@ static uint32_t xhci_cap_read(XHCIState *xhci, uint32_t reg)
+ ret = 0x02000402; /* USB 2.0 */
+ break;
+ case 0x24: /* Supported Protocol:04 */
+- ret = 0x20425455; /* "USB " */
++ ret = 0x20425355; /* "USB " */
+ break;
+ case 0x28: /* Supported Protocol:08 */
+ ret = 0x00000001 | (USB2_PORTS<<8);
+@@ -2110,7 +2110,7 @@ static uint32_t xhci_cap_read(XHCIState *xhci, uint32_t reg)
+ ret = 0x03000002; /* USB 3.0 */
+ break;
+ case 0x34: /* Supported Protocol:04 */
+- ret = 0x20425455; /* "USB " */
++ ret = 0x20425355; /* "USB " */
+ break;
+ case 0x38: /* Supported Protocol:08 */
+ ret = 0x00000000 | (USB2_PORTS+1) | (USB3_PORTS<<8);
+--
+1.8.0.2
+
diff --git a/0317-tools-initialize-main-loop-before-block-layer.patch b/0317-tools-initialize-main-loop-before-block-layer.patch
new file mode 100644
index 0000000..178620a
--- /dev/null
+++ b/0317-tools-initialize-main-loop-before-block-layer.patch
@@ -0,0 +1,57 @@
+From cea4225aa439953117384764cb5c0b3c3fc325d4 Mon Sep 17 00:00:00 2001
+From: Paolo Bonzini <pbonzini at redhat.com>
+Date: Sat, 3 Nov 2012 18:10:17 +0100
+Subject: [PATCH] tools: initialize main loop before block layer
+
+Tools were broken because they initialized the block layer while
+qemu_aio_context was still NULL.
+
+Reported-by: malc <av1474 at comtv.ru>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+Signed-off-by: malc <av1474 at comtv.ru>
+(cherry picked from commit 2592c59a66d456fe98fe96cb5787b356c40ee66f)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ qemu-img.c | 3 +--
+ qemu-io.c | 3 +--
+ 2 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/qemu-img.c b/qemu-img.c
+index 7615e91..c90ae4a 100644
+--- a/qemu-img.c
++++ b/qemu-img.c
+@@ -1698,14 +1698,13 @@ int main(int argc, char **argv)
+
+ error_set_progname(argv[0]);
+
++ qemu_init_main_loop();
+ bdrv_init();
+ if (argc < 2)
+ help();
+ cmdname = argv[1];
+ argc--; argv++;
+
+- qemu_init_main_loop();
+-
+ /* find the command */
+ for(cmd = img_cmds; cmd->name != NULL; cmd++) {
+ if (!strcmp(cmdname, cmd->name)) {
+diff --git a/qemu-io.c b/qemu-io.c
+index d0f4fb7..1ad7d3a 100644
+--- a/qemu-io.c
++++ b/qemu-io.c
+@@ -1892,9 +1892,8 @@ int main(int argc, char **argv)
+ exit(1);
+ }
+
+- bdrv_init();
+-
+ qemu_init_main_loop();
++ bdrv_init();
+
+ /* initialize commands */
+ quit_init();
+--
+1.8.0.2
+
diff --git a/0318-m68k-Return-semihosting-errno-values-correctly.patch b/0318-m68k-Return-semihosting-errno-values-correctly.patch
new file mode 100644
index 0000000..397a8a3
--- /dev/null
+++ b/0318-m68k-Return-semihosting-errno-values-correctly.patch
@@ -0,0 +1,39 @@
+From 85c9ce8e19f0a652e121144f6b6c21d618325363 Mon Sep 17 00:00:00 2001
+From: Meador Inge <meadori at codesourcery.com>
+Date: Mon, 29 Oct 2012 12:05:09 +0000
+Subject: [PATCH] m68k: Return semihosting errno values correctly
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixing a simple typo, s/errno/err/, that caused
+the error status from GDB semihosted system calls
+to be returned incorrectly.
+
+Signed-off-by: Meador Inge <meadori at codesourcery.com>
+Reviewed-by: Andreas Färber <afaerber at suse.de>
+Signed-off-by: Peter Maydell <peter.maydell at linaro.org>
+Signed-off-by: Blue Swirl <blauwirbel at gmail.com>
+(cherry picked from commit aed91c1bff5e568c7b0fbd0e1e7e2f9e62409e73)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ target-m68k/m68k-semi.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/target-m68k/m68k-semi.c b/target-m68k/m68k-semi.c
+index 3bb30cd..fed44ea 100644
+--- a/target-m68k/m68k-semi.c
++++ b/target-m68k/m68k-semi.c
+@@ -150,7 +150,7 @@ static void m68k_semi_cb(CPUM68KState *env, target_ulong ret, target_ulong err)
+ }
+ /* FIXME - handle put_user() failure */
+ put_user_u32(ret, args);
+- put_user_u32(errno, args + 4);
++ put_user_u32(err, args + 4);
+ }
+
+ #define ARG(n) \
+--
+1.8.0.2
+
diff --git a/0319-nbd-fixes-to-read-only-handling.patch b/0319-nbd-fixes-to-read-only-handling.patch
new file mode 100644
index 0000000..fdefe80
--- /dev/null
+++ b/0319-nbd-fixes-to-read-only-handling.patch
@@ -0,0 +1,62 @@
+From bcbf10c15f43cfc079622c25ef282688965a7128 Mon Sep 17 00:00:00 2001
+From: Paolo Bonzini <pbonzini at redhat.com>
+Date: Tue, 13 Nov 2012 10:34:17 +0100
+Subject: [PATCH] nbd: fixes to read-only handling
+
+We do not need BLKROSET if the kernel supports setting flags.
+Also, always do BLKROSET even for a read-write export, otherwise
+the read-only state remains "sticky" after the invocation of
+"qemu-nbd -r".
+
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+(cherry picked from commit c8969eded252058e90e91f12f75f32aceae46ec9)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ nbd.c | 25 ++++++++++++-------------
+ 1 file changed, 12 insertions(+), 13 deletions(-)
+
+diff --git a/nbd.c b/nbd.c
+index 206f75c..19f6cd8 100644
+--- a/nbd.c
++++ b/nbd.c
+@@ -399,24 +399,23 @@ int nbd_init(int fd, int csock, uint32_t flags, off_t size, size_t blocksize)
+ return -serrno;
+ }
+
+- if (flags & NBD_FLAG_READ_ONLY) {
+- int read_only = 1;
+- TRACE("Setting readonly attribute");
+-
+- if (ioctl(fd, BLKROSET, (unsigned long) &read_only) < 0) {
++ if (ioctl(fd, NBD_SET_FLAGS, flags) < 0) {
++ if (errno == ENOTTY) {
++ int read_only = (flags & NBD_FLAG_READ_ONLY) != 0;
++ TRACE("Setting readonly attribute");
++
++ if (ioctl(fd, BLKROSET, (unsigned long) &read_only) < 0) {
++ int serrno = errno;
++ LOG("Failed setting read-only attribute");
++ return -serrno;
++ }
++ } else {
+ int serrno = errno;
+- LOG("Failed setting read-only attribute");
++ LOG("Failed setting flags");
+ return -serrno;
+ }
+ }
+
+- if (ioctl(fd, NBD_SET_FLAGS, flags) < 0
+- && errno != ENOTTY) {
+- int serrno = errno;
+- LOG("Failed setting flags");
+- return -serrno;
+- }
+-
+ TRACE("Negotiation ended");
+
+ return 0;
+--
+1.8.0.2
+
diff --git a/0320-mips-malta-fix-CBUS-UART-interrupt-pin.patch b/0320-mips-malta-fix-CBUS-UART-interrupt-pin.patch
new file mode 100644
index 0000000..841a1d5
--- /dev/null
+++ b/0320-mips-malta-fix-CBUS-UART-interrupt-pin.patch
@@ -0,0 +1,41 @@
+From e6cd59a324a330fe7fd50f3b91df4f34ad2ea111 Mon Sep 17 00:00:00 2001
+From: Aurelien Jarno <aurelien at aurel32.net>
+Date: Wed, 14 Nov 2012 15:04:42 +0100
+Subject: [PATCH] mips/malta: fix CBUS UART interrupt pin
+
+According to the MIPS Malta Developement Platform User's Manual, the
+i8259 interrupt controller is supposed to be connected to the hardware
+IRQ0, and the CBUS UART to the hardware interrupt 2.
+
+In QEMU they are both connected to hardware interrupt 0, the CBUS UART
+interrupt being wrong. This patch fixes that. It should be noted that
+the irq array in QEMU includes the software interrupts, hence
+env->irq[2] is the first hardware interrupt.
+
+Cc: Ralf Baechle <ralf at linux-mips.org>
+Reviewed-by: Eric Johnson <ericj at mips.com>
+Signed-off-by: Aurelien Jarno <aurelien at aurel32.net>
+(cherry picked from commit 68d001928b151a0c50f367c0bdca645b3d5e9ed3)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/mips_malta.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/hw/mips_malta.c b/hw/mips_malta.c
+index ad23f26..9289a28 100644
+--- a/hw/mips_malta.c
++++ b/hw/mips_malta.c
+@@ -860,7 +860,8 @@ void mips_malta_init (ram_addr_t ram_size,
+ be = 0;
+ #endif
+ /* FPGA */
+- malta_fpga_init(system_memory, FPGA_ADDRESS, env->irq[2], serial_hds[2]);
++ /* The CBUS UART is attached to the MIPS CPU INT2 pin, ie interrupt 4 */
++ malta_fpga_init(system_memory, FPGA_ADDRESS, env->irq[4], serial_hds[2]);
+
+ /* Load firmware in flash / BIOS. */
+ dinfo = drive_get(IF_PFLASH, 0, fl_idx);
+--
+1.8.0.2
+
diff --git a/0321-target-mips-fix-wrong-microMIPS-opcode-encoding.patch b/0321-target-mips-fix-wrong-microMIPS-opcode-encoding.patch
new file mode 100644
index 0000000..31f19ff
--- /dev/null
+++ b/0321-target-mips-fix-wrong-microMIPS-opcode-encoding.patch
@@ -0,0 +1,38 @@
+From 7575e5a249f1bc38ee9498f2663771b1ccd7702e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=E9=99=B3=E9=9F=8B=E4=BB=BB=20=28Wei-Ren=20Chen=29?=
+ <chenwj at iis.sinica.edu.tw>
+Date: Wed, 14 Nov 2012 10:49:55 +0800
+Subject: [PATCH] target-mips: fix wrong microMIPS opcode encoding
+
+While reading microMIPS decoding, I found a possible wrong opcode
+encoding. According to [1] page 166, the bits 13..12 for MULTU is
+0x01 rather than 0x00. Please review, thanks.
+
+[1] MIPS Architecture for Programmers VolumeIV-e: The MIPS DSP
+ Application-Specific Extension to the microMIPS32 Architecture
+
+Signed-off-by: Chen Wei-Ren <chenwj at iis.sinica.edu.tw>
+Signed-off-by: Aurelien Jarno <aurelien at aurel32.net>
+(cherry picked from commit 6801038bc52d61f81ac8a25fbe392f1bad982887)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ target-mips/translate.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/target-mips/translate.c b/target-mips/translate.c
+index 4e04e97..49907bb 100644
+--- a/target-mips/translate.c
++++ b/target-mips/translate.c
+@@ -9486,7 +9486,7 @@ enum {
+
+ /* bits 13..12 for 0x32 */
+ MULT_ACC = 0x0,
+- MULTU_ACC = 0x0,
++ MULTU_ACC = 0x1,
+
+ /* bits 15..12 for 0x2c */
+ SEB = 0x2,
+--
+1.8.0.2
+
diff --git a/0322-tcg-arm-fix-TLB-access-in-qemu-ld-st-ops.patch b/0322-tcg-arm-fix-TLB-access-in-qemu-ld-st-ops.patch
new file mode 100644
index 0000000..a181d1a
--- /dev/null
+++ b/0322-tcg-arm-fix-TLB-access-in-qemu-ld-st-ops.patch
@@ -0,0 +1,169 @@
+From 7482be857b0d55189020bef699b65903be9c256a Mon Sep 17 00:00:00 2001
+From: Aurelien Jarno <aurelien at aurel32.net>
+Date: Tue, 9 Oct 2012 21:53:11 +0200
+Subject: [PATCH] tcg/arm: fix TLB access in qemu-ld/st ops
+
+The TCG arm backend considers likely that the offset to the TLB
+entries does not exceed 12 bits for mem_index = 0. In practice this is
+not true for at least the MIPS target.
+
+The current patch fixes that by loading the bits 23-12 with a separate
+instruction, and using loads with address writeback, independently of
+the value of mem_idx. In total this allow a 24-bit offset, which is a
+lot more than needed.
+
+Cc: Andrzej Zaborowski <balrogg at gmail.com>
+Cc: Peter Maydell <peter.maydell at linaro.org>
+Cc: qemu-stable at nongnu.org
+Signed-off-by: Aurelien Jarno <aurelien at aurel32.net>
+(cherry picked from commit d17bd1d8cc27f8c1a24c65f555a77a661c332b7f)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ tcg/arm/tcg-target.c | 78 ++++++++++++++++++++++++++++------------------------
+ 1 file changed, 42 insertions(+), 36 deletions(-)
+
+diff --git a/tcg/arm/tcg-target.c b/tcg/arm/tcg-target.c
+index aed3b53..fbad716 100644
+--- a/tcg/arm/tcg-target.c
++++ b/tcg/arm/tcg-target.c
+@@ -630,6 +630,22 @@ static inline void tcg_out_ld32_12(TCGContext *s, int cond,
+ (rn << 16) | (rd << 12) | ((-im) & 0xfff));
+ }
+
++/* Offset pre-increment with base writeback. */
++static inline void tcg_out_ld32_12wb(TCGContext *s, int cond,
++ int rd, int rn, tcg_target_long im)
++{
++ /* ldr with writeback and both register equals is UNPREDICTABLE */
++ assert(rd != rn);
++
++ if (im >= 0) {
++ tcg_out32(s, (cond << 28) | 0x05b00000 |
++ (rn << 16) | (rd << 12) | (im & 0xfff));
++ } else {
++ tcg_out32(s, (cond << 28) | 0x05300000 |
++ (rn << 16) | (rd << 12) | ((-im) & 0xfff));
++ }
++}
++
+ static inline void tcg_out_st32_12(TCGContext *s, int cond,
+ int rd, int rn, tcg_target_long im)
+ {
+@@ -1062,7 +1078,7 @@ static inline void tcg_out_qemu_ld(TCGContext *s, const TCGArg *args, int opc)
+ {
+ int addr_reg, data_reg, data_reg2, bswap;
+ #ifdef CONFIG_SOFTMMU
+- int mem_index, s_bits;
++ int mem_index, s_bits, tlb_offset;
+ TCGReg argreg;
+ # if TARGET_LONG_BITS == 64
+ int addr_reg2;
+@@ -1102,19 +1118,15 @@ static inline void tcg_out_qemu_ld(TCGContext *s, const TCGArg *args, int opc)
+ TCG_REG_R0, TCG_REG_R8, CPU_TLB_SIZE - 1);
+ tcg_out_dat_reg(s, COND_AL, ARITH_ADD, TCG_REG_R0, TCG_AREG0,
+ TCG_REG_R0, SHIFT_IMM_LSL(CPU_TLB_ENTRY_BITS));
+- /* In the
+- * ldr r1 [r0, #(offsetof(CPUArchState, tlb_table[mem_index][0].addr_read))]
+- * below, the offset is likely to exceed 12 bits if mem_index != 0 and
+- * not exceed otherwise, so use an
+- * add r0, r0, #(mem_index * sizeof *CPUArchState.tlb_table)
+- * before.
+- */
+- if (mem_index)
++ /* We assume that the offset is contained within 20 bits. */
++ tlb_offset = offsetof(CPUArchState, tlb_table[mem_index][0].addr_read);
++ assert(tlb_offset & ~0xfffff == 0);
++ if (tlb_offset > 0xfff) {
+ tcg_out_dat_imm(s, COND_AL, ARITH_ADD, TCG_REG_R0, TCG_REG_R0,
+- (mem_index << (TLB_SHIFT & 1)) |
+- ((16 - (TLB_SHIFT >> 1)) << 8));
+- tcg_out_ld32_12(s, COND_AL, TCG_REG_R1, TCG_REG_R0,
+- offsetof(CPUArchState, tlb_table[0][0].addr_read));
++ 0xa00 | (tlb_offset >> 12));
++ tlb_offset &= 0xfff;
++ }
++ tcg_out_ld32_12wb(s, COND_AL, TCG_REG_R1, TCG_REG_R0, tlb_offset);
+ tcg_out_dat_reg(s, COND_AL, ARITH_CMP, 0, TCG_REG_R1,
+ TCG_REG_R8, SHIFT_IMM_LSL(TARGET_PAGE_BITS));
+ /* Check alignment. */
+@@ -1122,15 +1134,14 @@ static inline void tcg_out_qemu_ld(TCGContext *s, const TCGArg *args, int opc)
+ tcg_out_dat_imm(s, COND_EQ, ARITH_TST,
+ 0, addr_reg, (1 << s_bits) - 1);
+ # if TARGET_LONG_BITS == 64
+- /* XXX: possibly we could use a block data load or writeback in
+- * the first access. */
+- tcg_out_ld32_12(s, COND_EQ, TCG_REG_R1, TCG_REG_R0,
+- offsetof(CPUArchState, tlb_table[0][0].addr_read) + 4);
++ /* XXX: possibly we could use a block data load in the first access. */
++ tcg_out_ld32_12(s, COND_EQ, TCG_REG_R1, TCG_REG_R0, 4);
+ tcg_out_dat_reg(s, COND_EQ, ARITH_CMP, 0,
+ TCG_REG_R1, addr_reg2, SHIFT_IMM_LSL(0));
+ # endif
+ tcg_out_ld32_12(s, COND_EQ, TCG_REG_R1, TCG_REG_R0,
+- offsetof(CPUArchState, tlb_table[0][0].addend));
++ offsetof(CPUTLBEntry, addend)
++ - offsetof(CPUTLBEntry, addr_read));
+
+ switch (opc) {
+ case 0:
+@@ -1288,7 +1299,7 @@ static inline void tcg_out_qemu_st(TCGContext *s, const TCGArg *args, int opc)
+ {
+ int addr_reg, data_reg, data_reg2, bswap;
+ #ifdef CONFIG_SOFTMMU
+- int mem_index, s_bits;
++ int mem_index, s_bits, tlb_offset;
+ TCGReg argreg;
+ # if TARGET_LONG_BITS == 64
+ int addr_reg2;
+@@ -1325,19 +1336,15 @@ static inline void tcg_out_qemu_st(TCGContext *s, const TCGArg *args, int opc)
+ TCG_REG_R0, TCG_REG_R8, CPU_TLB_SIZE - 1);
+ tcg_out_dat_reg(s, COND_AL, ARITH_ADD, TCG_REG_R0,
+ TCG_AREG0, TCG_REG_R0, SHIFT_IMM_LSL(CPU_TLB_ENTRY_BITS));
+- /* In the
+- * ldr r1 [r0, #(offsetof(CPUArchState, tlb_table[mem_index][0].addr_write))]
+- * below, the offset is likely to exceed 12 bits if mem_index != 0 and
+- * not exceed otherwise, so use an
+- * add r0, r0, #(mem_index * sizeof *CPUArchState.tlb_table)
+- * before.
+- */
+- if (mem_index)
++ /* We assume that the offset is contained within 20 bits. */
++ tlb_offset = offsetof(CPUArchState, tlb_table[mem_index][0].addr_write);
++ assert(tlb_offset & ~0xfffff == 0);
++ if (tlb_offset > 0xfff) {
+ tcg_out_dat_imm(s, COND_AL, ARITH_ADD, TCG_REG_R0, TCG_REG_R0,
+- (mem_index << (TLB_SHIFT & 1)) |
+- ((16 - (TLB_SHIFT >> 1)) << 8));
+- tcg_out_ld32_12(s, COND_AL, TCG_REG_R1, TCG_REG_R0,
+- offsetof(CPUArchState, tlb_table[0][0].addr_write));
++ 0xa00 | (tlb_offset >> 12));
++ tlb_offset &= 0xfff;
++ }
++ tcg_out_ld32_12wb(s, COND_AL, TCG_REG_R1, TCG_REG_R0, tlb_offset);
+ tcg_out_dat_reg(s, COND_AL, ARITH_CMP, 0, TCG_REG_R1,
+ TCG_REG_R8, SHIFT_IMM_LSL(TARGET_PAGE_BITS));
+ /* Check alignment. */
+@@ -1345,15 +1352,14 @@ static inline void tcg_out_qemu_st(TCGContext *s, const TCGArg *args, int opc)
+ tcg_out_dat_imm(s, COND_EQ, ARITH_TST,
+ 0, addr_reg, (1 << s_bits) - 1);
+ # if TARGET_LONG_BITS == 64
+- /* XXX: possibly we could use a block data load or writeback in
+- * the first access. */
+- tcg_out_ld32_12(s, COND_EQ, TCG_REG_R1, TCG_REG_R0,
+- offsetof(CPUArchState, tlb_table[0][0].addr_write) + 4);
++ /* XXX: possibly we could use a block data load in the first access. */
++ tcg_out_ld32_12(s, COND_EQ, TCG_REG_R1, TCG_REG_R0, 4);
+ tcg_out_dat_reg(s, COND_EQ, ARITH_CMP, 0,
+ TCG_REG_R1, addr_reg2, SHIFT_IMM_LSL(0));
+ # endif
+ tcg_out_ld32_12(s, COND_EQ, TCG_REG_R1, TCG_REG_R0,
+- offsetof(CPUArchState, tlb_table[0][0].addend));
++ offsetof(CPUTLBEntry, addend)
++ - offsetof(CPUTLBEntry, addr_write));
+
+ switch (opc) {
+ case 0:
+--
+1.8.0.2
+
diff --git a/0323-tcg-arm-fix-cross-endian-qemu_st16.patch b/0323-tcg-arm-fix-cross-endian-qemu_st16.patch
new file mode 100644
index 0000000..a4ba0d9
--- /dev/null
+++ b/0323-tcg-arm-fix-cross-endian-qemu_st16.patch
@@ -0,0 +1,77 @@
+From c6f924c195da25e7211db91abfe0f2942d631509 Mon Sep 17 00:00:00 2001
+From: Aurelien Jarno <aurelien at aurel32.net>
+Date: Tue, 9 Oct 2012 21:53:11 +0200
+Subject: [PATCH] tcg/arm: fix cross-endian qemu_st16
+
+The bswap16 TCG opcode assumes that the high bytes of the temp equal
+to 0 before calling it. The ARM backend implementation takes this
+assumption to slightly optimize the generated code.
+
+The same implementation is called for implementing the cross-endian
+qemu_st16 opcode, where this assumption is not true anymore. One way to
+fix that would be to zero the high bytes before calling it. Given the
+store instruction just ignore them, it is possible to provide a slightly
+more optimized version. With ARMv6+ the rev16 instruction does the work
+correctly. For lower ARM versions the patch provides a version which
+behaves correctly with non-zero high bytes, but fill them with junk.
+
+Cc: Andrzej Zaborowski <balrogg at gmail.com>
+Cc: Peter Maydell <peter.maydell at linaro.org>
+Cc: qemu-stable at nongnu.org
+Reviewed-by: Peter Maydell <peter.maydell at linaro.org>
+Signed-off-by: Aurelien Jarno <aurelien at aurel32.net>
+(cherry picked from commit 7aab08aa786e3a8838beac758ee61c5000144937)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ tcg/arm/tcg-target.c | 20 ++++++++++++++++++--
+ 1 file changed, 18 insertions(+), 2 deletions(-)
+
+diff --git a/tcg/arm/tcg-target.c b/tcg/arm/tcg-target.c
+index fbad716..83aa856 100644
+--- a/tcg/arm/tcg-target.c
++++ b/tcg/arm/tcg-target.c
+@@ -602,6 +602,22 @@ static inline void tcg_out_bswap16(TCGContext *s, int cond, int rd, int rn)
+ }
+ }
+
++/* swap the two low bytes assuming that the two high input bytes and the
++ two high output bit can hold any value. */
++static inline void tcg_out_bswap16st(TCGContext *s, int cond, int rd, int rn)
++{
++ if (use_armv6_instructions) {
++ /* rev16 */
++ tcg_out32(s, 0x06bf0fb0 | (cond << 28) | (rd << 12) | rn);
++ } else {
++ tcg_out_dat_reg(s, cond, ARITH_MOV,
++ TCG_REG_R8, 0, rn, SHIFT_IMM_LSR(8));
++ tcg_out_dat_imm(s, cond, ARITH_AND, TCG_REG_R8, TCG_REG_R8, 0xff);
++ tcg_out_dat_reg(s, cond, ARITH_ORR,
++ rd, TCG_REG_R8, rn, SHIFT_IMM_LSL(8));
++ }
++}
++
+ static inline void tcg_out_bswap32(TCGContext *s, int cond, int rd, int rn)
+ {
+ if (use_armv6_instructions) {
+@@ -1367,7 +1383,7 @@ static inline void tcg_out_qemu_st(TCGContext *s, const TCGArg *args, int opc)
+ break;
+ case 1:
+ if (bswap) {
+- tcg_out_bswap16(s, COND_EQ, TCG_REG_R0, data_reg);
++ tcg_out_bswap16st(s, COND_EQ, TCG_REG_R0, data_reg);
+ tcg_out_st16_r(s, COND_EQ, TCG_REG_R0, addr_reg, TCG_REG_R1);
+ } else {
+ tcg_out_st16_r(s, COND_EQ, data_reg, addr_reg, TCG_REG_R1);
+@@ -1453,7 +1469,7 @@ static inline void tcg_out_qemu_st(TCGContext *s, const TCGArg *args, int opc)
+ break;
+ case 1:
+ if (bswap) {
+- tcg_out_bswap16(s, COND_AL, TCG_REG_R0, data_reg);
++ tcg_out_bswap16st(s, COND_AL, TCG_REG_R0, data_reg);
+ tcg_out_st16_8(s, COND_AL, TCG_REG_R0, addr_reg, 0);
+ } else {
+ tcg_out_st16_8(s, COND_AL, data_reg, addr_reg, 0);
+--
+1.8.0.2
+
diff --git a/0324-target-openrisc-remove-conflicting-definitions-from-.patch b/0324-target-openrisc-remove-conflicting-definitions-from-.patch
new file mode 100644
index 0000000..fc77240
--- /dev/null
+++ b/0324-target-openrisc-remove-conflicting-definitions-from-.patch
@@ -0,0 +1,52 @@
+From 1a51e9b66a61238e56668d647a74a6ceeeeaa727 Mon Sep 17 00:00:00 2001
+From: Aurelien Jarno <aurelien at aurel32.net>
+Date: Tue, 9 Oct 2012 21:53:12 +0200
+Subject: [PATCH] target-openrisc: remove conflicting definitions from cpu.h
+
+On an ARM host, the registers definitions from cpu.h clash
+with /usr/include/sys/ucontext.h. As there are unused, just remove
+them.
+
+Cc: Jia Liu <proljc at gmail.com>
+Cc: qemu-stable at nongnu.org
+Reviewed-by: Peter Maydell <peter.maydell at linaro.org>
+Signed-off-by: Aurelien Jarno <aurelien at aurel32.net>
+(cherry picked from commit 44e04d3b945ba6f5cc87e65192081da4783f73fa)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ target-openrisc/cpu.h | 18 ------------------
+ 1 file changed, 18 deletions(-)
+
+diff --git a/target-openrisc/cpu.h b/target-openrisc/cpu.h
+index de21a87..244788c 100644
+--- a/target-openrisc/cpu.h
++++ b/target-openrisc/cpu.h
+@@ -89,24 +89,6 @@ enum {
+ /* Interrupt */
+ #define NR_IRQS 32
+
+-/* Registers */
+-enum {
+- R0 = 0, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10,
+- R11, R12, R13, R14, R15, R16, R17, R18, R19, R20,
+- R21, R22, R23, R24, R25, R26, R27, R28, R29, R30,
+- R31
+-};
+-
+-/* Register aliases */
+-enum {
+- R_ZERO = R0,
+- R_SP = R1,
+- R_FP = R2,
+- R_LR = R9,
+- R_RV = R11,
+- R_RVH = R12
+-};
+-
+ /* Unit presece register */
+ enum {
+ UPR_UP = (1 << 0),
+--
+1.8.0.2
+
diff --git a/0325-configure-avoid-compiler-warning-in-pipe2-detection.patch b/0325-configure-avoid-compiler-warning-in-pipe2-detection.patch
new file mode 100644
index 0000000..fe952fa
--- /dev/null
+++ b/0325-configure-avoid-compiler-warning-in-pipe2-detection.patch
@@ -0,0 +1,38 @@
+From b61abbc18c7ba7cfb58a0d3a51fb377f4a5af5e4 Mon Sep 17 00:00:00 2001
+From: Bruce Rogers <brogers at suse.com>
+Date: Mon, 20 Aug 2012 12:45:08 -0600
+Subject: [PATCH] configure: avoid compiler warning in pipe2 detection
+
+When building qemu-kvm for openSUSE:Factory, I am getting a
+warning in the pipe2 detection performed by configure, which
+prevents using --enable-werror.
+
+Change detection code to use return value of pipe2.
+
+Signed-off-by: Bruce Rogers <brogers at suse.com>
+Reviewed-by: Peter Maydell <peter.maydell at linaro.org>
+Signed-off-by: Blue Swirl <blauwirbel at gmail.com>
+(cherry picked from commit 9bca81624ef9299b9a06013fd29cd6899079aab4)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ configure | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/configure b/configure
+index 4d11fe3..9129433 100755
+--- a/configure
++++ b/configure
+@@ -2399,8 +2399,7 @@ cat > $TMPC << EOF
+ int main(void)
+ {
+ int pipefd[2];
+- pipe2(pipefd, O_CLOEXEC);
+- return 0;
++ return pipe2(pipefd, O_CLOEXEC);
+ }
+ EOF
+ if compile_prog "" "" ; then
+--
+1.8.0.2
+
diff --git a/0326-qcow2-Fix-refcount-table-size-calculation.patch b/0326-qcow2-Fix-refcount-table-size-calculation.patch
new file mode 100644
index 0000000..ec32c1a
--- /dev/null
+++ b/0326-qcow2-Fix-refcount-table-size-calculation.patch
@@ -0,0 +1,36 @@
+From 1687a813ebbb6915be5c103ba99221d11db5647f Mon Sep 17 00:00:00 2001
+From: Kevin Wolf <kwolf at redhat.com>
+Date: Fri, 26 Oct 2012 16:33:32 +0200
+Subject: [PATCH] qcow2: Fix refcount table size calculation
+
+A missing factor for the refcount table entry size in the calculation
+could mean that too little memory was allocated for the in-memory
+representation of the table, resulting in a buffer overflow.
+
+Signed-off-by: Kevin Wolf <kwolf at redhat.com>
+Reviewed-by: Michael Tokarev <mjt at tls.msk.ru>
+Tested-by: Michael Tokarev <mjt at tls.msk.ru>
+(cherry picked from commit a3548077062dd9dc2701ebffd931ba6eaef40bec)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ block/qcow2-refcount.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c
+index 5e3f915..96224d1 100644
+--- a/block/qcow2-refcount.c
++++ b/block/qcow2-refcount.c
+@@ -301,7 +301,8 @@ static int alloc_refcount_block(BlockDriverState *bs,
+ uint64_t last_table_size;
+ uint64_t blocks_clusters;
+ do {
+- uint64_t table_clusters = size_to_clusters(s, table_size);
++ uint64_t table_clusters =
++ size_to_clusters(s, table_size * sizeof(uint64_t));
+ blocks_clusters = 1 +
+ ((table_clusters + refcount_block_clusters - 1)
+ / refcount_block_clusters);
+--
+1.8.0.2
+
diff --git a/0327-tci-Fix-type-of-tci_read_label.patch b/0327-tci-Fix-type-of-tci_read_label.patch
new file mode 100644
index 0000000..82dbb6b
--- /dev/null
+++ b/0327-tci-Fix-type-of-tci_read_label.patch
@@ -0,0 +1,39 @@
+From e261b15047dbc9f8309f4e6b94b84f530402edc2 Mon Sep 17 00:00:00 2001
+From: Richard Henderson <rth at twiddle.net>
+Date: Mon, 19 Nov 2012 12:43:14 -0800
+Subject: [PATCH] tci: Fix type of tci_read_label
+
+Fixes the pointer truncation that was occurring for branches.
+
+Cc: Stefan Weil <sw at weilnetz.de>
+Cc: Blue Swirl <blauwirbel at gmail.com>
+Signed-off-by: Richard Henderson <rth at twiddle.net>
+Reviewed-by: Stefan Weil <sw at weilnetz.de>
+Tested-by: Stefan Weil <sw at weilnetz.de>
+Signed-off-by: Blue Swirl <blauwirbel at gmail.com>
+(cherry picked from commit c6c5063c7a5bb1d3fe6b9931a1ec15294e39b8b1)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ tci.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tci.c b/tci.c
+index a4f7b78..bb456d2 100644
+--- a/tci.c
++++ b/tci.c
+@@ -338,9 +338,9 @@ static uint64_t tci_read_ri64(uint8_t **tb_ptr)
+ }
+ #endif
+
+-static target_ulong tci_read_label(uint8_t **tb_ptr)
++static tcg_target_ulong tci_read_label(uint8_t **tb_ptr)
+ {
+- target_ulong label = tci_read_i(tb_ptr);
++ tcg_target_ulong label = tci_read_i(tb_ptr);
+ assert(label != 0);
+ return label;
+ }
+--
+1.8.0.2
+
diff --git a/0328-block-Fix-regression-for-MinGW-assertion-caused-by-s.patch b/0328-block-Fix-regression-for-MinGW-assertion-caused-by-s.patch
new file mode 100644
index 0000000..7e864bf
--- /dev/null
+++ b/0328-block-Fix-regression-for-MinGW-assertion-caused-by-s.patch
@@ -0,0 +1,41 @@
+From 9eeac8cebac645531dd0b9d79710bea732e76c40 Mon Sep 17 00:00:00 2001
+From: Stefan Weil <sw at weilnetz.de>
+Date: Thu, 22 Nov 2012 07:25:48 +0100
+Subject: [PATCH] block: Fix regression for MinGW (assertion caused by short
+ string)
+
+The local string tmp_filename is passed to function get_tmp_filename
+which expects a string with minimum size MAX_PATH for w32 hosts.
+
+MAX_PATH is 260 and PATH_MAX is 259, so tmp_filename was too short.
+
+Commit eba25057b9a5e19d10ace2bc7716667a31297169 introduced this
+regression.
+
+Signed-off-by: Stefan Weil <sw at weilnetz.de>
+Reviewed-by: Stefan Hajnoczi <stefanha at redhat.com>
+Signed-off-by: Blue Swirl <blauwirbel at gmail.com>
+(cherry picked from commit 89c9bc3d147fdaa932db99b0463b4af1d3e7cda1)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ block.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/block.c b/block.c
+index 4c0e7f5..e49a999 100644
+--- a/block.c
++++ b/block.c
+@@ -739,7 +739,8 @@ int bdrv_open(BlockDriverState *bs, const char *filename, int flags,
+ BlockDriver *drv)
+ {
+ int ret;
+- char tmp_filename[PATH_MAX];
++ /* TODO: extra byte is a hack to ensure MAX_PATH space on Windows. */
++ char tmp_filename[PATH_MAX + 1];
+
+ if (flags & BDRV_O_SNAPSHOT) {
+ BlockDriverState *bs1;
+--
+1.8.0.2
+
diff --git a/0329-qom-dynamic_cast-of-NULL-is-always-NULL.patch b/0329-qom-dynamic_cast-of-NULL-is-always-NULL.patch
new file mode 100644
index 0000000..2faa00e
--- /dev/null
+++ b/0329-qom-dynamic_cast-of-NULL-is-always-NULL.patch
@@ -0,0 +1,44 @@
+From 6ec7c05b9b753df2058dda52b10b6943a5626036 Mon Sep 17 00:00:00 2001
+From: Paolo Bonzini <pbonzini at redhat.com>
+Date: Fri, 23 Nov 2012 16:56:17 +0100
+Subject: [PATCH] qom: dynamic_cast of NULL is always NULL
+
+Trying to cast a NULL value will cause a crash. Returning
+NULL is also sensible, and it is also what the type-unsafe
+DO_UPCAST macro does.
+
+Reported-by: Markus Armbruster <armbru at redhat.com>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
+(cherry picked from commit b7f43fe46029d8fd0594cd599fa2599dcce0f553)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ qom/object.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/qom/object.c b/qom/object.c
+index e3e9242..f33e84d 100644
+--- a/qom/object.c
++++ b/qom/object.c
+@@ -417,7 +417,7 @@ void object_delete(Object *obj)
+
+ Object *object_dynamic_cast(Object *obj, const char *typename)
+ {
+- if (object_class_dynamic_cast(object_get_class(obj), typename)) {
++ if (obj && object_class_dynamic_cast(object_get_class(obj), typename)) {
+ return obj;
+ }
+
+@@ -430,7 +430,7 @@ Object *object_dynamic_cast_assert(Object *obj, const char *typename)
+
+ inst = object_dynamic_cast(obj, typename);
+
+- if (!inst) {
++ if (!inst && obj) {
+ fprintf(stderr, "Object %p is not an instance of type %s\n",
+ obj, typename);
+ abort();
+--
+1.8.0.2
+
diff --git a/0330-hmp-do-not-crash-on-invalid-SCSI-hotplug.patch b/0330-hmp-do-not-crash-on-invalid-SCSI-hotplug.patch
new file mode 100644
index 0000000..b7a710f
--- /dev/null
+++ b/0330-hmp-do-not-crash-on-invalid-SCSI-hotplug.patch
@@ -0,0 +1,46 @@
+From 7c0aea40a3318d914d791f23a85d0c488cae60fe Mon Sep 17 00:00:00 2001
+From: Paolo Bonzini <pbonzini at redhat.com>
+Date: Fri, 23 Nov 2012 16:56:18 +0100
+Subject: [PATCH] hmp: do not crash on invalid SCSI hotplug
+
+Commit 0d93692 (qdev: Convert busses to QEMU Object Model, 2012-05-02)
+removed a check on the type of the bus where a SCSI disk is hotplugged.
+However, hot-plugging to the wrong kind of device now causes a crash
+due to either a NULL pointer dereference (avoided by the previous patch)
+or a failed QOM cast.
+
+Instead, in this case we need to use object_dynamic_cast and check for
+the result, similar to what was done before that commit.
+
+Reported-by: Markus Armbruster <armbru at redhat.com>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
+(cherry picked from commit b5007bcc9729acd995518c52eb1038c4d8416b5d)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/pci-hotplug.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/hw/pci-hotplug.c b/hw/pci-hotplug.c
+index e7fb780..0ca5546 100644
+--- a/hw/pci-hotplug.c
++++ b/hw/pci-hotplug.c
+@@ -80,7 +80,13 @@ static int scsi_hot_add(Monitor *mon, DeviceState *adapter,
+ SCSIBus *scsibus;
+ SCSIDevice *scsidev;
+
+- scsibus = SCSI_BUS(QLIST_FIRST(&adapter->child_bus));
++ scsibus = (SCSIBus *)
++ object_dynamic_cast(OBJECT(QLIST_FIRST(&adapter->child_bus)),
++ TYPE_SCSI_BUS);
++ if (!scsibus) {
++ error_report("Device is not a SCSI adapter");
++ return -1;
++ }
+
+ /*
+ * drive_init() tries to find a default for dinfo->unit. Doesn't
+--
+1.8.0.2
+
diff --git a/0331-PPC-Fix-missing-TRACE-exception.patch b/0331-PPC-Fix-missing-TRACE-exception.patch
new file mode 100644
index 0000000..da3348a
--- /dev/null
+++ b/0331-PPC-Fix-missing-TRACE-exception.patch
@@ -0,0 +1,85 @@
+From 1e597afb2b3581ddcda1eeac81475452520ae43f Mon Sep 17 00:00:00 2001
+From: Julio Guerra <guerr at julio.in>
+Date: Fri, 19 Oct 2012 00:17:13 +0000
+Subject: [PATCH] PPC: Fix missing TRACE exception
+
+This patch fixes bug 1031698 :
+https://bugs.launchpad.net/qemu/+bug/1031698
+
+If we look at the (truncated) translation of the conditional branch
+instruction in the test submitted in the bug post, the call to the
+exception helper is missing in the "bne-false" chunk of translated
+code :
+
+IN:
+bne- 0x1800278
+
+OUT:
+0xb544236d: jne 0xb5442396
+
+0xb5442373: mov %ebp,(%esp)
+0xb5442376: mov $0x44,%ebx
+0xb544237b: mov %ebx,0x4(%esp)
+0xb544237f: mov $0x1800278,%ebx
+0xb5442384: mov %ebx,0x25c(%ebp)
+0xb544238a: call 0x827475a
+ ^^^^^^^^^^^^^^^^^^
+
+0xb5442396: mov %ebp,(%esp)
+0xb5442399: mov $0x44,%ebx
+0xb544239e: mov %ebx,0x4(%esp)
+0xb54423a2: mov $0x1800270,%ebx
+0xb54423a7: mov %ebx,0x25c(%ebp)
+
+Indeed, gen_exception(ctx, excp) called by gen_goto_tb (called by
+gen_bcond) changes ctx->exception's value to excp's :
+
+gen_bcond()
+{
+ gen_goto_tb(ctx, 0, ctx->nip + li - 4);
+ /* ctx->exception value is POWERPC_EXCP_BRANCH */
+
+ gen_goto_tb(ctx, 1, ctx->nip);
+ /* ctx->exception now value is POWERPC_EXCP_TRACE */
+}
+
+Making the following gen_goto_tb()'s test false during the second call :
+
+if ((ctx->singlestep_enabled &
+ (CPU_BRANCH_STEP | CPU_SINGLE_STEP)) &&
+ ctx->exception == POWERPC_EXCP_BRANCH /* false...*/) {
+ target_ulong tmp = ctx->nip;
+ ctx->nip = dest;
+ /* ... and this is the missing call */
+ gen_exception(ctx, POWERPC_EXCP_TRACE);
+ ctx->nip = tmp;
+}
+
+So the patch simply adds the missing matching case, fixing our problem.
+
+Signed-off-by: Julio Guerra <guerr at julio.in>
+Signed-off-by: Alexander Graf <agraf at suse.de>
+(cherry picked from commit f0cc4aa8450376ca2aee3ebb09db71f9f2ff333b)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ target-ppc/translate.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/target-ppc/translate.c b/target-ppc/translate.c
+index ac915cc..3c49ca9 100644
+--- a/target-ppc/translate.c
++++ b/target-ppc/translate.c
+@@ -3466,7 +3466,8 @@ static inline void gen_goto_tb(DisasContext *ctx, int n, target_ulong dest)
+ if (unlikely(ctx->singlestep_enabled)) {
+ if ((ctx->singlestep_enabled &
+ (CPU_BRANCH_STEP | CPU_SINGLE_STEP)) &&
+- ctx->exception == POWERPC_EXCP_BRANCH) {
++ (ctx->exception == POWERPC_EXCP_BRANCH ||
++ ctx->exception == POWERPC_EXCP_TRACE)) {
+ target_ulong tmp = ctx->nip;
+ ctx->nip = dest;
+ gen_exception(ctx, POWERPC_EXCP_TRACE);
+--
+1.8.0.2
+
diff --git a/0332-qom-fix-refcount-of-non-heap-allocated-objects.patch b/0332-qom-fix-refcount-of-non-heap-allocated-objects.patch
new file mode 100644
index 0000000..893a667
--- /dev/null
+++ b/0332-qom-fix-refcount-of-non-heap-allocated-objects.patch
@@ -0,0 +1,50 @@
+From 3f7b149e9d80fee4274dfaf46eb7989420a9f046 Mon Sep 17 00:00:00 2001
+From: Paolo Bonzini <pbonzini at redhat.com>
+Date: Fri, 23 Nov 2012 09:47:12 +0100
+Subject: [PATCH] qom: fix refcount of non-heap-allocated objects
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The reference count for embedded objects is always one too low, because
+object_initialize_with_type returns with zero references to the object.
+This causes premature finalization of the object (or an assertion failure)
+after calling object_ref to add an extra reference and object_unref to
+remove it.
+
+The fix is to move the initial object_ref call from object_new_with_type
+to object_initialize_with_type.
+
+Acked-by: Andreas Färber <afaerber at suse.de>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
+(cherry picked from commit 764b63125a77dab54ed405d493452a4e05679c2e)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ qom/object.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/qom/object.c b/qom/object.c
+index f33e84d..5499318 100644
+--- a/qom/object.c
++++ b/qom/object.c
+@@ -307,6 +307,7 @@ void object_initialize_with_type(void *data, TypeImpl *type)
+
+ memset(obj, 0, type->instance_size);
+ obj->class = type->class;
++ object_ref(obj);
+ QTAILQ_INIT(&obj->properties);
+ object_init_with_type(obj, type);
+ }
+@@ -395,7 +396,6 @@ Object *object_new_with_type(Type type)
+
+ obj = g_malloc(type->instance_size);
+ object_initialize_with_type(obj, type);
+- object_ref(obj);
+
+ return obj;
+ }
+--
+1.8.0.2
+
diff --git a/0333-qapi-handle-visitor-type_size-in-QapiDeallocVisitor.patch b/0333-qapi-handle-visitor-type_size-in-QapiDeallocVisitor.patch
new file mode 100644
index 0000000..f808218
--- /dev/null
+++ b/0333-qapi-handle-visitor-type_size-in-QapiDeallocVisitor.patch
@@ -0,0 +1,57 @@
+From 0e647462940092c7af035c69613c799fd65bd0cb Mon Sep 17 00:00:00 2001
+From: Stefan Hajnoczi <stefanha at redhat.com>
+Date: Mon, 26 Nov 2012 13:10:12 +0100
+Subject: [PATCH] qapi: handle visitor->type_size() in QapiDeallocVisitor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+visit_type_size() requires either visitor->type_size() or
+visitor_uint64() to be implemented, otherwise a NULL function pointer is
+invoked.
+
+It is possible to trigger this crash as follows:
+
+ $ qemu-system-x86_64 -netdev tap,sndbuf=0,id=netdev0 \
+ -device virtio-blk-pci,netdev=netdev0
+
+The 'sndbuf' option has type "size".
+
+Reviewed-by: Andreas Färber <afaerber at suse.de>
+Reviewed-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+Signed-off-by: Stefan Hajnoczi <stefanha at redhat.com>
+Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
+(cherry picked from commit 0c26f2eca40d6c65ea9edc62a10e510dc7f65cc8)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ qapi/qapi-dealloc-visitor.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/qapi/qapi-dealloc-visitor.c b/qapi/qapi-dealloc-visitor.c
+index a154523..a07b171 100644
+--- a/qapi/qapi-dealloc-visitor.c
++++ b/qapi/qapi-dealloc-visitor.c
+@@ -132,6 +132,11 @@ static void qapi_dealloc_type_number(Visitor *v, double *obj, const char *name,
+ {
+ }
+
++static void qapi_dealloc_type_size(Visitor *v, size_t *obj, const char *name,
++ Error **errp)
++{
++}
++
+ static void qapi_dealloc_type_enum(Visitor *v, int *obj, const char *strings[],
+ const char *kind, const char *name,
+ Error **errp)
+@@ -164,6 +169,7 @@ QapiDeallocVisitor *qapi_dealloc_visitor_new(void)
+ v->visitor.type_bool = qapi_dealloc_type_bool;
+ v->visitor.type_str = qapi_dealloc_type_str;
+ v->visitor.type_number = qapi_dealloc_type_number;
++ v->visitor.type_size = qapi_dealloc_type_size;
+
+ QTAILQ_INIT(&v->stack);
+
+--
+1.8.0.2
+
diff --git a/0334-qapi-fix-qapi_dealloc_type_size-parameter-type.patch b/0334-qapi-fix-qapi_dealloc_type_size-parameter-type.patch
new file mode 100644
index 0000000..f80ef25
--- /dev/null
+++ b/0334-qapi-fix-qapi_dealloc_type_size-parameter-type.patch
@@ -0,0 +1,36 @@
+From 191a171e02de164ae03e0f90a6cdead6e2bd029f Mon Sep 17 00:00:00 2001
+From: Bruce Rogers <brogers at suse.com>
+Date: Tue, 27 Nov 2012 13:11:25 -0700
+Subject: [PATCH] qapi: fix qapi_dealloc_type_size parameter type
+
+The second parameter to qapi_dealloc_type_size should be a uint64_t *,
+not a size_t *. This was causing our 32 bit x86 build to fail, since
+warnings are treated as errors.
+
+Signed-off-by: Bruce Rogers <brogers at suse.com>
+Reviewed-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+Reviewed-by: Stefan Weil <sw at weilnetz.de>
+Signed-off-by: Luiz Capitulino <lcapitulino at redhat.com>
+(cherry picked from commit 1d16252652688a775b244fffa1b9ac9b719ceffc)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ qapi/qapi-dealloc-visitor.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/qapi/qapi-dealloc-visitor.c b/qapi/qapi-dealloc-visitor.c
+index a07b171..75214e7 100644
+--- a/qapi/qapi-dealloc-visitor.c
++++ b/qapi/qapi-dealloc-visitor.c
+@@ -132,7 +132,7 @@ static void qapi_dealloc_type_number(Visitor *v, double *obj, const char *name,
+ {
+ }
+
+-static void qapi_dealloc_type_size(Visitor *v, size_t *obj, const char *name,
++static void qapi_dealloc_type_size(Visitor *v, uint64_t *obj, const char *name,
+ Error **errp)
+ {
+ }
+--
+1.8.0.2
+
diff --git a/0335-iscsi-fix-segfault-in-url-parsing.patch b/0335-iscsi-fix-segfault-in-url-parsing.patch
new file mode 100644
index 0000000..3d6a3af
--- /dev/null
+++ b/0335-iscsi-fix-segfault-in-url-parsing.patch
@@ -0,0 +1,34 @@
+From 09d790ef3ff7aa8d19a7f5e82bac04e101887ca4 Mon Sep 17 00:00:00 2001
+From: Peter Lieven <pl at dlhnet.de>
+Date: Thu, 15 Nov 2012 15:42:06 +0100
+Subject: [PATCH] iscsi: fix segfault in url parsing
+
+If an invalid URL is specified iscsi_get_error(iscsi) is called
+with iscsi == NULL.
+
+Signed-off-by: Peter Lieven <pl at kamp.de>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+(cherry picked from commit 8da1e18b0cf46b6c95c88bbad1cc50d6dd1bef4b)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ block/iscsi.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/block/iscsi.c b/block/iscsi.c
+index fb001b9..817196a 100644
+--- a/block/iscsi.c
++++ b/block/iscsi.c
+@@ -951,8 +951,7 @@ static int iscsi_open(BlockDriverState *bs, const char *filename, int flags)
+
+ iscsi_url = iscsi_parse_full_url(iscsi, filename);
+ if (iscsi_url == NULL) {
+- error_report("Failed to parse URL : %s %s", filename,
+- iscsi_get_error(iscsi));
++ error_report("Failed to parse URL : %s", filename);
+ ret = -EINVAL;
+ goto out;
+ }
+--
+1.8.0.2
+
diff --git a/0336-iscsi-fix-deadlock-during-login.patch b/0336-iscsi-fix-deadlock-during-login.patch
new file mode 100644
index 0000000..2f7d425
--- /dev/null
+++ b/0336-iscsi-fix-deadlock-during-login.patch
@@ -0,0 +1,333 @@
+From e450cd0c7256039a42167621ff8125067feca6ad Mon Sep 17 00:00:00 2001
+From: Peter Lieven <pl at dlhnet.de>
+Date: Sat, 17 Nov 2012 14:37:39 +0100
+Subject: [PATCH] iscsi: fix deadlock during login
+
+If the connection is interrupted before the first login is successfully
+completed qemu-kvm is waiting forever in qemu_aio_wait().
+
+This is fixed by performing an sync login to the target. If the
+connection breaks after the first successful login errors are
+handled internally by libiscsi.
+
+Signed-off-by: Peter Lieven <pl at kamp.de>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+(cherry picked from commit e829b0bb054ed3389e5b22dad61875e51674e629)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ block/iscsi.c | 251 ++++++++++++++++------------------------------------------
+ 1 file changed, 70 insertions(+), 181 deletions(-)
+
+diff --git a/block/iscsi.c b/block/iscsi.c
+index 817196a..1836c71 100644
+--- a/block/iscsi.c
++++ b/block/iscsi.c
+@@ -65,13 +65,6 @@ typedef struct IscsiAIOCB {
+ #endif
+ } IscsiAIOCB;
+
+-struct IscsiTask {
+- IscsiLun *iscsilun;
+- BlockDriverState *bs;
+- int status;
+- int complete;
+-};
+-
+ static void
+ iscsi_bh_cb(void *p)
+ {
+@@ -384,7 +377,7 @@ iscsi_aio_readv(BlockDriverState *bs, int64_t sector_num,
+ *(uint16_t *)&acb->task->cdb[7] = htons(num_sectors);
+ break;
+ }
+-
++
+ if (iscsi_scsi_command_async(iscsi, iscsilun->lun, acb->task,
+ iscsi_aio_read16_cb,
+ NULL,
+@@ -669,163 +662,6 @@ iscsi_getlength(BlockDriverState *bs)
+ return len;
+ }
+
+-static void
+-iscsi_readcapacity16_cb(struct iscsi_context *iscsi, int status,
+- void *command_data, void *opaque)
+-{
+- struct IscsiTask *itask = opaque;
+- struct scsi_readcapacity16 *rc16;
+- struct scsi_task *task = command_data;
+-
+- if (status != 0) {
+- error_report("iSCSI: Failed to read capacity of iSCSI lun. %s",
+- iscsi_get_error(iscsi));
+- itask->status = 1;
+- itask->complete = 1;
+- scsi_free_scsi_task(task);
+- return;
+- }
+-
+- rc16 = scsi_datain_unmarshall(task);
+- if (rc16 == NULL) {
+- error_report("iSCSI: Failed to unmarshall readcapacity16 data.");
+- itask->status = 1;
+- itask->complete = 1;
+- scsi_free_scsi_task(task);
+- return;
+- }
+-
+- itask->iscsilun->block_size = rc16->block_length;
+- itask->iscsilun->num_blocks = rc16->returned_lba + 1;
+- itask->bs->total_sectors = itask->iscsilun->num_blocks *
+- itask->iscsilun->block_size / BDRV_SECTOR_SIZE ;
+-
+- itask->status = 0;
+- itask->complete = 1;
+- scsi_free_scsi_task(task);
+-}
+-
+-static void
+-iscsi_readcapacity10_cb(struct iscsi_context *iscsi, int status,
+- void *command_data, void *opaque)
+-{
+- struct IscsiTask *itask = opaque;
+- struct scsi_readcapacity10 *rc10;
+- struct scsi_task *task = command_data;
+-
+- if (status != 0) {
+- error_report("iSCSI: Failed to read capacity of iSCSI lun. %s",
+- iscsi_get_error(iscsi));
+- itask->status = 1;
+- itask->complete = 1;
+- scsi_free_scsi_task(task);
+- return;
+- }
+-
+- rc10 = scsi_datain_unmarshall(task);
+- if (rc10 == NULL) {
+- error_report("iSCSI: Failed to unmarshall readcapacity10 data.");
+- itask->status = 1;
+- itask->complete = 1;
+- scsi_free_scsi_task(task);
+- return;
+- }
+-
+- itask->iscsilun->block_size = rc10->block_size;
+- if (rc10->lba == 0) {
+- /* blank disk loaded */
+- itask->iscsilun->num_blocks = 0;
+- } else {
+- itask->iscsilun->num_blocks = rc10->lba + 1;
+- }
+- itask->bs->total_sectors = itask->iscsilun->num_blocks *
+- itask->iscsilun->block_size / BDRV_SECTOR_SIZE ;
+-
+- itask->status = 0;
+- itask->complete = 1;
+- scsi_free_scsi_task(task);
+-}
+-
+-static void
+-iscsi_inquiry_cb(struct iscsi_context *iscsi, int status, void *command_data,
+- void *opaque)
+-{
+- struct IscsiTask *itask = opaque;
+- struct scsi_task *task = command_data;
+- struct scsi_inquiry_standard *inq;
+-
+- if (status != 0) {
+- itask->status = 1;
+- itask->complete = 1;
+- scsi_free_scsi_task(task);
+- return;
+- }
+-
+- inq = scsi_datain_unmarshall(task);
+- if (inq == NULL) {
+- error_report("iSCSI: Failed to unmarshall inquiry data.");
+- itask->status = 1;
+- itask->complete = 1;
+- scsi_free_scsi_task(task);
+- return;
+- }
+-
+- itask->iscsilun->type = inq->periperal_device_type;
+-
+- scsi_free_scsi_task(task);
+-
+- switch (itask->iscsilun->type) {
+- case TYPE_DISK:
+- task = iscsi_readcapacity16_task(iscsi, itask->iscsilun->lun,
+- iscsi_readcapacity16_cb, opaque);
+- if (task == NULL) {
+- error_report("iSCSI: failed to send readcapacity16 command.");
+- itask->status = 1;
+- itask->complete = 1;
+- return;
+- }
+- break;
+- case TYPE_ROM:
+- task = iscsi_readcapacity10_task(iscsi, itask->iscsilun->lun,
+- 0, 0,
+- iscsi_readcapacity10_cb, opaque);
+- if (task == NULL) {
+- error_report("iSCSI: failed to send readcapacity16 command.");
+- itask->status = 1;
+- itask->complete = 1;
+- return;
+- }
+- break;
+- default:
+- itask->status = 0;
+- itask->complete = 1;
+- }
+-}
+-
+-static void
+-iscsi_connect_cb(struct iscsi_context *iscsi, int status, void *command_data,
+- void *opaque)
+-{
+- struct IscsiTask *itask = opaque;
+- struct scsi_task *task;
+-
+- if (status != 0) {
+- itask->status = 1;
+- itask->complete = 1;
+- return;
+- }
+-
+- task = iscsi_inquiry_task(iscsi, itask->iscsilun->lun,
+- 0, 0, 36,
+- iscsi_inquiry_cb, opaque);
+- if (task == NULL) {
+- error_report("iSCSI: failed to send inquiry command.");
+- itask->status = 1;
+- itask->complete = 1;
+- return;
+- }
+-}
+-
+ static int parse_chap(struct iscsi_context *iscsi, const char *target)
+ {
+ QemuOptsList *list;
+@@ -938,7 +774,10 @@ static int iscsi_open(BlockDriverState *bs, const char *filename, int flags)
+ IscsiLun *iscsilun = bs->opaque;
+ struct iscsi_context *iscsi = NULL;
+ struct iscsi_url *iscsi_url = NULL;
+- struct IscsiTask task;
++ struct scsi_task *task = NULL;
++ struct scsi_inquiry_standard *inq = NULL;
++ struct scsi_readcapacity10 *rc10 = NULL;
++ struct scsi_readcapacity16 *rc16 = NULL;
+ char *initiator_name = NULL;
+ int ret;
+
+@@ -1001,33 +840,80 @@ static int iscsi_open(BlockDriverState *bs, const char *filename, int flags)
+ /* check if we got HEADER_DIGEST via the options */
+ parse_header_digest(iscsi, iscsi_url->target);
+
+- task.iscsilun = iscsilun;
+- task.status = 0;
+- task.complete = 0;
+- task.bs = bs;
++ if (iscsi_full_connect_sync(iscsi, iscsi_url->portal, iscsi_url->lun) != 0) {
++ error_report("iSCSI: Failed to connect to LUN : %s",
++ iscsi_get_error(iscsi));
++ ret = -EINVAL;
++ goto out;
++ }
+
+ iscsilun->iscsi = iscsi;
+ iscsilun->lun = iscsi_url->lun;
+
+- if (iscsi_full_connect_async(iscsi, iscsi_url->portal, iscsi_url->lun,
+- iscsi_connect_cb, &task)
+- != 0) {
+- error_report("iSCSI: Failed to start async connect.");
++ task = iscsi_inquiry_sync(iscsi, iscsilun->lun, 0, 0, 36);
++
++ if (task == NULL || task->status != SCSI_STATUS_GOOD) {
++ error_report("iSCSI: failed to send inquiry command.");
+ ret = -EINVAL;
+ goto out;
+ }
+
+- while (!task.complete) {
+- iscsi_set_events(iscsilun);
+- qemu_aio_wait();
+- }
+- if (task.status != 0) {
+- error_report("iSCSI: Failed to connect to LUN : %s",
+- iscsi_get_error(iscsi));
++ inq = scsi_datain_unmarshall(task);
++ if (inq == NULL) {
++ error_report("iSCSI: Failed to unmarshall inquiry data.");
+ ret = -EINVAL;
+ goto out;
+ }
+
++ iscsilun->type = inq->periperal_device_type;
++
++ scsi_free_scsi_task(task);
++
++ switch (iscsilun->type) {
++ case TYPE_DISK:
++ task = iscsi_readcapacity16_sync(iscsi, iscsilun->lun);
++ if (task == NULL || task->status != SCSI_STATUS_GOOD) {
++ error_report("iSCSI: failed to send readcapacity16 command.");
++ ret = -EINVAL;
++ goto out;
++ }
++ rc16 = scsi_datain_unmarshall(task);
++ if (rc16 == NULL) {
++ error_report("iSCSI: Failed to unmarshall readcapacity16 data.");
++ ret = -EINVAL;
++ goto out;
++ }
++ iscsilun->block_size = rc16->block_length;
++ iscsilun->num_blocks = rc16->returned_lba + 1;
++ break;
++ case TYPE_ROM:
++ task = iscsi_readcapacity10_sync(iscsi, iscsilun->lun, 0, 0);
++ if (task == NULL || task->status != SCSI_STATUS_GOOD) {
++ error_report("iSCSI: failed to send readcapacity10 command.");
++ ret = -EINVAL;
++ goto out;
++ }
++ rc10 = scsi_datain_unmarshall(task);
++ if (rc10 == NULL) {
++ error_report("iSCSI: Failed to unmarshall readcapacity10 data.");
++ ret = -EINVAL;
++ goto out;
++ }
++ iscsilun->block_size = rc10->block_size;
++ if (rc10->lba == 0) {
++ /* blank disk loaded */
++ iscsilun->num_blocks = 0;
++ } else {
++ iscsilun->num_blocks = rc10->lba + 1;
++ }
++ break;
++ default:
++ break;
++ }
++
++ bs->total_sectors = iscsilun->num_blocks *
++ iscsilun->block_size / BDRV_SECTOR_SIZE ;
++
+ /* Medium changer or tape. We dont have any emulation for this so this must
+ * be sg ioctl compatible. We force it to be sg, otherwise qemu will try
+ * to read from the device to guess the image format.
+@@ -1046,6 +932,9 @@ out:
+ if (iscsi_url != NULL) {
+ iscsi_destroy_url(iscsi_url);
+ }
++ if (task != NULL) {
++ scsi_free_scsi_task(task);
++ }
+
+ if (ret) {
+ if (iscsi != NULL) {
+--
+1.8.0.2
+
diff --git a/0337-iscsi-do-not-assume-device-is-zero-initialized.patch b/0337-iscsi-do-not-assume-device-is-zero-initialized.patch
new file mode 100644
index 0000000..69e2fe3
--- /dev/null
+++ b/0337-iscsi-do-not-assume-device-is-zero-initialized.patch
@@ -0,0 +1,44 @@
+From b360ba5cd93cbc30940538ce038b856ed8f72dd3 Mon Sep 17 00:00:00 2001
+From: Peter Lieven <pl at dlhnet.de>
+Date: Sat, 17 Nov 2012 16:20:28 +0100
+Subject: [PATCH] iscsi: do not assume device is zero initialized
+
+Without any complex checks we can't assume that an
+iscsi target is initialized to zero.
+
+Signed-off-by: Peter Lieven <pl at kamp.de>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+(cherry picked from commit f807ecd5741325fe0d281199ff22cdda0acb6a7a)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ block/iscsi.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/block/iscsi.c b/block/iscsi.c
+index 1836c71..11fd37e 100644
+--- a/block/iscsi.c
++++ b/block/iscsi.c
+@@ -955,6 +955,11 @@ static void iscsi_close(BlockDriverState *bs)
+ memset(iscsilun, 0, sizeof(IscsiLun));
+ }
+
++static int iscsi_has_zero_init(BlockDriverState *bs)
++{
++ return 0;
++}
++
+ static BlockDriver bdrv_iscsi = {
+ .format_name = "iscsi",
+ .protocol_name = "iscsi",
+@@ -970,6 +975,7 @@ static BlockDriver bdrv_iscsi = {
+ .bdrv_aio_flush = iscsi_aio_flush,
+
+ .bdrv_aio_discard = iscsi_aio_discard,
++ .bdrv_has_zero_init = iscsi_has_zero_init,
+
+ #ifdef __linux__
+ .bdrv_ioctl = iscsi_ioctl,
+--
+1.8.0.2
+
diff --git a/0338-virtio-scsi-Fix-some-endian-bugs-with-virtio-scsi.patch b/0338-virtio-scsi-Fix-some-endian-bugs-with-virtio-scsi.patch
new file mode 100644
index 0000000..8f5bbb3
--- /dev/null
+++ b/0338-virtio-scsi-Fix-some-endian-bugs-with-virtio-scsi.patch
@@ -0,0 +1,57 @@
+From 6f364e7d71769eeb134ebaa4c6cc5ffd214768d9 Mon Sep 17 00:00:00 2001
+From: David Gibson <david at gibson.dropbear.id.au>
+Date: Fri, 23 Nov 2012 16:08:44 +1100
+Subject: [PATCH] virtio-scsi: Fix some endian bugs with virtio-scsi
+
+The virtio-scsi specification does not specify the correct endianness for
+fields in the request structure. It's therefore best to assume that it is
+"guest native" endian since that's the (stupid and poorly defined) norm in
+virtio.
+
+However, the qemu device for virtio-scsi has no byteswaps at all, and so
+will break if the guest has different endianness from the host. This patch
+fixes it by adding tswap() calls for the sense_len and resid fields in
+the request structure. In theory status_qualifier needs swaps as well,
+but that field is never actually touched. The tag field is a uint64_t, but
+since its value is completely arbitrary, it might as well be uint8_t[8]
+and so it does not need swapping.
+
+Cc: Paolo Bonzini <pbonzini at redhat.com>
+Cc: Paul 'Rusty' Russell <rusty at rustcorp.com.au>
+Signed-off-by: David Gibson <david at gibson.dropbear.id.au>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+(cherry picked from commit 474ee55a18765e7de8f0b2cc00db5d26286bb24d)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/virtio-scsi.c | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/hw/virtio-scsi.c b/hw/virtio-scsi.c
+index c1b47a8..c6d5290 100644
+--- a/hw/virtio-scsi.c
++++ b/hw/virtio-scsi.c
+@@ -424,15 +424,17 @@ static void virtio_scsi_command_complete(SCSIRequest *r, uint32_t status,
+ size_t resid)
+ {
+ VirtIOSCSIReq *req = r->hba_private;
++ uint32_t sense_len;
+
+ req->resp.cmd->response = VIRTIO_SCSI_S_OK;
+ req->resp.cmd->status = status;
+ if (req->resp.cmd->status == GOOD) {
+- req->resp.cmd->resid = resid;
++ req->resp.cmd->resid = tswap32(resid);
+ } else {
+ req->resp.cmd->resid = 0;
+- req->resp.cmd->sense_len =
+- scsi_req_get_sense(r, req->resp.cmd->sense, VIRTIO_SCSI_SENSE_SIZE);
++ sense_len = scsi_req_get_sense(r, req->resp.cmd->sense,
++ VIRTIO_SCSI_SENSE_SIZE);
++ req->resp.cmd->sense_len = tswap32(sense_len);
+ }
+ virtio_scsi_complete_req(req);
+ }
+--
+1.8.0.2
+
diff --git a/0339-virtio-scsi-Fix-subtle-guest-endian-bug.patch b/0339-virtio-scsi-Fix-subtle-guest-endian-bug.patch
new file mode 100644
index 0000000..e97c7ca
--- /dev/null
+++ b/0339-virtio-scsi-Fix-subtle-guest-endian-bug.patch
@@ -0,0 +1,46 @@
+From f42859e8791c5dc1c8b2a3e3499310d38e302fb4 Mon Sep 17 00:00:00 2001
+From: David Gibson <david at gibson.dropbear.id.au>
+Date: Mon, 26 Nov 2012 12:33:52 +1100
+Subject: [PATCH] virtio-scsi: Fix subtle (guest) endian bug
+
+The virtio-scsi config space is, by specification, in guest endian (which
+is ill-defined, but there you go). In virtio_scsi_get_config() we set up
+all the fields in there, using stl_raw(). Which is a problem for the
+max_channel and max_target fields, which are 16-bit, not 32-bit. For
+little-endian targets we get away with it by accident, since the first
+two bytes will still be correct, and the extra two bytes written (with
+zeroes) will be overwritten correctly by the next store.
+
+But for big-endian guests, this means the max_target field ends up as zero,
+which means the guest will only recognize a single disk on the virtio-scsi
+bus. This patch fixes the problem.
+
+Cc: Paolo Bonzini <pbonzini at redhat.com>
+Cc: Paul 'Rusty' Russell <rusty at rustcorp.com.au>
+Signed-off-by: David Gibson <david at gibson.dropbear.id.au>
+Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
+(cherry picked from commit 863d1050c96cff91dd478767c0da9cc288575919)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/virtio-scsi.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/virtio-scsi.c b/hw/virtio-scsi.c
+index c6d5290..5fcbdd8 100644
+--- a/hw/virtio-scsi.c
++++ b/hw/virtio-scsi.c
+@@ -534,8 +534,8 @@ static void virtio_scsi_get_config(VirtIODevice *vdev,
+ stl_raw(&scsiconf->event_info_size, sizeof(VirtIOSCSIEvent));
+ stl_raw(&scsiconf->sense_size, s->sense_size);
+ stl_raw(&scsiconf->cdb_size, s->cdb_size);
+- stl_raw(&scsiconf->max_channel, VIRTIO_SCSI_MAX_CHANNEL);
+- stl_raw(&scsiconf->max_target, VIRTIO_SCSI_MAX_TARGET);
++ stw_raw(&scsiconf->max_channel, VIRTIO_SCSI_MAX_CHANNEL);
++ stw_raw(&scsiconf->max_target, VIRTIO_SCSI_MAX_TARGET);
+ stl_raw(&scsiconf->max_lun, VIRTIO_SCSI_MAX_LUN);
+ }
+
+--
+1.8.0.2
+
diff --git a/0340-qxl-reload-memslots-after-migration-when-qxl-is-in-U.patch b/0340-qxl-reload-memslots-after-migration-when-qxl-is-in-U.patch
new file mode 100644
index 0000000..28e3e1d
--- /dev/null
+++ b/0340-qxl-reload-memslots-after-migration-when-qxl-is-in-U.patch
@@ -0,0 +1,36 @@
+From 358b29311255c2277ec4d0ca1eefd29882dee006 Mon Sep 17 00:00:00 2001
+From: Yonit Halperin <yhalperi at redhat.com>
+Date: Wed, 28 Nov 2012 10:08:22 -0500
+Subject: [PATCH] qxl: reload memslots after migration, when qxl is in
+ UNDEFINED mode
+
+The devram memslot stays active when qxl enters UNDEFINED mode (i.e, no
+primary surface). If migration has occurred while the device is in
+UNDEFINED stae, the memslots have to be reloaded at the destination.
+
+Fixes rhbz#874574
+
+Signed-off-by: Yonit Halperin <yhalperi at redhat.com>
+Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
+(cherry picked from commit fa98efe932d93a15ffa867f3b05149c8d1fc7c28)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/qxl.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/hw/qxl.c b/hw/qxl.c
+index 89e9ad9..e7e9dd9 100644
+--- a/hw/qxl.c
++++ b/hw/qxl.c
+@@ -2042,6 +2042,7 @@ static int qxl_post_load(void *opaque, int version)
+
+ switch (newmode) {
+ case QXL_MODE_UNDEFINED:
++ qxl_create_memslots(d);
+ break;
+ case QXL_MODE_VGA:
+ qxl_create_memslots(d);
+--
+1.8.0.2
+
diff --git a/0341-usb-fail-usbdevice_create-when-there-is-no-USB-bus.patch b/0341-usb-fail-usbdevice_create-when-there-is-no-USB-bus.patch
new file mode 100644
index 0000000..6d143d5
--- /dev/null
+++ b/0341-usb-fail-usbdevice_create-when-there-is-no-USB-bus.patch
@@ -0,0 +1,47 @@
+From cf0ad23ce4dc68d0617b01cc5eefdd133f87cafc Mon Sep 17 00:00:00 2001
+From: Stefan Hajnoczi <stefanha at redhat.com>
+Date: Sun, 25 Nov 2012 16:49:15 +0100
+Subject: [PATCH] usb: fail usbdevice_create() when there is no USB bus
+
+Report an error instead of segfaulting when attaching a USB device to a
+machine with no USB busses:
+
+ $ qemu-system-arm -machine vexpress-a9 \
+ -sd Fedora-17-armhfp-vexpress-mmcblk0.img \
+ -kernel vmlinuz-3.4.2-3.fc17.armv7hl \
+ -initrd initramfs-3.4.2-3.fc17.armv7hl.img \
+ -usbdevice disk:format=raw:test.img
+
+Note that the vexpress-a9 machine does not have a USB host controller.
+
+Reported-by: David Abdurachmanov <David.Abdurachmanov at cern.ch>
+Signed-off-by: Stefan Hajnoczi <stefanha at redhat.com>
+Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
+(cherry picked from commit c128d6a6d785eb9235a4f6dbd52f405ab8c60bee)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/usb/bus.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/hw/usb/bus.c b/hw/usb/bus.c
+index b649360..1f73a52 100644
+--- a/hw/usb/bus.c
++++ b/hw/usb/bus.c
+@@ -585,6 +585,13 @@ USBDevice *usbdevice_create(const char *cmdline)
+ return NULL;
+ }
+
++ if (!bus) {
++ error_report("Error: no usb bus to attach usbdevice %s, "
++ "please try -machine usb=on and check that "
++ "the machine model supports USB", driver);
++ return NULL;
++ }
++
+ if (!f->usbdevice_init) {
+ if (*params) {
+ error_report("usbdevice %s accepts no params", driver);
+--
+1.8.0.2
+
diff --git a/0342-stream-fix-ratelimit_set_speed.patch b/0342-stream-fix-ratelimit_set_speed.patch
new file mode 100644
index 0000000..17ba4d2
--- /dev/null
+++ b/0342-stream-fix-ratelimit_set_speed.patch
@@ -0,0 +1,33 @@
+From e56a0d717b356c4e847c1c5cf537c1382a1597ec Mon Sep 17 00:00:00 2001
+From: Dietmar Maurer <dietmar at proxmox.com>
+Date: Wed, 24 Oct 2012 12:10:47 +0200
+Subject: [PATCH] stream: fix ratelimit_set_speed
+
+The formula to compute slice_quota was wrong since commit 6ef228fc.
+
+Signed-off-by: Dietmar Maurer <dietmar at proxmox.com>
+Reviewed-by: Eric Blake <eblake at redhat.com>
+Signed-off-by: Kevin Wolf <kwolf at redhat.com>
+(cherry picked from commit e3980e28bb888bf643054770452998d1b4319609)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ include/qemu/ratelimit.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/qemu/ratelimit.h b/include/qemu/ratelimit.h
+index c6ac281..d1610f1 100644
+--- a/include/qemu/ratelimit.h
++++ b/include/qemu/ratelimit.h
+@@ -42,7 +42,7 @@ static inline void ratelimit_set_speed(RateLimit *limit, uint64_t speed,
+ uint64_t slice_ns)
+ {
+ limit->slice_ns = slice_ns;
+- limit->slice_quota = ((double)speed * 1000000000ULL) / slice_ns;
++ limit->slice_quota = ((double)speed * slice_ns)/1000000000ULL;
+ }
+
+ #endif
+--
+1.8.0.2
+
diff --git a/0343-e1000-Discard-packets-that-are-too-long-if-SBP-and-L.patch b/0343-e1000-Discard-packets-that-are-too-long-if-SBP-and-L.patch
new file mode 100644
index 0000000..ee5993c
--- /dev/null
+++ b/0343-e1000-Discard-packets-that-are-too-long-if-SBP-and-L.patch
@@ -0,0 +1,49 @@
+From 55c6a5611acc88b9c97fff3324fc743fafc6d0c7 Mon Sep 17 00:00:00 2001
+From: Michael Contreras <michael at inetric.com>
+Date: Sun, 2 Dec 2012 20:11:22 -0800
+Subject: [PATCH] e1000: Discard packets that are too long if !SBP and !LPE
+
+The e1000_receive function for the e1000 needs to discard packets longer than
+1522 bytes if the SBP and LPE flags are disabled. The linux driver assumes
+this behavior and allocates memory based on this assumption.
+
+Signed-off-by: Michael Contreras <michael at inetric.com>
+Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
+(cherry picked from commit b0d9ffcd0251161c7c92f94804dcf599dfa3edeb)
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ hw/e1000.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/hw/e1000.c b/hw/e1000.c
+index 4d4ac32..b1d8508 100644
+--- a/hw/e1000.c
++++ b/hw/e1000.c
+@@ -59,6 +59,9 @@ static int debugflags = DBGBIT(TXERR) | DBGBIT(GENERAL);
+ #define PNPMMIO_SIZE 0x20000
+ #define MIN_BUF_SIZE 60 /* Min. octets in an ethernet frame sans FCS */
+
++/* this is the size past which hardware will drop packets when setting LPE=0 */
++#define MAXIMUM_ETHERNET_VLAN_SIZE 1522
++
+ /*
+ * HW models:
+ * E1000_DEV_ID_82540EM works with Windows and Linux
+@@ -795,6 +798,13 @@ e1000_receive(NetClientState *nc, const uint8_t *buf, size_t size)
+ size = sizeof(min_buf);
+ }
+
++ /* Discard oversized packets if !LPE and !SBP. */
++ if (size > MAXIMUM_ETHERNET_VLAN_SIZE
++ && !(s->mac_reg[RCTL] & E1000_RCTL_LPE)
++ && !(s->mac_reg[RCTL] & E1000_RCTL_SBP)) {
++ return size;
++ }
++
+ if (!receive_filter(s, buf, size))
+ return size;
+
+--
+1.8.0.2
+
diff --git a/0401-update-VERSION-for-v1.2.2.patch b/0401-update-VERSION-for-v1.2.2.patch
new file mode 100644
index 0000000..543a55f
--- /dev/null
+++ b/0401-update-VERSION-for-v1.2.2.patch
@@ -0,0 +1,20 @@
+From 91d2b5a0faa030cb437fbe99e94bb0720b03b44b Mon Sep 17 00:00:00 2001
+From: Michael Roth <mdroth at linux.vnet.ibm.com>
+Date: Tue, 11 Dec 2012 15:09:44 -0600
+Subject: [PATCH] update VERSION for v1.2.2
+
+Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
+---
+ VERSION | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/VERSION b/VERSION
+index 6085e94..23aa839 100644
+--- a/VERSION
++++ b/VERSION
+@@ -1 +1 @@
+-1.2.1
++1.2.2
+--
+1.8.0.2
+
diff --git a/0400-char-Split-out-tcp-socket-close-code-in-a-separate-f.patch b/0402-char-Split-out-tcp-socket-close-code-in-a-separate-f.patch
similarity index 95%
rename from 0400-char-Split-out-tcp-socket-close-code-in-a-separate-f.patch
rename to 0402-char-Split-out-tcp-socket-close-code-in-a-separate-f.patch
index 0df1449..d497b3d 100644
--- a/0400-char-Split-out-tcp-socket-close-code-in-a-separate-f.patch
+++ b/0402-char-Split-out-tcp-socket-close-code-in-a-separate-f.patch
@@ -1,4 +1,4 @@
-From e999fe6e315c5d6f6e8b5d4c689787fc46f10575 Mon Sep 17 00:00:00 2001
+From d33363c7732da489e69312949741181a59766bb2 Mon Sep 17 00:00:00 2001
From: Amit Shah <amit.shah at redhat.com>
Date: Mon, 21 Mar 2011 21:57:47 +0100
Subject: [PATCH] char: Split out tcp socket close code in a separate function
@@ -53,5 +53,5 @@ index b082bae..a1fdf88 100644
if (s->do_telnetopt)
tcp_chr_process_IAC_bytes(chr, s, buf, &size);
--
-1.7.12.1
+1.8.0.2
diff --git a/0401-char-Add-a-QemuChrHandlers-struct-to-initialise-char.patch b/0403-char-Add-a-QemuChrHandlers-struct-to-initialise-char.patch
similarity index 99%
rename from 0401-char-Add-a-QemuChrHandlers-struct-to-initialise-char.patch
rename to 0403-char-Add-a-QemuChrHandlers-struct-to-initialise-char.patch
index 58d0b4a..e8c7283 100644
--- a/0401-char-Add-a-QemuChrHandlers-struct-to-initialise-char.patch
+++ b/0403-char-Add-a-QemuChrHandlers-struct-to-initialise-char.patch
@@ -1,4 +1,4 @@
-From 5f3ba69a09688b40a4648e8818e4878ae20fc2f6 Mon Sep 17 00:00:00 2001
+From 064e087beb96eb5b9716c9058f1d1e461421233e Mon Sep 17 00:00:00 2001
From: Amit Shah <amit.shah at redhat.com>
Date: Mon, 21 Mar 2011 20:31:45 +0100
Subject: [PATCH] char: Add a QemuChrHandlers struct to initialise chardev
@@ -958,5 +958,5 @@ index fbfab4e..4ab5b69 100644
inbuf = g_string_new("");
--
-1.7.12.1
+1.8.0.2
diff --git a/0402-iohandlers-Add-enable-disable_write_fd_handler-funct.patch b/0404-iohandlers-Add-enable-disable_write_fd_handler-funct.patch
similarity index 96%
rename from 0402-iohandlers-Add-enable-disable_write_fd_handler-funct.patch
rename to 0404-iohandlers-Add-enable-disable_write_fd_handler-funct.patch
index cfc7cd2..4bb82d7 100644
--- a/0402-iohandlers-Add-enable-disable_write_fd_handler-funct.patch
+++ b/0404-iohandlers-Add-enable-disable_write_fd_handler-funct.patch
@@ -1,4 +1,4 @@
-From 2ac23d2134611b4e5b0fb389911bd03baa685df3 Mon Sep 17 00:00:00 2001
+From 9fade7c07dc84824b8e4130df7a3c499c322539a Mon Sep 17 00:00:00 2001
From: Amit Shah <amit.shah at redhat.com>
Date: Mon, 21 Mar 2011 20:32:58 +0100
Subject: [PATCH] iohandlers: Add enable/disable_write_fd_handler() functions
@@ -73,5 +73,5 @@ index dce1cd9..eb31273 100644
* qemu_set_fd_handler2: Register a file descriptor with the main loop
*
--
-1.7.12.1
+1.8.0.2
diff --git a/0403-char-Add-framework-for-a-write-unblocked-callback.patch b/0405-char-Add-framework-for-a-write-unblocked-callback.patch
similarity index 96%
rename from 0403-char-Add-framework-for-a-write-unblocked-callback.patch
rename to 0405-char-Add-framework-for-a-write-unblocked-callback.patch
index 67f83f6..8b263c8 100644
--- a/0403-char-Add-framework-for-a-write-unblocked-callback.patch
+++ b/0405-char-Add-framework-for-a-write-unblocked-callback.patch
@@ -1,4 +1,4 @@
-From 8ca97117074b5eb12bf9cb0b25548116174601a8 Mon Sep 17 00:00:00 2001
+From a0dd0fc78abcc1039af4d39a9c0eb65d838621f4 Mon Sep 17 00:00:00 2001
From: Amit Shah <amit.shah at redhat.com>
Date: Mon, 21 Mar 2011 21:41:42 +0100
Subject: [PATCH] char: Add framework for a 'write unblocked' callback
@@ -58,5 +58,5 @@ index dfa8c2d..b5e23a4 100644
};
--
-1.7.12.1
+1.8.0.2
diff --git a/0404-char-Update-send_all-to-handle-nonblocking-chardev-w.patch b/0406-char-Update-send_all-to-handle-nonblocking-chardev-w.patch
similarity index 98%
rename from 0404-char-Update-send_all-to-handle-nonblocking-chardev-w.patch
rename to 0406-char-Update-send_all-to-handle-nonblocking-chardev-w.patch
index b53d594..892c799 100644
--- a/0404-char-Update-send_all-to-handle-nonblocking-chardev-w.patch
+++ b/0406-char-Update-send_all-to-handle-nonblocking-chardev-w.patch
@@ -1,4 +1,4 @@
-From dd7b138971deb72c7e37c4b79665df6ff5c1130b Mon Sep 17 00:00:00 2001
+From 0bb331d124049a9157c08bb1d3572493e6691f05 Mon Sep 17 00:00:00 2001
From: Amit Shah <amit.shah at redhat.com>
Date: Mon, 21 Mar 2011 22:00:27 +0100
Subject: [PATCH] char: Update send_all() to handle nonblocking chardev write
@@ -169,5 +169,5 @@ index 3e8aee9..a537d86 100644
/* callback function for nonblocking connect
* valid fd on success, negative error code on failure
--
-1.7.12.1
+1.8.0.2
diff --git a/0405-char-Equip-the-unix-tcp-backend-to-handle-nonblockin.patch b/0407-char-Equip-the-unix-tcp-backend-to-handle-nonblockin.patch
similarity index 97%
rename from 0405-char-Equip-the-unix-tcp-backend-to-handle-nonblockin.patch
rename to 0407-char-Equip-the-unix-tcp-backend-to-handle-nonblockin.patch
index 830ed84..4d8e62f 100644
--- a/0405-char-Equip-the-unix-tcp-backend-to-handle-nonblockin.patch
+++ b/0407-char-Equip-the-unix-tcp-backend-to-handle-nonblockin.patch
@@ -1,4 +1,4 @@
-From 625915146f56f77c275be1aee160f40183008b8d Mon Sep 17 00:00:00 2001
+From f249489e3f81a99bb60d1c008aabf9c8ad90b381 Mon Sep 17 00:00:00 2001
From: Amit Shah <amit.shah at redhat.com>
Date: Mon, 21 Mar 2011 22:02:47 +0100
Subject: [PATCH] char: Equip the unix/tcp backend to handle nonblocking
@@ -78,5 +78,5 @@ index b46cc97..9f8608a 100644
if (is_listen) {
s->listen_fd = fd;
--
-1.7.12.1
+1.8.0.2
diff --git a/0406-char-Throttle-when-host-connection-is-down.patch b/0408-char-Throttle-when-host-connection-is-down.patch
similarity index 96%
rename from 0406-char-Throttle-when-host-connection-is-down.patch
rename to 0408-char-Throttle-when-host-connection-is-down.patch
index 2190637..3fae4db 100644
--- a/0406-char-Throttle-when-host-connection-is-down.patch
+++ b/0408-char-Throttle-when-host-connection-is-down.patch
@@ -1,4 +1,4 @@
-From 542fa14530022044ab577c543fba83202d52b703 Mon Sep 17 00:00:00 2001
+From d06d51e96773ab8295e31f666466fb2edb093aa0 Mon Sep 17 00:00:00 2001
From: Amit Shah <amit.shah at redhat.com>
Date: Mon, 21 Mar 2011 22:05:10 +0100
Subject: [PATCH] char: Throttle when host connection is down#
@@ -53,5 +53,5 @@ index 9f8608a..bfc94a5 100644
return ret;
} else {
--
-1.7.12.1
+1.8.0.2
diff --git a/0407-virtio-console-Enable-port-throttling-when-chardev-i.patch b/0409-virtio-console-Enable-port-throttling-when-chardev-i.patch
similarity index 95%
rename from 0407-virtio-console-Enable-port-throttling-when-chardev-i.patch
rename to 0409-virtio-console-Enable-port-throttling-when-chardev-i.patch
index 85630c0..7927239 100644
--- a/0407-virtio-console-Enable-port-throttling-when-chardev-i.patch
+++ b/0409-virtio-console-Enable-port-throttling-when-chardev-i.patch
@@ -1,4 +1,4 @@
-From feeea13d5eac9c0dd5da1ee7639a57ca519f4c91 Mon Sep 17 00:00:00 2001
+From d79d2a6ea50bd4dd07afe05471c8074f2f668150 Mon Sep 17 00:00:00 2001
From: Amit Shah <amit.shah at redhat.com>
Date: Mon, 21 Mar 2011 22:06:41 +0100
Subject: [PATCH] virtio-console: Enable port throttling when chardev is slow
@@ -46,5 +46,5 @@ index 066590c..2b5e515 100644
static int virtconsole_initfn(VirtIOSerialPort *port)
--
-1.7.12.1
+1.8.0.2
diff --git a/0408-spice-qemu-char.c-add-throttling.patch b/0410-spice-qemu-char.c-add-throttling.patch
similarity index 98%
rename from 0408-spice-qemu-char.c-add-throttling.patch
rename to 0410-spice-qemu-char.c-add-throttling.patch
index 23018ec..b25ca3a 100644
--- a/0408-spice-qemu-char.c-add-throttling.patch
+++ b/0410-spice-qemu-char.c-add-throttling.patch
@@ -1,4 +1,4 @@
-From 2d1cf5b1be8cbd9c5a8c5f96ca699676fc1b23a7 Mon Sep 17 00:00:00 2001
+From 89e95288a8f5b462230910d25fc97c8eeb33dd5f Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Tue, 22 Mar 2011 12:27:59 +0200
Subject: [PATCH] spice-qemu-char.c: add throttling
@@ -131,5 +131,5 @@ index 09aa22d..fba2bfb 100644
#if SPICE_SERVER_VERSION < 0x000901
/* See comment in vmc_state() */
--
-1.7.12.1
+1.8.0.2
diff --git a/0409-spice-qemu-char.c-remove-intermediate-buffer.patch b/0411-spice-qemu-char.c-remove-intermediate-buffer.patch
similarity index 97%
rename from 0409-spice-qemu-char.c-remove-intermediate-buffer.patch
rename to 0411-spice-qemu-char.c-remove-intermediate-buffer.patch
index e1c6f0a..57cb8cc 100644
--- a/0409-spice-qemu-char.c-remove-intermediate-buffer.patch
+++ b/0411-spice-qemu-char.c-remove-intermediate-buffer.patch
@@ -1,4 +1,4 @@
-From fb481324641fc36e6f58aca8d8e5ada0536332f2 Mon Sep 17 00:00:00 2001
+From 7c96741eb22bbfc8c257334e28493adabbeee5ff Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Tue, 22 Mar 2011 12:28:00 +0200
Subject: [PATCH] spice-qemu-char.c: remove intermediate buffer
@@ -69,5 +69,5 @@ index fba2bfb..ef44bc0 100644
/* We'll get passed in the unconsumed data with the next call */
s->datalen = 0;
--
-1.7.12.1
+1.8.0.2
diff --git a/0410-usb-redir-Add-flow-control-support.patch b/0412-usb-redir-Add-flow-control-support.patch
similarity index 95%
rename from 0410-usb-redir-Add-flow-control-support.patch
rename to 0412-usb-redir-Add-flow-control-support.patch
index 8506b22..c38c93a 100644
--- a/0410-usb-redir-Add-flow-control-support.patch
+++ b/0412-usb-redir-Add-flow-control-support.patch
@@ -1,4 +1,4 @@
-From 539b42dbeefbf2fc7dc40ab7c1b5d9592a87d9b8 Mon Sep 17 00:00:00 2001
+From 5399dd7756a093453751dea34212ba19db328eb4 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Tue, 19 Jul 2011 10:56:19 +0200
Subject: [PATCH] usb-redir: Add flow control support
@@ -58,5 +58,5 @@ index 8b22c80..b7c7f1e 100644
/*
--
-1.7.12.1
+1.8.0.2
diff --git a/0413-virtio-serial-bus-replay-guest_open-on-migration.patch b/0413-virtio-serial-bus-replay-guest_open-on-migration.patch
new file mode 100644
index 0000000..6beedd2
--- /dev/null
+++ b/0413-virtio-serial-bus-replay-guest_open-on-migration.patch
@@ -0,0 +1,51 @@
+From 0811633a396481e1cf1614362afd57c179fcf3de Mon Sep 17 00:00:00 2001
+From: Alon Levy <alevy at redhat.com>
+Date: Thu, 28 Jul 2011 15:08:48 +0300
+Subject: [PATCH] virtio-serial-bus: replay guest_open on migration
+
+When migrating a host with with a spice agent running the mouse becomes
+non operational after the migration. This is rhbz #725965.
+
+The problem is that after migration spice doesn't know the guest agent is open.
+Spice is just a char dev here. And a chardev cannot query it's device, the
+device has to let the chardev know when it is open. Right now after migration
+the chardev which is recreated is in it's default state, which assumes the
+guest is disconnected.
+
+Char devices carry no information across migration, but the virtio-serial does
+already carry the guest_connected state. This patch passes that bit to the
+chardev.
+
+Signed-off-by: Alon Levy <alevy at redhat.com>
+Signed-off-by: Cole Robinson <crobinso at redhat.com>
+---
+ hw/virtio-serial-bus.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/hw/virtio-serial-bus.c b/hw/virtio-serial-bus.c
+index 82073f5..18c2ed3 100644
+--- a/hw/virtio-serial-bus.c
++++ b/hw/virtio-serial-bus.c
+@@ -682,6 +682,7 @@ static int virtio_serial_load(QEMUFile *f, void *opaque, int version_id)
+ for (i = 0; i < nr_active_ports; i++) {
+ uint32_t id;
+ bool host_connected;
++ VirtIOSerialPortClass *vsc;
+
+ id = qemu_get_be32(f);
+ port = find_port_by_id(s, id);
+@@ -690,6 +691,11 @@ static int virtio_serial_load(QEMUFile *f, void *opaque, int version_id)
+ }
+
+ port->guest_connected = qemu_get_byte(f);
++ vsc = VIRTIO_SERIAL_PORT_GET_CLASS(port);
++ if (port->guest_connected && vsc->guest_open) {
++ /* replay guest open */
++ vsc->guest_open(port);
++ }
+ host_connected = qemu_get_byte(f);
+ if (host_connected != port->host_connected) {
+ /*
+--
+1.8.0.2
+
diff --git a/0412-char-Disable-write-callback-if-throttled-chardev-is-.patch b/0414-char-Disable-write-callback-if-throttled-chardev-is-.patch
similarity index 92%
rename from 0412-char-Disable-write-callback-if-throttled-chardev-is-.patch
rename to 0414-char-Disable-write-callback-if-throttled-chardev-is-.patch
index ae0be6f..c475f3a 100644
--- a/0412-char-Disable-write-callback-if-throttled-chardev-is-.patch
+++ b/0414-char-Disable-write-callback-if-throttled-chardev-is-.patch
@@ -1,8 +1,7 @@
-From f3551d3640f3436b0e5505fd208cbd7bbfef411f Mon Sep 17 00:00:00 2001
+From 58c0c0de01663aab4e8fdd03c05e2762a35d77a8 Mon Sep 17 00:00:00 2001
From: Amit Shah <amit.shah at redhat.com>
Date: Fri, 2 Dec 2011 15:42:55 +0530
-Subject: [PATCH] char: Disable write callback if throttled chardev is
- detached
+Subject: [PATCH] char: Disable write callback if throttled chardev is detached
If a throttled chardev is detached from the frontend device, all future
callbacks should be suppressed. Not doing this results in a segfault.
@@ -33,5 +32,5 @@ index bfc94a5..67a6d73 100644
}
s->chr_can_read = handlers->fd_can_read;
--
-1.7.12.1
+1.8.0.2
diff --git a/0500-qxl-disallow-unknown-revisions.patch b/0501-qxl-disallow-unknown-revisions.patch
similarity index 88%
rename from 0500-qxl-disallow-unknown-revisions.patch
rename to 0501-qxl-disallow-unknown-revisions.patch
index 331ca45..c5e1406 100644
--- a/0500-qxl-disallow-unknown-revisions.patch
+++ b/0501-qxl-disallow-unknown-revisions.patch
@@ -1,4 +1,4 @@
-From 4b9d4103e5ff91b022ee8e9522040829f009543a Mon Sep 17 00:00:00 2001
+From 0826dcf575c1f88b5082458d3876c2bfe0a1d9a3 Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Tue, 21 Aug 2012 13:51:32 +0300
Subject: [PATCH] qxl: disallow unknown revisions
@@ -10,7 +10,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/hw/qxl.c b/hw/qxl.c
-index 59bf822..71879fe 100644
+index e7e9dd9..20e844f 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -1873,9 +1873,9 @@ static int qxl_init_common(PCIQXLDevice *qxl)
@@ -27,5 +27,5 @@ index 59bf822..71879fe 100644
pci_set_byte(&config[PCI_REVISION_ID], pci_device_rev);
--
-1.7.12.1
+1.8.0.2
diff --git a/0501-spice-make-number-of-surfaces-runtime-configurable.patch b/0502-spice-make-number-of-surfaces-runtime-configurable.patch
similarity index 95%
rename from 0501-spice-make-number-of-surfaces-runtime-configurable.patch
rename to 0502-spice-make-number-of-surfaces-runtime-configurable.patch
index b55c3df..3065257 100644
--- a/0501-spice-make-number-of-surfaces-runtime-configurable.patch
+++ b/0502-spice-make-number-of-surfaces-runtime-configurable.patch
@@ -1,4 +1,4 @@
-From 1c74b60fa972c9489f9cf8fa59165dedd0c23de2 Mon Sep 17 00:00:00 2001
+From 0d67ff8e7dee8babc61c939946836cc8c74b05b1 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 4 Sep 2012 11:39:41 +0200
Subject: [PATCH] spice: make number of surfaces runtime-configurable.
@@ -12,7 +12,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
4 files changed, 23 insertions(+), 19 deletions(-)
diff --git a/hw/qxl.c b/hw/qxl.c
-index 71879fe..83df499 100644
+index 20e844f..c7b4e9a 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -238,7 +238,8 @@ static void qxl_spice_destroy_surfaces_complete(PCIQXLDevice *qxl)
@@ -74,7 +74,7 @@ index 71879fe..83df499 100644
"%" PRIu64 " >= NUM_SURFACES", async, val);
goto cancel_async;
@@ -1717,7 +1718,7 @@ static void qxl_dirty_surfaces(PCIQXLDevice *qxl)
- vram_start = (intptr_t)memory_region_get_ram_ptr(&qxl->vram_bar);
+ vram_start = (uintptr_t)memory_region_get_ram_ptr(&qxl->vram_bar);
/* dirty the off-screen surfaces */
- for (i = 0; i < NUM_SURFACES; i++) {
@@ -98,7 +98,7 @@ index 71879fe..83df499 100644
memory_region_init_ram(&qxl->vram_bar, "qxl.vram", qxl->vram_size);
vmstate_register_ram(&qxl->vram_bar, &qxl->pci.qdev);
memory_region_init_alias(&qxl->vram32_bar, "qxl.vram32", &qxl->vram_bar,
-@@ -2052,8 +2053,8 @@ static int qxl_post_load(void *opaque, int version)
+@@ -2053,8 +2054,8 @@ static int qxl_post_load(void *opaque, int version)
qxl_create_guest_primary(d, 1, QXL_SYNC);
/* replay surface-create and cursor-set commands */
@@ -109,7 +109,7 @@ index 71879fe..83df499 100644
if (d->guest_surfaces.cmds[in] == 0) {
continue;
}
-@@ -2153,9 +2154,10 @@ static VMStateDescription qxl_vmstate = {
+@@ -2154,9 +2155,10 @@ static VMStateDescription qxl_vmstate = {
qxl_memslot, struct guest_slots),
VMSTATE_STRUCT(guest_primary.surface, PCIQXLDevice, 0,
qxl_surface, QXLSurfaceCreate),
@@ -123,7 +123,7 @@ index 71879fe..83df499 100644
VMSTATE_UINT64(guest_cursor, PCIQXLDevice),
VMSTATE_END_OF_LIST()
},
-@@ -2183,6 +2185,7 @@ static Property qxl_properties[] = {
+@@ -2184,6 +2186,7 @@ static Property qxl_properties[] = {
DEFINE_PROP_UINT32("vram_size_mb", PCIQXLDevice, vram32_size_mb, -1),
DEFINE_PROP_UINT32("vram64_size_mb", PCIQXLDevice, vram_size_mb, -1),
DEFINE_PROP_UINT32("vgamem_mb", PCIQXLDevice, vgamem_size_mb, 16),
@@ -197,5 +197,5 @@ index bcff114..512ab78 100644
QXLRect dirty;
int notify;
--
-1.7.12.1
+1.8.0.2
diff --git a/0502-qxl-Add-set_client_capabilities-interface-to-QXLInte.patch b/0503-qxl-Add-set_client_capabilities-interface-to-QXLInte.patch
similarity index 95%
rename from 0502-qxl-Add-set_client_capabilities-interface-to-QXLInte.patch
rename to 0503-qxl-Add-set_client_capabilities-interface-to-QXLInte.patch
index 41c05f5..65bf21b 100644
--- a/0502-qxl-Add-set_client_capabilities-interface-to-QXLInte.patch
+++ b/0503-qxl-Add-set_client_capabilities-interface-to-QXLInte.patch
@@ -1,4 +1,4 @@
-From 0fe78ffd13555bed86a41acf96cdc15ece961b0d Mon Sep 17 00:00:00 2001
+From 6e338ef1256bd8672e9a03f6a57a76191d8538e7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B8ren=20Sandmann=20Pedersen?= <ssp at redhat.com>
Date: Tue, 4 Sep 2012 10:14:48 -0400
Subject: [PATCH] qxl: Add set_client_capabilities() interface to QXLInterface
@@ -19,7 +19,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 23 insertions(+)
diff --git a/hw/qxl.c b/hw/qxl.c
-index 83df499..d8b67b2 100644
+index c7b4e9a..552d208 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -946,6 +946,26 @@ static void interface_async_complete(QXLInstance *sin, uint64_t cookie_token)
@@ -60,5 +60,5 @@ index 83df499..d8b67b2 100644
static void qxl_enter_vga_mode(PCIQXLDevice *d)
--
-1.7.12.1
+1.8.0.2
diff --git a/0503-Remove-ifdef-QXL_COMMAND_FLAG_COMPAT_16BPP.patch b/0504-Remove-ifdef-QXL_COMMAND_FLAG_COMPAT_16BPP.patch
similarity index 89%
rename from 0503-Remove-ifdef-QXL_COMMAND_FLAG_COMPAT_16BPP.patch
rename to 0504-Remove-ifdef-QXL_COMMAND_FLAG_COMPAT_16BPP.patch
index 899e280..1d14605 100644
--- a/0503-Remove-ifdef-QXL_COMMAND_FLAG_COMPAT_16BPP.patch
+++ b/0504-Remove-ifdef-QXL_COMMAND_FLAG_COMPAT_16BPP.patch
@@ -1,4 +1,4 @@
-From 0dcef831a875505fdaffb824de9e4450273ea53d Mon Sep 17 00:00:00 2001
+From 2c3ddbb6b2b53fd06dfd3d5c1fd4c95bc4d8fa28 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B8ren=20Sandmann=20Pedersen?= <ssp at redhat.com>
Date: Tue, 4 Sep 2012 10:14:49 -0400
Subject: [PATCH] Remove #ifdef QXL_COMMAND_FLAG_COMPAT_16BPP
@@ -12,7 +12,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 2 deletions(-)
diff --git a/hw/qxl.c b/hw/qxl.c
-index d8b67b2..a6e6cf1 100644
+index 552d208..d1d995c 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -1361,11 +1361,9 @@ static void qxl_set_mode(PCIQXLDevice *d, int modenr, int loadvm)
@@ -28,5 +28,5 @@ index d8b67b2..a6e6cf1 100644
d->rom->mode = cpu_to_le32(modenr);
qxl_rom_set_dirty(d);
--
-1.7.12.1
+1.8.0.2
diff --git a/0504-spice-switch-to-queue-for-vga-mode-updates.patch b/0505-spice-switch-to-queue-for-vga-mode-updates.patch
similarity index 97%
rename from 0504-spice-switch-to-queue-for-vga-mode-updates.patch
rename to 0505-spice-switch-to-queue-for-vga-mode-updates.patch
index b9726e8..4a6138a 100644
--- a/0504-spice-switch-to-queue-for-vga-mode-updates.patch
+++ b/0505-spice-switch-to-queue-for-vga-mode-updates.patch
@@ -1,4 +1,4 @@
-From 244ff52221b4c4181422861a930d8f755a1a5c08 Mon Sep 17 00:00:00 2001
+From 5d125d9e030ea1ab3c1568d7a88e2b2b1a265363 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed, 5 Sep 2012 08:25:08 +0200
Subject: [PATCH] spice: switch to queue for vga mode updates
@@ -11,7 +11,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
3 files changed, 19 insertions(+), 15 deletions(-)
diff --git a/hw/qxl.c b/hw/qxl.c
-index a6e6cf1..2ec4341 100644
+index d1d995c..743082d 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -599,9 +599,9 @@ static int interface_get_command(QXLInstance *sin, struct QXLCommandExt *ext)
@@ -134,5 +134,5 @@ index 512ab78..3fcb6fe 100644
int qemu_spice_rect_is_empty(const QXLRect* r);
--
-1.7.12.1
+1.8.0.2
diff --git a/0505-spice-split-qemu_spice_create_update.patch b/0506-spice-split-qemu_spice_create_update.patch
similarity index 97%
rename from 0505-spice-split-qemu_spice_create_update.patch
rename to 0506-spice-split-qemu_spice_create_update.patch
index d761fcf..9c3ed0c 100644
--- a/0505-spice-split-qemu_spice_create_update.patch
+++ b/0506-spice-split-qemu_spice_create_update.patch
@@ -1,4 +1,4 @@
-From 6d196973a9adba583cf9bbc5a4196a58f2cb0eb3 Mon Sep 17 00:00:00 2001
+From fc15ba066a059c49cf1022345d7ac8fa24a1dd92 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed, 5 Sep 2012 08:52:23 +0200
Subject: [PATCH] spice: split qemu_spice_create_update
@@ -90,5 +90,5 @@ index 59c5fd7..6f68f28 100644
* Called from spice server thread context (via interface_release_ressource)
* We do *not* hold the global qemu mutex here, so extra care is needed
--
-1.7.12.1
+1.8.0.2
diff --git a/0506-spice-add-screen-mirror.patch b/0507-spice-add-screen-mirror.patch
similarity index 97%
rename from 0506-spice-add-screen-mirror.patch
rename to 0507-spice-add-screen-mirror.patch
index 6ee91d1..e01bea7 100644
--- a/0506-spice-add-screen-mirror.patch
+++ b/0507-spice-add-screen-mirror.patch
@@ -1,4 +1,4 @@
-From 9f4c601032d7a27e8856517a1a020c9988667ed3 Mon Sep 17 00:00:00 2001
+From d02ed657b7ad55f2111a049c3e175ed78c63e5b1 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed, 5 Sep 2012 09:35:57 +0200
Subject: [PATCH] spice: add screen mirror
@@ -94,5 +94,5 @@ index 3fcb6fe..dea41c1 100644
int bufsize;
QXLWorker *worker;
--
-1.7.12.1
+1.8.0.2
diff --git a/0507-spice-send-updates-only-for-changed-screen-content.patch b/0508-spice-send-updates-only-for-changed-screen-content.patch
similarity index 97%
rename from 0507-spice-send-updates-only-for-changed-screen-content.patch
rename to 0508-spice-send-updates-only-for-changed-screen-content.patch
index b575091..58c6282 100644
--- a/0507-spice-send-updates-only-for-changed-screen-content.patch
+++ b/0508-spice-send-updates-only-for-changed-screen-content.patch
@@ -1,4 +1,4 @@
-From e2da4b3f683ae63a55b8e50903a164f704be9e1d Mon Sep 17 00:00:00 2001
+From d112b2fbcc278746037badfb96619b6a87c7b7a3 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed, 5 Sep 2012 10:41:42 +0200
Subject: [PATCH] spice: send updates only for changed screen content
@@ -89,5 +89,5 @@ index 973cd53..d062765 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0508-qxl-Ignore-set_client_capabilities-pre-post-migrate.patch b/0509-qxl-Ignore-set_client_capabilities-pre-post-migrate.patch
similarity index 93%
rename from 0508-qxl-Ignore-set_client_capabilities-pre-post-migrate.patch
rename to 0509-qxl-Ignore-set_client_capabilities-pre-post-migrate.patch
index 78845b8..904feb6 100644
--- a/0508-qxl-Ignore-set_client_capabilities-pre-post-migrate.patch
+++ b/0509-qxl-Ignore-set_client_capabilities-pre-post-migrate.patch
@@ -1,4 +1,4 @@
-From 984e5c7aee378a8de44ff54891695115b92fe585 Mon Sep 17 00:00:00 2001
+From a075bce1994a52556beada7d81195e1bfeafe609 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Fri, 7 Sep 2012 21:29:22 +0200
Subject: [PATCH] qxl: Ignore set_client_capabilities pre/post migrate
@@ -21,7 +21,7 @@ Signed-off-by: Hans de Goede <hdegoede at redhat.com>
1 file changed, 5 insertions(+)
diff --git a/hw/qxl.c b/hw/qxl.c
-index 2ec4341..360f4f6 100644
+index 743082d..8a86ffc 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -955,6 +955,11 @@ static void interface_set_client_capabilities(QXLInstance *sin,
@@ -37,5 +37,5 @@ index 2ec4341..360f4f6 100644
memcpy(qxl->shadow_rom.client_capabilities, caps, sizeof(caps));
qxl->rom->client_present = client_present;
--
-1.7.12.1
+1.8.0.2
diff --git a/0509-qxl-add-trace-event-for-QXL_IO_LOG.patch b/0510-qxl-add-trace-event-for-QXL_IO_LOG.patch
similarity index 93%
rename from 0509-qxl-add-trace-event-for-QXL_IO_LOG.patch
rename to 0510-qxl-add-trace-event-for-QXL_IO_LOG.patch
index d5093de..d6a82d8 100644
--- a/0509-qxl-add-trace-event-for-QXL_IO_LOG.patch
+++ b/0510-qxl-add-trace-event-for-QXL_IO_LOG.patch
@@ -1,4 +1,4 @@
-From 720192d056402f47a8f71d9ac9bc4b0cf37902ed Mon Sep 17 00:00:00 2001
+From 82eab431ed1b9b198f2cab46a6a59fa2e5a31dc1 Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Wed, 12 Sep 2012 16:13:27 +0300
Subject: [PATCH] qxl: add trace-event for QXL_IO_LOG
@@ -11,7 +11,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
2 files changed, 2 insertions(+)
diff --git a/hw/qxl.c b/hw/qxl.c
-index 360f4f6..1ef117a 100644
+index 8a86ffc..006a9b7 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -1515,6 +1515,7 @@ async_common:
@@ -35,5 +35,5 @@ index aa79836..80a52d9 100644
qxl_io_unexpected_vga_mode(int qid, uint64_t addr, uint64_t val, const char *desc) "%d 0x%"PRIx64"=%"PRIu64" (%s)"
qxl_io_write(int qid, const char *mode, uint64_t addr, uint64_t val, unsigned size, int async) "%d %s addr=%"PRIu64 " val=%"PRIu64" size=%u async=%d"
--
-1.7.12.1
+1.8.0.2
diff --git a/0510-hw-qxl-support-client-monitor-configuration-via-devi.patch b/0511-hw-qxl-support-client-monitor-configuration-via-devi.patch
similarity index 97%
rename from 0510-hw-qxl-support-client-monitor-configuration-via-devi.patch
rename to 0511-hw-qxl-support-client-monitor-configuration-via-devi.patch
index 4a00940..0055ad6 100644
--- a/0510-hw-qxl-support-client-monitor-configuration-via-devi.patch
+++ b/0511-hw-qxl-support-client-monitor-configuration-via-devi.patch
@@ -1,4 +1,4 @@
-From f5c2bd00890dc32e940e8b2fae09f62f758317eb Mon Sep 17 00:00:00 2001
+From 6477aff05e661c5fb7d73d7c10e1a8a0af175e92 Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Wed, 12 Sep 2012 16:13:28 +0300
Subject: [PATCH] hw/qxl: support client monitor configuration via device
@@ -24,10 +24,10 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
3 files changed, 91 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
-index f528146..83c478c 100755
+index 9129433..5eb4369 100755
--- a/configure
+++ b/configure
-@@ -2706,6 +2706,9 @@ EOF
+@@ -2705,6 +2705,9 @@ EOF
if $pkg_config --atleast-version=0.12.0 spice-protocol >/dev/null 2>&1; then
spice_qxl_io_monitors_config_async="yes"
fi
@@ -37,7 +37,7 @@ index f528146..83c478c 100755
else
if test "$spice" = "yes" ; then
feature_not_found "spice"
-@@ -3453,6 +3456,10 @@ if test "$spice_qxl_io_monitors_config_async" = "yes" ; then
+@@ -3452,6 +3455,10 @@ if test "$spice_qxl_io_monitors_config_async" = "yes" ; then
echo "CONFIG_QXL_IO_MONITORS_CONFIG_ASYNC=y" >> $config_host_mak
fi
@@ -49,7 +49,7 @@ index f528146..83c478c 100755
echo "CONFIG_SMARTCARD=y" >> $config_host_mak
fi
diff --git a/hw/qxl.c b/hw/qxl.c
-index 1ef117a..0695872 100644
+index 006a9b7..1aac04b 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -18,6 +18,8 @@
@@ -177,5 +177,5 @@ index 80a52d9..07b63f1 100644
# hw/qxl-render.c
qxl_render_blit_guest_primary_initialized(void) ""
--
-1.7.12.1
+1.8.0.2
diff --git a/0512-qxl-update_area_io-cleanup-invalid-parameters-handli.patch b/0512-qxl-update_area_io-cleanup-invalid-parameters-handli.patch
index e742f65..bcc5ac3 100644
--- a/0512-qxl-update_area_io-cleanup-invalid-parameters-handli.patch
+++ b/0512-qxl-update_area_io-cleanup-invalid-parameters-handli.patch
@@ -1,4 +1,4 @@
-From 2bbe4bb8c12976312c9421489f7568a70e5ffae3 Mon Sep 17 00:00:00 2001
+From eaea06c56ee6569bbd6864a6f767160a74c9c65d Mon Sep 17 00:00:00 2001
From: Michael Tokarev <mjt at tls.msk.ru>
Date: Wed, 19 Sep 2012 17:41:26 +0400
Subject: [PATCH] qxl/update_area_io: cleanup invalid parameters handling
@@ -16,7 +16,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 3 insertions(+), 10 deletions(-)
diff --git a/hw/qxl.c b/hw/qxl.c
-index 0695872..720363f 100644
+index 1aac04b..6b9d5d0 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -1547,20 +1547,13 @@ async_common:
@@ -44,5 +44,5 @@ index 0695872..720363f 100644
}
if (async == QXL_ASYNC) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0513-qxl-fix-range-check-for-rev3-io-commands.patch b/0513-qxl-fix-range-check-for-rev3-io-commands.patch
index 65f8763..bcc42ed 100644
--- a/0513-qxl-fix-range-check-for-rev3-io-commands.patch
+++ b/0513-qxl-fix-range-check-for-rev3-io-commands.patch
@@ -1,4 +1,4 @@
-From 0e0d8cfb93813c0d693b14e3d433d36ee9bc6bab Mon Sep 17 00:00:00 2001
+From 7d349451b0b2561922927e45d7febeed514d7a86 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 25 Sep 2012 13:56:40 +0200
Subject: [PATCH] qxl: fix range check for rev3 io commands.
@@ -12,7 +12,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/qxl.c b/hw/qxl.c
-index 720363f..9389752 100644
+index 6b9d5d0..8d33745 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -1466,7 +1466,7 @@ static void ioport_write(void *opaque, target_phys_addr_t addr,
@@ -25,5 +25,5 @@ index 720363f..9389752 100644
io_port, d->revision);
return;
--
-1.7.12.1
+1.8.0.2
diff --git a/0600-usb-redir-Convert-to-new-libusbredirparser-0.5-API.patch b/0601-usb-redir-Convert-to-new-libusbredirparser-0.5-API.patch
similarity index 98%
rename from 0600-usb-redir-Convert-to-new-libusbredirparser-0.5-API.patch
rename to 0601-usb-redir-Convert-to-new-libusbredirparser-0.5-API.patch
index 3651fda..88889a2 100644
--- a/0600-usb-redir-Convert-to-new-libusbredirparser-0.5-API.patch
+++ b/0601-usb-redir-Convert-to-new-libusbredirparser-0.5-API.patch
@@ -1,4 +1,4 @@
-From a6400ff20f4e32eecce44931e33939cdf04e2a3e Mon Sep 17 00:00:00 2001
+From afe0b566b5700b9c3933b7b3f8e9414ff2014de1 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Fri, 31 Aug 2012 13:41:38 +0200
Subject: [PATCH] usb-redir: Convert to new libusbredirparser 0.5 API
@@ -14,10 +14,10 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
2 files changed, 32 insertions(+), 32 deletions(-)
diff --git a/configure b/configure
-index 83c478c..2c4469f 100755
+index 5eb4369..d43d61a 100755
--- a/configure
+++ b/configure
-@@ -2758,7 +2758,7 @@ fi
+@@ -2757,7 +2757,7 @@ fi
# check for usbredirparser for usb network redirection support
if test "$usb_redir" != "no" ; then
@@ -228,5 +228,5 @@ index b7c7f1e..321f5be 100644
if (dev->endpoint[EP2I(ep)].type != USB_ENDPOINT_XFER_INT) {
--
-1.7.12.1
+1.8.0.2
diff --git a/0601-usb-redir-Set-ep-max_packet_size-if-available.patch b/0602-usb-redir-Set-ep-max_packet_size-if-available.patch
similarity index 95%
rename from 0601-usb-redir-Set-ep-max_packet_size-if-available.patch
rename to 0602-usb-redir-Set-ep-max_packet_size-if-available.patch
index 8dacdb4..1e93c33 100644
--- a/0601-usb-redir-Set-ep-max_packet_size-if-available.patch
+++ b/0602-usb-redir-Set-ep-max_packet_size-if-available.patch
@@ -1,4 +1,4 @@
-From 0995eaeb06c4810cd133e710170a7b181caf04cd Mon Sep 17 00:00:00 2001
+From c065841b3604ac4f2b1c564db7c2fd180ac1c32d Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Mon, 3 Sep 2012 11:49:07 +0200
Subject: [PATCH] usb-redir: Set ep max_packet_size if available
@@ -35,5 +35,5 @@ index 321f5be..b9a3633 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0602-usb-redir-Add-a-usbredir_reject_device-helper-functi.patch b/0603-usb-redir-Add-a-usbredir_reject_device-helper-functi.patch
similarity index 95%
rename from 0602-usb-redir-Add-a-usbredir_reject_device-helper-functi.patch
rename to 0603-usb-redir-Add-a-usbredir_reject_device-helper-functi.patch
index cfe0fa1..a24fe54 100644
--- a/0602-usb-redir-Add-a-usbredir_reject_device-helper-functi.patch
+++ b/0603-usb-redir-Add-a-usbredir_reject_device-helper-functi.patch
@@ -1,4 +1,4 @@
-From 596013354fd1d5b102cdb54449b10e11346f9fda Mon Sep 17 00:00:00 2001
+From b9d21224a0186b5b6664d28a06729e0a5dadb853 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Mon, 3 Sep 2012 11:53:28 +0200
Subject: [PATCH] usb-redir: Add a usbredir_reject_device helper function
@@ -54,5 +54,5 @@ index b9a3633..a590cb2 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0603-usb-redir-Ensure-our-peer-has-the-necessary-caps-whe.patch b/0604-usb-redir-Ensure-our-peer-has-the-necessary-caps-whe.patch
similarity index 95%
rename from 0603-usb-redir-Ensure-our-peer-has-the-necessary-caps-whe.patch
rename to 0604-usb-redir-Ensure-our-peer-has-the-necessary-caps-whe.patch
index ef6b4a2..792ec58 100644
--- a/0603-usb-redir-Ensure-our-peer-has-the-necessary-caps-whe.patch
+++ b/0604-usb-redir-Ensure-our-peer-has-the-necessary-caps-whe.patch
@@ -1,4 +1,4 @@
-From 87317670541ed043a21964c29e0e613aab375224 Mon Sep 17 00:00:00 2001
+From 5b53990774b76625ff3d288fda1c0def3e612c92 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Mon, 3 Sep 2012 12:04:49 +0200
Subject: [PATCH] usb-redir: Ensure our peer has the necessary caps when
@@ -39,5 +39,5 @@ index a590cb2..f1bb692 100644
usbredir_reject_device(dev);
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0604-usb-redir-Enable-pipelining-for-bulk-endpoints.patch b/0605-usb-redir-Enable-pipelining-for-bulk-endpoints.patch
similarity index 91%
rename from 0604-usb-redir-Enable-pipelining-for-bulk-endpoints.patch
rename to 0605-usb-redir-Enable-pipelining-for-bulk-endpoints.patch
index cfb988e..d7c3444 100644
--- a/0604-usb-redir-Enable-pipelining-for-bulk-endpoints.patch
+++ b/0605-usb-redir-Enable-pipelining-for-bulk-endpoints.patch
@@ -1,4 +1,4 @@
-From c12ef3d896e426505ea3ca4fb2f1d9017f9cf828 Mon Sep 17 00:00:00 2001
+From 9658745685663e7fbae0e6956cbb95be835076f3 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Mon, 3 Sep 2012 13:44:04 +0200
Subject: [PATCH] usb-redir: Enable pipelining for bulk endpoints
@@ -24,5 +24,5 @@ index f1bb692..f183263 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0605-xhci-move-device-lookup-into-xhci_setup_packet.patch b/0606-xhci-move-device-lookup-into-xhci_setup_packet.patch
similarity index 97%
rename from 0605-xhci-move-device-lookup-into-xhci_setup_packet.patch
rename to 0606-xhci-move-device-lookup-into-xhci_setup_packet.patch
index 3a2ad62..cc4070c 100644
--- a/0605-xhci-move-device-lookup-into-xhci_setup_packet.patch
+++ b/0606-xhci-move-device-lookup-into-xhci_setup_packet.patch
@@ -1,4 +1,4 @@
-From 2255facbc338e73aa2442e2a1dc13b3474b35f98 Mon Sep 17 00:00:00 2001
+From 33cc7c61049bfe2563828e3b865874c4b1b55b6f Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri, 24 Aug 2012 14:21:39 +0200
Subject: [PATCH] xhci: move device lookup into xhci_setup_packet
@@ -9,7 +9,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 38 insertions(+), 36 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 333df59..316a303 100644
+index 30cb0d5..1a65063 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -1196,13 +1196,38 @@ static void xhci_stall_ep(XHCITransfer *xfer)
@@ -150,5 +150,5 @@ index 333df59..316a303 100644
if (result == USB_RET_NAK) {
return;
--
-1.7.12.1
+1.8.0.2
diff --git a/0606-xhci-implement-mfindex.patch b/0607-xhci-implement-mfindex.patch
similarity index 97%
rename from 0606-xhci-implement-mfindex.patch
rename to 0607-xhci-implement-mfindex.patch
index 4e4d268..523fc9b 100644
--- a/0606-xhci-implement-mfindex.patch
+++ b/0607-xhci-implement-mfindex.patch
@@ -1,4 +1,4 @@
-From 1f98b775c9f02caece1df5813edbb9c0a509bd58 Mon Sep 17 00:00:00 2001
+From b935a33743b54a9dd670c1245376a3903bab4801 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 21 Aug 2012 12:32:58 +0200
Subject: [PATCH] xhci: implement mfindex
@@ -11,7 +11,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 46 insertions(+), 7 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 316a303..f5ba6a4 100644
+index 1a65063..88f71fc 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -380,8 +380,6 @@ struct XHCIState {
@@ -138,5 +138,5 @@ index 316a303..f5ba6a4 100644
memory_region_init_io(&xhci->mem, &xhci_mem_ops, xhci,
--
-1.7.12.1
+1.8.0.2
diff --git a/0607-xhci-iso-xfer-support.patch b/0608-xhci-iso-xfer-support.patch
similarity index 98%
rename from 0607-xhci-iso-xfer-support.patch
rename to 0608-xhci-iso-xfer-support.patch
index acaee96..36094b6 100644
--- a/0607-xhci-iso-xfer-support.patch
+++ b/0608-xhci-iso-xfer-support.patch
@@ -1,4 +1,4 @@
-From 82508212e19333e527b64fb76cd1bc016afacc8a Mon Sep 17 00:00:00 2001
+From 26c73adc7b291c90f5975f7148092e4fc207f3dc Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri, 24 Aug 2012 14:13:08 +0200
Subject: [PATCH] xhci: iso xfer support
@@ -11,7 +11,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 101 insertions(+), 16 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index f5ba6a4..b313330 100644
+index 88f71fc..f3f1d61 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -325,9 +325,15 @@ typedef struct XHCITransfer {
@@ -234,5 +234,5 @@ index f5ba6a4..b313330 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0608-xhci-trace-cc-codes-in-cleartext.patch b/0609-xhci-trace-cc-codes-in-cleartext.patch
similarity index 97%
rename from 0608-xhci-trace-cc-codes-in-cleartext.patch
rename to 0609-xhci-trace-cc-codes-in-cleartext.patch
index b2b70f6..f672430 100644
--- a/0608-xhci-trace-cc-codes-in-cleartext.patch
+++ b/0609-xhci-trace-cc-codes-in-cleartext.patch
@@ -1,4 +1,4 @@
-From 188fbd363df2e7f23ea37fb1b179e984bbce39e5 Mon Sep 17 00:00:00 2001
+From eed215ccbf493e85d80fd51266c338e4ac86e7f9 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Mon, 27 Aug 2012 16:09:20 +0200
Subject: [PATCH] xhci: trace cc codes in cleartext
@@ -10,7 +10,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
2 files changed, 48 insertions(+), 2 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index b313330..ab352c0 100644
+index f3f1d61..ad2226f 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -465,6 +465,45 @@ static const char *TRBType_names[] = {
@@ -96,5 +96,5 @@ index 07b63f1..b38e32a 100644
usb_xhci_slot_enable(uint32_t slotid) "slotid %d"
usb_xhci_slot_disable(uint32_t slotid) "slotid %d"
--
-1.7.12.1
+1.8.0.2
diff --git a/0609-xhci-add-trace_usb_xhci_ep_set_dequeue.patch b/0610-xhci-add-trace_usb_xhci_ep_set_dequeue.patch
similarity index 93%
rename from 0609-xhci-add-trace_usb_xhci_ep_set_dequeue.patch
rename to 0610-xhci-add-trace_usb_xhci_ep_set_dequeue.patch
index 7a07da9..c4a482b 100644
--- a/0609-xhci-add-trace_usb_xhci_ep_set_dequeue.patch
+++ b/0610-xhci-add-trace_usb_xhci_ep_set_dequeue.patch
@@ -1,4 +1,4 @@
-From 10a1380a50e33f98d5030d75d9d356f7ce024556 Mon Sep 17 00:00:00 2001
+From 85be78ba5daa672ec27c23c371b30aa723dc73c3 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed, 29 Aug 2012 12:54:59 +0200
Subject: [PATCH] xhci: add trace_usb_xhci_ep_set_dequeue
@@ -10,7 +10,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index ab352c0..c6ab4a1 100644
+index ad2226f..a938ad3 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -1145,7 +1145,7 @@ static TRBCCode xhci_set_ep_dequeue(XHCIState *xhci, unsigned int slotid,
@@ -35,5 +35,5 @@ index b38e32a..2db1deb 100644
usb_xhci_ep_stop(uint32_t slotid, uint32_t epid) "slotid %d, epid %d"
usb_xhci_ep_reset(uint32_t slotid, uint32_t epid) "slotid %d, epid %d"
--
-1.7.12.1
+1.8.0.2
diff --git a/0610-xhci-update-register-layout.patch b/0611-xhci-update-register-layout.patch
similarity index 94%
rename from 0610-xhci-update-register-layout.patch
rename to 0611-xhci-update-register-layout.patch
index 6052e50..3a0a535 100644
--- a/0610-xhci-update-register-layout.patch
+++ b/0611-xhci-update-register-layout.patch
@@ -1,4 +1,4 @@
-From 79e9a5ca778bfcb67073bfecd3f7cea7d93781ce Mon Sep 17 00:00:00 2001
+From 81a651a566a37ab65dc0bf5a6a72453b0a0a7157 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu, 23 Aug 2012 13:26:25 +0200
Subject: [PATCH] xhci: update register layout
@@ -11,7 +11,7 @@ runtime-configurable.
1 file changed, 13 insertions(+), 8 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index c6ab4a1..d47539d 100644
+index a938ad3..11cb3bc 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -36,13 +36,12 @@
@@ -59,5 +59,5 @@ index c6ab4a1..d47539d 100644
# error Increase LEN_REGS
#endif
--
-1.7.12.1
+1.8.0.2
diff --git a/0611-xhci-update-port-handling.patch b/0612-xhci-update-port-handling.patch
similarity index 98%
rename from 0611-xhci-update-port-handling.patch
rename to 0612-xhci-update-port-handling.patch
index d47740a..40e39a4 100644
--- a/0611-xhci-update-port-handling.patch
+++ b/0612-xhci-update-port-handling.patch
@@ -1,4 +1,4 @@
-From 0b1ccd39faa8d1ea71f2d02dbab5dfd13f54ac98 Mon Sep 17 00:00:00 2001
+From 73b022067ca13e4f4c26ab2f31faa7ffa903b7a8 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 28 Aug 2012 13:38:01 +0200
Subject: [PATCH] xhci: update port handling
@@ -19,7 +19,7 @@ ports 1+2 and usb2 only on ports 3+4.
1 file changed, 97 insertions(+), 40 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index d47539d..5813b4a 100644
+index 11cb3bc..642e8e5 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -36,10 +36,10 @@
@@ -208,7 +208,7 @@ index d47539d..5813b4a 100644
case 0x08: /* HCSPARAMS 2 */
ret = 0x0000000f;
@@ -2276,7 +2310,7 @@ static uint32_t xhci_cap_read(XHCIState *xhci, uint32_t reg)
- ret = 0x20425455; /* "USB " */
+ ret = 0x20425355; /* "USB " */
break;
case 0x28: /* Supported Protocol:08 */
- ret = 0x00000001 | (USB2_PORTS<<8);
@@ -217,7 +217,7 @@ index d47539d..5813b4a 100644
case 0x2c: /* Supported Protocol:0c */
ret = 0x00000000; /* reserved */
@@ -2288,7 +2322,7 @@ static uint32_t xhci_cap_read(XHCIState *xhci, uint32_t reg)
- ret = 0x20425455; /* "USB " */
+ ret = 0x20425355; /* "USB " */
break;
case 0x38: /* Supported Protocol:08 */
- ret = 0x00000000 | (USB2_PORTS+1) | (USB3_PORTS<<8);
@@ -348,5 +348,5 @@ index d47539d..5813b4a 100644
};
--
-1.7.12.1
+1.8.0.2
diff --git a/0612-usb3-superspeed-descriptors.patch b/0613-usb3-superspeed-descriptors.patch
similarity index 96%
rename from 0612-usb3-superspeed-descriptors.patch
rename to 0613-usb3-superspeed-descriptors.patch
index 4c60573..e11739a 100644
--- a/0612-usb3-superspeed-descriptors.patch
+++ b/0613-usb3-superspeed-descriptors.patch
@@ -1,4 +1,4 @@
-From 81e37421158a28277c9857ba733da4371cb06129 Mon Sep 17 00:00:00 2001
+From 30c648f2872cfd04fdf4115628398571a214ccc3 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 28 Aug 2012 17:28:50 +0200
Subject: [PATCH] usb3: superspeed descriptors
@@ -60,5 +60,5 @@ index 7cf5442..d89fa41 100644
};
--
-1.7.12.1
+1.8.0.2
diff --git a/0613-usb3-superspeed-endpoint-companion.patch b/0614-usb3-superspeed-endpoint-companion.patch
similarity index 99%
rename from 0613-usb3-superspeed-endpoint-companion.patch
rename to 0614-usb3-superspeed-endpoint-companion.patch
index 40983e4..2a0b793 100644
--- a/0613-usb3-superspeed-endpoint-companion.patch
+++ b/0614-usb3-superspeed-endpoint-companion.patch
@@ -1,4 +1,4 @@
-From e0354b4f91dd198b5bfe1ddf649588d6af84ea9c Mon Sep 17 00:00:00 2001
+From a76e4c47f9be219527561c074716972226b6c1c1 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 28 Aug 2012 17:28:03 +0200
Subject: [PATCH] usb3: superspeed endpoint companion
@@ -244,5 +244,5 @@ index d89fa41..4b5e88d 100644
/* control message emulation helpers */
--
-1.7.12.1
+1.8.0.2
diff --git a/0614-usb3-bos-decriptor.patch b/0615-usb3-bos-decriptor.patch
similarity index 98%
rename from 0614-usb3-bos-decriptor.patch
rename to 0615-usb3-bos-decriptor.patch
index 99d4f81..b30ca3e 100644
--- a/0614-usb3-bos-decriptor.patch
+++ b/0615-usb3-bos-decriptor.patch
@@ -1,4 +1,4 @@
-From 2014680cdc2834fef9b4cee5e1239f22d8dbdba3 Mon Sep 17 00:00:00 2001
+From dd9e0d2970d00917406acdd77add20e0a87012dc Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 28 Aug 2012 17:46:29 +0200
Subject: [PATCH] usb3: bos decriptor
@@ -211,5 +211,5 @@ index 2db1deb..d941e78 100644
usb_set_config(int addr, int config, int ret) "dev %d, config %d, ret %d"
usb_set_interface(int addr, int iface, int alt, int ret) "dev %d, interface %d, altsetting %d, ret %d"
--
-1.7.12.1
+1.8.0.2
diff --git a/0615-usb-storage-usb3-support.patch b/0616-usb-storage-usb3-support.patch
similarity index 97%
rename from 0615-usb-storage-usb3-support.patch
rename to 0616-usb-storage-usb3-support.patch
index 7caeb42..1010f18 100644
--- a/0615-usb-storage-usb3-support.patch
+++ b/0616-usb-storage-usb3-support.patch
@@ -1,4 +1,4 @@
-From 9a6fd10bf6a85c4df63a7ba1cf7d6203220d722e Mon Sep 17 00:00:00 2001
+From 555a722ece2d20facc9f8be2c32fb0595a2f4e8b Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 28 Aug 2012 17:29:15 +0200
Subject: [PATCH] usb-storage: usb3 support
@@ -90,5 +90,5 @@ index ff48d91..e732191 100644
static void usb_msd_copy_data(MSDState *s, USBPacket *p)
--
-1.7.12.1
+1.8.0.2
diff --git a/0616-xhci-fix-cleanup-msi.patch b/0617-xhci-fix-cleanup-msi.patch
similarity index 96%
rename from 0616-xhci-fix-cleanup-msi.patch
rename to 0617-xhci-fix-cleanup-msi.patch
index 33fca14..e0cc571 100644
--- a/0616-xhci-fix-cleanup-msi.patch
+++ b/0617-xhci-fix-cleanup-msi.patch
@@ -1,4 +1,4 @@
-From e97e63460859a74cf53c85e97a6d60633a92cc64 Mon Sep 17 00:00:00 2001
+From 894f086b6205b780a8dc97489f58ea324ecb9765 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu, 30 Aug 2012 10:57:12 +0200
Subject: [PATCH] xhci: fix & cleanup msi.
@@ -15,7 +15,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 9 insertions(+), 18 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 5813b4a..d2e6ee6 100644
+index 642e8e5..ff74ed9 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -386,7 +386,7 @@ struct XHCIState {
@@ -92,5 +92,5 @@ index 5813b4a..d2e6ee6 100644
static TypeInfo xhci_info = {
--
-1.7.12.1
+1.8.0.2
diff --git a/0617-xhci-rework-interrupt-handling.patch b/0618-xhci-rework-interrupt-handling.patch
similarity index 96%
rename from 0617-xhci-rework-interrupt-handling.patch
rename to 0618-xhci-rework-interrupt-handling.patch
index 3ac4ccc..4689b93 100644
--- a/0617-xhci-rework-interrupt-handling.patch
+++ b/0618-xhci-rework-interrupt-handling.patch
@@ -1,4 +1,4 @@
-From 3bf435b656390f75ce8b8990f7484efb162472c9 Mon Sep 17 00:00:00 2001
+From 28d099bc11fa5c22331c4681dc5cb56fe19d603a Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu, 30 Aug 2012 13:05:10 +0200
Subject: [PATCH] xhci: rework interrupt handling
@@ -13,7 +13,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 33 insertions(+), 14 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index d2e6ee6..1857f42 100644
+index ff74ed9..74a57fe 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -612,24 +612,43 @@ static XHCIPort *xhci_lookup_port(XHCIState *xhci, struct USBPort *uport)
@@ -113,5 +113,5 @@ index d2e6ee6..1857f42 100644
case 0x24: /* IMOD */
xhci->imod = val;
--
-1.7.12.1
+1.8.0.2
diff --git a/0618-xhci-add-msix-support.patch b/0619-xhci-add-msix-support.patch
similarity index 97%
rename from 0618-xhci-add-msix-support.patch
rename to 0619-xhci-add-msix-support.patch
index ab0abab..86e69f8 100644
--- a/0618-xhci-add-msix-support.patch
+++ b/0619-xhci-add-msix-support.patch
@@ -1,4 +1,4 @@
-From b04ba21e22b2df805af8236bc462c5c403fc6ee4 Mon Sep 17 00:00:00 2001
+From 8e09078421d52a78081bbf35db75fa1d11b2f9a4 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu, 30 Aug 2012 12:06:59 +0200
Subject: [PATCH] xhci: add msix support
@@ -10,7 +10,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
2 files changed, 49 insertions(+), 1 deletion(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 1857f42..777f903 100644
+index 74a57fe..91c2fb1 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -23,6 +23,7 @@
@@ -152,5 +152,5 @@ index d941e78..f86bbda 100644
usb_xhci_fetch_trb(uint64_t addr, const char *name, uint64_t param, uint32_t status, uint32_t control) "addr %016" PRIx64 ", %s, p %016" PRIx64 ", s %08x, c 0x%08x"
usb_xhci_slot_enable(uint32_t slotid) "slotid %d"
--
-1.7.12.1
+1.8.0.2
diff --git a/0619-xhci-move-register-update-into-xhci_intr_raise.patch b/0620-xhci-move-register-update-into-xhci_intr_raise.patch
similarity index 92%
rename from 0619-xhci-move-register-update-into-xhci_intr_raise.patch
rename to 0620-xhci-move-register-update-into-xhci_intr_raise.patch
index f89d2a2..7b4af09 100644
--- a/0619-xhci-move-register-update-into-xhci_intr_raise.patch
+++ b/0620-xhci-move-register-update-into-xhci_intr_raise.patch
@@ -1,4 +1,4 @@
-From be996e1a852397f4009d08ac803081e1dfbc7326 Mon Sep 17 00:00:00 2001
+From 18e27420641fed150d09ece76a74089ffc81f21c Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu, 30 Aug 2012 14:04:04 +0200
Subject: [PATCH] xhci: move register update into xhci_intr_raise
@@ -12,7 +12,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 777f903..32d22f7 100644
+index 91c2fb1..ae5620f 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -662,8 +662,11 @@ static void xhci_msix_update(XHCIState *xhci)
@@ -51,5 +51,5 @@ index 777f903..32d22f7 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0620-xhci-add-XHCIInterrupter.patch b/0621-xhci-add-XHCIInterrupter.patch
similarity index 99%
rename from 0620-xhci-add-XHCIInterrupter.patch
rename to 0621-xhci-add-XHCIInterrupter.patch
index 2992970..e853f51 100644
--- a/0620-xhci-add-XHCIInterrupter.patch
+++ b/0621-xhci-add-XHCIInterrupter.patch
@@ -1,4 +1,4 @@
-From 40ddf0dafd6a8171d2a0f960a21d7d99bdf73cd6 Mon Sep 17 00:00:00 2001
+From 389e9b95abb9bd0eb42731351db615df6ded5f5d Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu, 30 Aug 2012 15:49:03 +0200
Subject: [PATCH] xhci: add XHCIInterrupter
@@ -13,7 +13,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
2 files changed, 161 insertions(+), 148 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 32d22f7..8a14ee8 100644
+index ae5620f..76da7a9 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -378,6 +378,27 @@ typedef struct XHCIEvent {
@@ -638,5 +638,5 @@ index f86bbda..f5b5097 100644
usb_xhci_slot_enable(uint32_t slotid) "slotid %d"
usb_xhci_slot_disable(uint32_t slotid) "slotid %d"
--
-1.7.12.1
+1.8.0.2
diff --git a/0621-xhci-prepare-xhci_runtime_-read-write-for-multiple-i.patch b/0622-xhci-prepare-xhci_runtime_-read-write-for-multiple-i.patch
similarity index 97%
rename from 0621-xhci-prepare-xhci_runtime_-read-write-for-multiple-i.patch
rename to 0622-xhci-prepare-xhci_runtime_-read-write-for-multiple-i.patch
index d753d08..82a6c44 100644
--- a/0621-xhci-prepare-xhci_runtime_-read-write-for-multiple-i.patch
+++ b/0622-xhci-prepare-xhci_runtime_-read-write-for-multiple-i.patch
@@ -1,4 +1,4 @@
-From 670eba790c368e9c37b0c964d94e0ff7f0d0c443 Mon Sep 17 00:00:00 2001
+From 0859f45be456731c7e900264f3f11f911717e121 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu, 30 Aug 2012 17:15:12 +0200
Subject: [PATCH] xhci: prepare xhci_runtime_{read,write} for multiple
@@ -12,7 +12,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 57 insertions(+), 43 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 8a14ee8..6b3ff16 100644
+index 76da7a9..df2ea22 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -2586,37 +2586,43 @@ static void xhci_oper_write(XHCIState *xhci, uint32_t reg, uint32_t val)
@@ -155,5 +155,5 @@ index 8a14ee8..6b3ff16 100644
default:
fprintf(stderr, "xhci_oper_write: reg 0x%x unimplemented\n", reg);
--
-1.7.12.1
+1.8.0.2
diff --git a/0622-xhci-pick-target-interrupter.patch b/0623-xhci-pick-target-interrupter.patch
similarity index 96%
rename from 0622-xhci-pick-target-interrupter.patch
rename to 0623-xhci-pick-target-interrupter.patch
index e336b49..6931c07 100644
--- a/0622-xhci-pick-target-interrupter.patch
+++ b/0623-xhci-pick-target-interrupter.patch
@@ -1,4 +1,4 @@
-From d6968ced27f697b26d7a1d5b44f15eeb300a9fd6 Mon Sep 17 00:00:00 2001
+From 755c1c8db0c6f23cc84aa31c0437f2ddd6048800 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri, 31 Aug 2012 15:30:51 +0200
Subject: [PATCH] xhci: pick target interrupter
@@ -11,7 +11,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 16 insertions(+), 6 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 6b3ff16..3b03c6c 100644
+index df2ea22..9667c0d 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -264,6 +264,10 @@ typedef enum TRBCCode {
@@ -89,5 +89,5 @@ index 6b3ff16..3b03c6c 100644
static void xhci_complete(USBPort *port, USBPacket *packet)
--
-1.7.12.1
+1.8.0.2
diff --git a/0623-xhci-support-multiple-interrupters.patch b/0624-xhci-support-multiple-interrupters.patch
similarity index 89%
rename from 0623-xhci-support-multiple-interrupters.patch
rename to 0624-xhci-support-multiple-interrupters.patch
index 0d8ffbd..c2f5235 100644
--- a/0623-xhci-support-multiple-interrupters.patch
+++ b/0624-xhci-support-multiple-interrupters.patch
@@ -1,4 +1,4 @@
-From 4e4d4191a40b5cbcd6f967ed105eea559104cd8a Mon Sep 17 00:00:00 2001
+From 6b4ce88ab228e8ad167b10bf231126b7f266d8a9 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 4 Sep 2012 12:56:55 +0200
Subject: [PATCH] xhci: support multiple interrupters
@@ -12,7 +12,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 3b03c6c..4992705 100644
+index 9667c0d..874b545 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -42,7 +42,7 @@
@@ -36,5 +36,5 @@ index 3b03c6c..4992705 100644
#define USBCMD_RS (1<<0)
#define USBCMD_HCRST (1<<1)
--
-1.7.12.1
+1.8.0.2
diff --git a/0624-xhci-kill-xhci_mem_-read-write-dispatcher-functions.patch b/0625-xhci-kill-xhci_mem_-read-write-dispatcher-functions.patch
similarity index 98%
rename from 0624-xhci-kill-xhci_mem_-read-write-dispatcher-functions.patch
rename to 0625-xhci-kill-xhci_mem_-read-write-dispatcher-functions.patch
index ec23202..6713681 100644
--- a/0624-xhci-kill-xhci_mem_-read-write-dispatcher-functions.patch
+++ b/0625-xhci-kill-xhci_mem_-read-write-dispatcher-functions.patch
@@ -1,4 +1,4 @@
-From d2efc9f3dc62810ef6075f8759c9856016447c14 Mon Sep 17 00:00:00 2001
+From 3cb58625501657f61001334dc6537ab473caacbe Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue, 4 Sep 2012 14:42:20 +0200
Subject: [PATCH] xhci: kill xhci_mem_{read,write} dispatcher functions
@@ -12,7 +12,7 @@ Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
1 file changed, 75 insertions(+), 65 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
-index 4992705..4ba9464 100644
+index 874b545..2c799fb 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -404,6 +404,10 @@ struct XHCIState {
@@ -276,5 +276,5 @@ index 4992705..4ba9464 100644
PCI_BASE_ADDRESS_SPACE_MEMORY|PCI_BASE_ADDRESS_MEM_TYPE_64,
&xhci->mem);
--
-1.7.12.1
+1.8.0.2
diff --git a/0625-usb-redir-Change-cancelled-packet-code-into-a-generi.patch b/0626-usb-redir-Change-cancelled-packet-code-into-a-generi.patch
similarity index 98%
rename from 0625-usb-redir-Change-cancelled-packet-code-into-a-generi.patch
rename to 0626-usb-redir-Change-cancelled-packet-code-into-a-generi.patch
index 1f0e575..c618d3d 100644
--- a/0625-usb-redir-Change-cancelled-packet-code-into-a-generi.patch
+++ b/0626-usb-redir-Change-cancelled-packet-code-into-a-generi.patch
@@ -1,4 +1,4 @@
-From 5b44a6c9c102b69690adcc2c5be886857ea35ebd Mon Sep 17 00:00:00 2001
+From 7aec34d818d5e3f191e310ee0787e5844d3c6019 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Tue, 4 Sep 2012 14:18:34 +0200
Subject: [PATCH] usb-redir: Change cancelled packet code into a generic
@@ -180,5 +180,5 @@ index f183263..e2b8159 100644
usbredir_free_bufpq(dev, I2EP(i));
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0626-usb-redir-Add-an-already_in_flight-packet-id-queue.patch b/0627-usb-redir-Add-an-already_in_flight-packet-id-queue.patch
similarity index 98%
rename from 0626-usb-redir-Add-an-already_in_flight-packet-id-queue.patch
rename to 0627-usb-redir-Add-an-already_in_flight-packet-id-queue.patch
index e0e58c1..932fc3b 100644
--- a/0626-usb-redir-Add-an-already_in_flight-packet-id-queue.patch
+++ b/0627-usb-redir-Add-an-already_in_flight-packet-id-queue.patch
@@ -1,4 +1,4 @@
-From 9a38bd644b97a4a3ae92c9246bdcdd09ba937ae8 Mon Sep 17 00:00:00 2001
+From 1dc61f2996d6a211b690b43e9517baa31a786b6a Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Tue, 4 Sep 2012 17:03:54 +0200
Subject: [PATCH] usb-redir: Add an already_in_flight packet-id queue
@@ -115,5 +115,5 @@ index e2b8159..cdd705f 100644
usbredir_free_bufpq(dev, I2EP(i));
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0627-usb-redir-Store-max_packet_size-in-endp_data.patch b/0628-usb-redir-Store-max_packet_size-in-endp_data.patch
similarity index 95%
rename from 0627-usb-redir-Store-max_packet_size-in-endp_data.patch
rename to 0628-usb-redir-Store-max_packet_size-in-endp_data.patch
index 2c44744..9b641f3 100644
--- a/0627-usb-redir-Store-max_packet_size-in-endp_data.patch
+++ b/0628-usb-redir-Store-max_packet_size-in-endp_data.patch
@@ -1,4 +1,4 @@
-From c41be182adcd7026fcf76250fc3a64cec8a2c903 Mon Sep 17 00:00:00 2001
+From 8d5e4be8a36f93cd97c426285a65d66b9ac64bd7 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Thu, 6 Sep 2012 20:52:36 +0200
Subject: [PATCH] usb-redir: Store max_packet_size in endp_data
@@ -34,5 +34,5 @@ index cdd705f..6eb3c6d 100644
if (ep_info->type[i] == usb_redir_type_bulk) {
usb_ep->pipeline = true;
--
-1.7.12.1
+1.8.0.2
diff --git a/0628-usb-redir-Add-support-for-migration.patch b/0629-usb-redir-Add-support-for-migration.patch
similarity index 99%
rename from 0628-usb-redir-Add-support-for-migration.patch
rename to 0629-usb-redir-Add-support-for-migration.patch
index 52d9002..ffb1fce 100644
--- a/0628-usb-redir-Add-support-for-migration.patch
+++ b/0629-usb-redir-Add-support-for-migration.patch
@@ -1,4 +1,4 @@
-From a056ffda5a57d7169268e49a3e42c7d79c8f7c48 Mon Sep 17 00:00:00 2001
+From 6ffcfd679cbf168f4260b9db28662a2a1367b8b2 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Wed, 5 Sep 2012 09:21:44 +0200
Subject: [PATCH] usb-redir: Add support for migration
@@ -425,5 +425,5 @@ index 6eb3c6d..b7387b6 100644
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0629-usb-redir-Add-chardev-open-close-debug-logging.patch b/0630-usb-redir-Add-chardev-open-close-debug-logging.patch
similarity index 95%
rename from 0629-usb-redir-Add-chardev-open-close-debug-logging.patch
rename to 0630-usb-redir-Add-chardev-open-close-debug-logging.patch
index 5e8305d..b2ac4a8 100644
--- a/0629-usb-redir-Add-chardev-open-close-debug-logging.patch
+++ b/0630-usb-redir-Add-chardev-open-close-debug-logging.patch
@@ -1,4 +1,4 @@
-From 5a717110d859cbd989634e8acdcedd800ee2be74 Mon Sep 17 00:00:00 2001
+From 74544d87b480a3953b1f0b2b7cddd80d3b3c1bcb Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Wed, 5 Sep 2012 15:56:57 +0200
Subject: [PATCH] usb-redir: Add chardev open / close debug logging
@@ -50,5 +50,5 @@ index b7387b6..57e6289 100644
/*
* Delay next usb device attach to give the guest a chance to see
--
-1.7.12.1
+1.8.0.2
diff --git a/0630-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch b/0631-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
similarity index 94%
rename from 0630-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
rename to 0631-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
index 4ffc46b..0f3bfc1 100644
--- a/0630-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
+++ b/0631-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
@@ -1,4 +1,4 @@
-From b95fb22d2799ed07c55bccbd7ffa3cb19fb7feb3 Mon Sep 17 00:00:00 2001
+From eb7cba97b479dfd5814e2a1d24588a1543d50552 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Mon, 10 Sep 2012 13:49:46 +0200
Subject: [PATCH] usb-redir: Revert usb-redir part of commit 93bfef4c
@@ -31,5 +31,5 @@ index 57e6289..78e93a7 100644
/* Make sure any pending closes are handled (no-op if none pending) */
--
-1.7.12.1
+1.8.0.2
diff --git a/0631-ehci-Fix-interrupt-packet-MULT-handling.patch b/0632-ehci-Fix-interrupt-packet-MULT-handling.patch
similarity index 98%
rename from 0631-ehci-Fix-interrupt-packet-MULT-handling.patch
rename to 0632-ehci-Fix-interrupt-packet-MULT-handling.patch
index 17abd7f..ac24fec 100644
--- a/0631-ehci-Fix-interrupt-packet-MULT-handling.patch
+++ b/0632-ehci-Fix-interrupt-packet-MULT-handling.patch
@@ -1,4 +1,4 @@
-From d6fe9953a8277a54ae7f4cefa192b49d9bf99e3d Mon Sep 17 00:00:00 2001
+From 5c95a1e3a0b9266a195778cd95a8b08348d3a361 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Thu, 20 Sep 2012 16:55:02 +0200
Subject: [PATCH] ehci: Fix interrupt packet MULT handling
@@ -127,5 +127,5 @@ index 6a5da84..46f6d99 100644
/* 4.10.5 */
--
-1.7.12.1
+1.8.0.2
diff --git a/0632-usb-redir-Adjust-pkg-config-check-for-usbredirparser.patch b/0633-usb-redir-Adjust-pkg-config-check-for-usbredirparser.patch
similarity index 93%
rename from 0632-usb-redir-Adjust-pkg-config-check-for-usbredirparser.patch
rename to 0633-usb-redir-Adjust-pkg-config-check-for-usbredirparser.patch
index a8bebbd..bfd2d66 100644
--- a/0632-usb-redir-Adjust-pkg-config-check-for-usbredirparser.patch
+++ b/0633-usb-redir-Adjust-pkg-config-check-for-usbredirparser.patch
@@ -1,4 +1,4 @@
-From 79467d7c3fe963b39b00c884a5624cb1e754db9d Mon Sep 17 00:00:00 2001
+From 7f87b50fdd1519b431abe50173699fc6644d0eb6 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Tue, 25 Sep 2012 13:22:21 +0200
Subject: [PATCH] usb-redir: Adjust pkg-config check for usbredirparser .pc
@@ -27,10 +27,10 @@ Signed-off-by: Hans de Goede <hdegoede at redhat.com>
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/configure b/configure
-index 2c4469f..f019526 100755
+index d43d61a..8dac47b 100755
--- a/configure
+++ b/configure
-@@ -2758,10 +2758,10 @@ fi
+@@ -2757,10 +2757,10 @@ fi
# check for usbredirparser for usb network redirection support
if test "$usb_redir" != "no" ; then
@@ -45,5 +45,5 @@ index 2c4469f..f019526 100755
libs_softmmu="$libs_softmmu $usb_redir_libs"
else
--
-1.7.12.1
+1.8.0.2
diff --git a/0633-usb-redir-Change-usbredir_open_chardev-into-usbredir.patch b/0634-usb-redir-Change-usbredir_open_chardev-into-usbredir.patch
similarity index 95%
rename from 0633-usb-redir-Change-usbredir_open_chardev-into-usbredir.patch
rename to 0634-usb-redir-Change-usbredir_open_chardev-into-usbredir.patch
index f39bc12..cf6a757 100644
--- a/0633-usb-redir-Change-usbredir_open_chardev-into-usbredir.patch
+++ b/0634-usb-redir-Change-usbredir_open_chardev-into-usbredir.patch
@@ -1,4 +1,4 @@
-From 9ebfb490e04e1fe5466a4d31df17c5e6283236cb Mon Sep 17 00:00:00 2001
+From f9ba78b992979db8b3d1489b34ec83eba5f12c52 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Thu, 27 Sep 2012 16:59:50 +0200
Subject: [PATCH] usb-redir: Change usbredir_open_chardev into
@@ -45,5 +45,5 @@ index 78e93a7..5d16aff 100644
case CHR_EVENT_CLOSED:
DPRINTF("chardev close\n");
--
-1.7.12.1
+1.8.0.2
diff --git a/0634-usb-redir-Don-t-make-migration-fail-in-none-seamless.patch b/0635-usb-redir-Don-t-make-migration-fail-in-none-seamless.patch
similarity index 95%
rename from 0634-usb-redir-Don-t-make-migration-fail-in-none-seamless.patch
rename to 0635-usb-redir-Don-t-make-migration-fail-in-none-seamless.patch
index a222747..933347c 100644
--- a/0634-usb-redir-Don-t-make-migration-fail-in-none-seamless.patch
+++ b/0635-usb-redir-Don-t-make-migration-fail-in-none-seamless.patch
@@ -1,4 +1,4 @@
-From c57b03073357e813ade4b3b34f6c1e3c0de394c2 Mon Sep 17 00:00:00 2001
+From eab47219d477920fce785cb6bc34c0725d5b4b5f Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede at redhat.com>
Date: Thu, 27 Sep 2012 16:57:41 +0200
Subject: [PATCH] usb-redir: Don't make migration fail in none seamless case
@@ -38,5 +38,5 @@ index 5d16aff..022ba42 100644
data = g_malloc(len);
--
-1.7.12.1
+1.8.0.2
diff --git a/0800-mips-Fix-link-error-with-piix4_pm_init.patch b/0701-mips-Fix-link-error-with-piix4_pm_init.patch
similarity index 92%
rename from 0800-mips-Fix-link-error-with-piix4_pm_init.patch
rename to 0701-mips-Fix-link-error-with-piix4_pm_init.patch
index 3ceb891..97b306f 100644
--- a/0800-mips-Fix-link-error-with-piix4_pm_init.patch
+++ b/0701-mips-Fix-link-error-with-piix4_pm_init.patch
@@ -1,4 +1,4 @@
-From 5196eaa783b83110e6a8b99bfeb244b758b6e9c7 Mon Sep 17 00:00:00 2001
+From ffb70f6bbc0422cee8e0ef1a64da77d05492e290 Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso at redhat.com>
Date: Mon, 6 Aug 2012 17:12:40 -0400
Subject: [PATCH] mips: Fix link error with 'piix4_pm_init'
@@ -26,5 +26,5 @@ index 29a5d0d..89af0e9 100644
obj-y := $(addprefix ../,$(obj-y))
--
-1.7.12.1
+1.8.0.2
diff --git a/0801-configure-Add-disable-kvm-options.patch b/0702-configure-Add-disable-kvm-options.patch
similarity index 92%
rename from 0801-configure-Add-disable-kvm-options.patch
rename to 0702-configure-Add-disable-kvm-options.patch
index 05021f1..38609e5 100644
--- a/0801-configure-Add-disable-kvm-options.patch
+++ b/0702-configure-Add-disable-kvm-options.patch
@@ -1,4 +1,4 @@
-From b80fff00ed7f9baff808edb6c2c9f98f7e75e8ca Mon Sep 17 00:00:00 2001
+From c546c1e56883261a78d85a9a77c64305ba9a0c1f Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso at redhat.com>
Date: Mon, 13 Aug 2012 18:39:54 -0400
Subject: [PATCH] configure: Add --disable-kvm-options
@@ -18,7 +18,7 @@ Signed-off-by: Cole Robinson <crobinso at redhat.com>
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
-index f019526..933754d 100755
+index 8dac47b..1668f30 100755
--- a/configure
+++ b/configure
@@ -210,6 +210,7 @@ bsd_user="no"
@@ -47,7 +47,7 @@ index f019526..933754d 100755
echo " --enable-tcg-interpreter enable TCG with bytecode interpreter (TCI)"
echo " --disable-nptl disable usermode NPTL support"
echo " --enable-nptl enable usermode NPTL support"
-@@ -3160,6 +3165,7 @@ echo "ATTR/XATTR support $attr"
+@@ -3159,6 +3164,7 @@ echo "ATTR/XATTR support $attr"
echo "Install blobs $blobs"
echo "KVM support $kvm"
echo "TCG interpreter $tcg_interpreter"
@@ -55,7 +55,7 @@ index f019526..933754d 100755
echo "fdt support $fdt"
echo "preadv support $preadv"
echo "fdatasync $fdatasync"
-@@ -3893,7 +3899,10 @@ case "$target_arch2" in
+@@ -3892,7 +3898,10 @@ case "$target_arch2" in
\( "$target_arch2" = "x86_64" -a "$cpu" = "i386" \) -o \
\( "$target_arch2" = "i386" -a "$cpu" = "x86_64" \) \) ; then
echo "CONFIG_KVM=y" >> $config_target_mak
@@ -68,5 +68,5 @@ index f019526..933754d 100755
echo "CONFIG_VHOST_NET=y" >> $config_target_mak
fi
--
-1.7.12.1
+1.8.0.2
diff --git a/0802-arm_boot-Change-initrd-load-address-to-halfway-throu.patch b/0703-arm_boot-Change-initrd-load-address-to-halfway-throu.patch
similarity index 98%
rename from 0802-arm_boot-Change-initrd-load-address-to-halfway-throu.patch
rename to 0703-arm_boot-Change-initrd-load-address-to-halfway-throu.patch
index 649fb0e..d52c60c 100644
--- a/0802-arm_boot-Change-initrd-load-address-to-halfway-throu.patch
+++ b/0703-arm_boot-Change-initrd-load-address-to-halfway-throu.patch
@@ -1,8 +1,7 @@
-From d3a43fe4b870154032db4651824bc88e3cb81dc5 Mon Sep 17 00:00:00 2001
+From eebf51f3c5fce7fe55b12088fa62051f7ba60063 Mon Sep 17 00:00:00 2001
From: Peter Maydell <peter.maydell at linaro.org>
Date: Fri, 26 Oct 2012 16:29:38 +0100
-Subject: [PATCH] arm_boot: Change initrd load address to "halfway through
- RAM"
+Subject: [PATCH] arm_boot: Change initrd load address to "halfway through RAM"
To avoid continually having to bump the initrd load address
to account for larger kernel images, put the initrd halfway
@@ -134,5 +133,5 @@ index a6e9143..920c337 100644
exit(1);
}
--
-1.7.12.1
+1.8.0.2
diff --git a/0803-dtrace-backend-add-function-to-reserved-words.patch b/0704-dtrace-backend-add-function-to-reserved-words.patch
similarity index 92%
rename from 0803-dtrace-backend-add-function-to-reserved-words.patch
rename to 0704-dtrace-backend-add-function-to-reserved-words.patch
index cc58c6f..3997c3f 100644
--- a/0803-dtrace-backend-add-function-to-reserved-words.patch
+++ b/0704-dtrace-backend-add-function-to-reserved-words.patch
@@ -1,4 +1,4 @@
-From 4780bb16558d2753e2277e1570644bec49551534 Mon Sep 17 00:00:00 2001
+From 0a01742a34be0859b18fb2ebfd1191be4cf5a380 Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Sun, 2 Sep 2012 02:04:16 +0300
Subject: [PATCH] dtrace backend: add function to reserved words
@@ -23,5 +23,5 @@ index 9cab75c..6be7047 100644
out(' %s = $arg%d;' % (name, i))
i += 1
--
-1.7.12.1
+1.8.0.2
diff --git a/0804-wip-hw-qxl-inject-interrupts-in-any-state.patch b/0705-wip-hw-qxl-inject-interrupts-in-any-state.patch
similarity index 85%
rename from 0804-wip-hw-qxl-inject-interrupts-in-any-state.patch
rename to 0705-wip-hw-qxl-inject-interrupts-in-any-state.patch
index 4e5222d..5251af4 100644
--- a/0804-wip-hw-qxl-inject-interrupts-in-any-state.patch
+++ b/0705-wip-hw-qxl-inject-interrupts-in-any-state.patch
@@ -1,4 +1,4 @@
-From e0575d0a1a14e8f4e8fc11d549cbd07cca433383 Mon Sep 17 00:00:00 2001
+From 605d30a4a9548e27d65fa90faa29b942df097e1e Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Tue, 30 Oct 2012 18:00:33 +0200
Subject: [PATCH] wip: hw/qxl: inject interrupts in any state
@@ -8,7 +8,7 @@ Subject: [PATCH] wip: hw/qxl: inject interrupts in any state
1 file changed, 1 deletion(-)
diff --git a/hw/qxl.c b/hw/qxl.c
-index 9389752..b137731 100644
+index 8d33745..1d8ffae 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -1714,7 +1714,6 @@ static void qxl_send_events(PCIQXLDevice *d, uint32_t events)
@@ -20,5 +20,5 @@ index 9389752..b137731 100644
if ((old_pending & le_events) == le_events) {
return;
--
-1.7.12.1
+1.8.0.2
diff --git a/1001-libcacard-fix-missing-symbols-in-libcacard.so.patch b/0706-libcacard-fix-missing-symbols-in-libcacard.so.patch
similarity index 87%
rename from 1001-libcacard-fix-missing-symbols-in-libcacard.so.patch
rename to 0706-libcacard-fix-missing-symbols-in-libcacard.so.patch
index 7fcf77b..678d03a 100644
--- a/1001-libcacard-fix-missing-symbols-in-libcacard.so.patch
+++ b/0706-libcacard-fix-missing-symbols-in-libcacard.so.patch
@@ -1,4 +1,4 @@
-From 3bf390b736e7befd0fbcd252ef5ac6dffd26cf03 Mon Sep 17 00:00:00 2001
+From a44468631dea81f4cdc4b3156d28d7e8b94ce037 Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Wed, 28 Nov 2012 16:38:43 +0200
Subject: [PATCH] libcacard: fix missing symbols in libcacard.so
@@ -8,7 +8,7 @@ Subject: [PATCH] libcacard: fix missing symbols in libcacard.so
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libcacard/Makefile b/libcacard/Makefile
-index 63990b7..58e5731 100644
+index 63990b7..9ce3117 100644
--- a/libcacard/Makefile
+++ b/libcacard/Makefile
@@ -7,7 +7,7 @@ libcacard_includedir=$(includedir)/cacard
@@ -21,5 +21,5 @@ index 63990b7..58e5731 100644
QEMU_CFLAGS+=-I../
--
-1.8.0
+1.8.0.2
diff --git a/1002-configure-move-vscclient-binary-under-libcacard.patch b/0707-configure-move-vscclient-binary-under-libcacard.patch
similarity index 95%
rename from 1002-configure-move-vscclient-binary-under-libcacard.patch
rename to 0707-configure-move-vscclient-binary-under-libcacard.patch
index 31ac7b2..df345dc 100644
--- a/1002-configure-move-vscclient-binary-under-libcacard.patch
+++ b/0707-configure-move-vscclient-binary-under-libcacard.patch
@@ -1,4 +1,4 @@
-From 373d00412f13f280619fd161e780cd5da5dfc1a3 Mon Sep 17 00:00:00 2001
+From 9c773d62b68152114b4a5a63fa68162acc853d6e Mon Sep 17 00:00:00 2001
From: Alon Levy <alevy at redhat.com>
Date: Thu, 29 Nov 2012 14:11:19 +0200
Subject: [PATCH] configure: move vscclient binary under libcacard
@@ -52,10 +52,10 @@ index 4412757..92d6b4a 100644
common-obj-$(CONFIG_SMARTCARD_NSS) += $(libcacard-y)
diff --git a/configure b/configure
-index 950912a..64b8aa7 100755
+index 1668f30..6af2806 100755
--- a/configure
+++ b/configure
-@@ -3073,7 +3073,7 @@ if test "$softmmu" = yes ; then
+@@ -3078,7 +3078,7 @@ if test "$softmmu" = yes ; then
fi
fi
if test "$smartcard_nss" = "yes" ; then
@@ -89,5 +89,5 @@ index 9ce3117..88ed064 100644
$(LIBTOOL) --mode=install $(INSTALL_DATA) libcacard.pc "$(DESTDIR)$(libdir)/pkgconfig"
for inc in *.h; do \
--
-1.8.0.1
+1.8.0.2
diff --git a/0708-seccomp-adding-new-syscalls-bugzilla-855162.patch b/0708-seccomp-adding-new-syscalls-bugzilla-855162.patch
new file mode 100644
index 0000000..a996528
--- /dev/null
+++ b/0708-seccomp-adding-new-syscalls-bugzilla-855162.patch
@@ -0,0 +1,241 @@
+From cf0259065ea0cc476449a9e1dbbd5a128d57464c Mon Sep 17 00:00:00 2001
+From: Eduardo Otubo <otubo at linux.vnet.ibm.com>
+Date: Thu, 29 Nov 2012 13:56:41 -0200
+Subject: [PATCH] seccomp: adding new syscalls (bugzilla 855162)
+
+According to the bug 855162[0] - there's the need of adding new syscalls
+to the whitelist when using Qemu with Libvirt.
+
+[0] - https://bugzilla.redhat.com/show_bug.cgi?id=855162
+
+Reported-by: Paul Moore <pmoore at redhat.com>
+Tested-by: Paul Moore <pmoore at redhat.com>
+Signed-off-by: Eduardo Otubo <otubo at linux.vnet.ibm.com>
+Signed-off-by: Corey Bryant <coreyb at linux.vnet.ibm.com>
+Signed-off-by: Anthony Liguori <aliguori at us.ibm.com>
+---
+ qemu-seccomp.c | 156 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
+ 1 file changed, 139 insertions(+), 17 deletions(-)
+
+diff --git a/qemu-seccomp.c b/qemu-seccomp.c
+index 64329a3..2a71d6f 100644
+--- a/qemu-seccomp.c
++++ b/qemu-seccomp.c
+@@ -26,8 +26,12 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(timer_gettime), 254 },
+ { SCMP_SYS(futex), 253 },
+ { SCMP_SYS(select), 252 },
++#if defined(__x86_64__)
+ { SCMP_SYS(recvfrom), 251 },
+ { SCMP_SYS(sendto), 250 },
++#elif defined(__i386__)
++ { SCMP_SYS(socketcall), 250 },
++#endif
+ { SCMP_SYS(read), 249 },
+ { SCMP_SYS(brk), 248 },
+ { SCMP_SYS(clone), 247 },
+@@ -36,15 +40,30 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(execve), 245 },
+ { SCMP_SYS(open), 245 },
+ { SCMP_SYS(ioctl), 245 },
++#if defined(__x86_64__)
++ { SCMP_SYS(socket), 245 },
++ { SCMP_SYS(setsockopt), 245 },
+ { SCMP_SYS(recvmsg), 245 },
+ { SCMP_SYS(sendmsg), 245 },
+ { SCMP_SYS(accept), 245 },
+ { SCMP_SYS(connect), 245 },
++ { SCMP_SYS(socketpair), 245 },
++ { SCMP_SYS(bind), 245 },
++ { SCMP_SYS(listen), 245 },
++ { SCMP_SYS(semget), 245 },
++#elif defined(__i386__)
++ { SCMP_SYS(ipc), 245 },
++#endif
+ { SCMP_SYS(gettimeofday), 245 },
+ { SCMP_SYS(readlink), 245 },
+ { SCMP_SYS(access), 245 },
+ { SCMP_SYS(prctl), 245 },
+ { SCMP_SYS(signalfd), 245 },
++ { SCMP_SYS(getrlimit), 245 },
++ { SCMP_SYS(set_tid_address), 245 },
++ { SCMP_SYS(statfs), 245 },
++ { SCMP_SYS(unlink), 245 },
++ { SCMP_SYS(wait4), 245 },
+ #if defined(__i386__)
+ { SCMP_SYS(fcntl64), 245 },
+ { SCMP_SYS(fstat64), 245 },
+@@ -56,30 +75,33 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(sigreturn), 245 },
+ { SCMP_SYS(_newselect), 245 },
+ { SCMP_SYS(_llseek), 245 },
+- { SCMP_SYS(mmap2), 245},
++ { SCMP_SYS(mmap2), 245 },
+ { SCMP_SYS(sigprocmask), 245 },
+-#elif defined(__x86_64__)
+- { SCMP_SYS(sched_getparam), 245},
+- { SCMP_SYS(sched_getscheduler), 245},
+- { SCMP_SYS(fstat), 245},
+- { SCMP_SYS(clock_getres), 245},
+- { SCMP_SYS(sched_get_priority_min), 245},
+- { SCMP_SYS(sched_get_priority_max), 245},
+- { SCMP_SYS(stat), 245},
+- { SCMP_SYS(socket), 245},
+- { SCMP_SYS(setsockopt), 245},
+- { SCMP_SYS(uname), 245},
+- { SCMP_SYS(semget), 245},
+ #endif
++ { SCMP_SYS(sched_getparam), 245 },
++ { SCMP_SYS(sched_getscheduler), 245 },
++ { SCMP_SYS(fstat), 245 },
++ { SCMP_SYS(clock_getres), 245 },
++ { SCMP_SYS(sched_get_priority_min), 245 },
++ { SCMP_SYS(sched_get_priority_max), 245 },
++ { SCMP_SYS(stat), 245 },
++ { SCMP_SYS(uname), 245 },
+ { SCMP_SYS(eventfd2), 245 },
+ { SCMP_SYS(dup), 245 },
++ { SCMP_SYS(dup2), 245 },
++ { SCMP_SYS(dup3), 245 },
+ { SCMP_SYS(gettid), 245 },
++ { SCMP_SYS(getgid), 245 },
++ { SCMP_SYS(getegid), 245 },
++ { SCMP_SYS(getuid), 245 },
++ { SCMP_SYS(geteuid), 245 },
+ { SCMP_SYS(timer_create), 245 },
+ { SCMP_SYS(exit), 245 },
+ { SCMP_SYS(clock_gettime), 245 },
+ { SCMP_SYS(time), 245 },
+ { SCMP_SYS(restart_syscall), 245 },
+ { SCMP_SYS(pwrite64), 245 },
++ { SCMP_SYS(nanosleep), 245 },
+ { SCMP_SYS(chown), 245 },
+ { SCMP_SYS(openat), 245 },
+ { SCMP_SYS(getdents), 245 },
+@@ -93,8 +115,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(lseek), 245 },
+ { SCMP_SYS(pselect6), 245 },
+ { SCMP_SYS(fork), 245 },
+- { SCMP_SYS(bind), 245 },
+- { SCMP_SYS(listen), 245 },
+ { SCMP_SYS(eventfd), 245 },
+ { SCMP_SYS(rt_sigprocmask), 245 },
+ { SCMP_SYS(write), 244 },
+@@ -104,10 +124,112 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = {
+ { SCMP_SYS(pipe2), 242 },
+ { SCMP_SYS(munmap), 242 },
+ { SCMP_SYS(mremap), 242 },
++ { SCMP_SYS(fdatasync), 242 },
++ { SCMP_SYS(close), 242 },
++ { SCMP_SYS(rt_sigpending), 242 },
++ { SCMP_SYS(rt_sigtimedwait), 242 },
++ { SCMP_SYS(readv), 242 },
++ { SCMP_SYS(writev), 242 },
++ { SCMP_SYS(preadv), 242 },
++ { SCMP_SYS(pwritev), 242 },
++ { SCMP_SYS(setrlimit), 242 },
++ { SCMP_SYS(ftruncate), 242 },
++ { SCMP_SYS(lstat), 242 },
++ { SCMP_SYS(pipe), 242 },
++ { SCMP_SYS(umask), 242 },
++ { SCMP_SYS(chdir), 242 },
++ { SCMP_SYS(setitimer), 242 },
++ { SCMP_SYS(setsid), 242 },
++ { SCMP_SYS(poll), 242 },
++ { SCMP_SYS(epoll_create), 242 },
++ { SCMP_SYS(epoll_ctl), 242 },
++ { SCMP_SYS(epoll_wait), 242 },
++#if defined(__i386__)
++ { SCMP_SYS(waitpid), 242 },
++#elif defined(__x86_64__)
+ { SCMP_SYS(getsockname), 242 },
+ { SCMP_SYS(getpeername), 242 },
+- { SCMP_SYS(fdatasync), 242 },
+- { SCMP_SYS(close), 242 }
++ { SCMP_SYS(accept4), 242 },
++ { SCMP_SYS(newfstatat), 241 },
++ { SCMP_SYS(shutdown), 241 },
++ { SCMP_SYS(getsockopt), 241 },
++ { SCMP_SYS(semctl), 241 },
++ { SCMP_SYS(semop), 241 },
++ { SCMP_SYS(semtimedop), 241 },
++ { SCMP_SYS(epoll_ctl_old), 241 },
++ { SCMP_SYS(epoll_wait_old), 241 },
++#endif
++ { SCMP_SYS(epoll_pwait), 241 },
++ { SCMP_SYS(epoll_create1), 241 },
++ { SCMP_SYS(ppoll), 241 },
++ { SCMP_SYS(creat), 241 },
++ { SCMP_SYS(link), 241 },
++ { SCMP_SYS(getpid), 241 },
++ { SCMP_SYS(getppid), 241 },
++ { SCMP_SYS(getpgrp), 241 },
++ { SCMP_SYS(getpgid), 241 },
++ { SCMP_SYS(getsid), 241 },
++ { SCMP_SYS(getdents64), 241 },
++ { SCMP_SYS(getresuid), 241 },
++ { SCMP_SYS(getresgid), 241 },
++ { SCMP_SYS(getgroups), 241 },
++#if defined(__i386__)
++ { SCMP_SYS(getresuid32), 241 },
++ { SCMP_SYS(getresgid32), 241 },
++ { SCMP_SYS(getgroups32), 241 },
++ { SCMP_SYS(signal), 241 },
++ { SCMP_SYS(sigaction), 241 },
++ { SCMP_SYS(sigsuspend), 241 },
++ { SCMP_SYS(sigpending), 241 },
++ { SCMP_SYS(truncate64), 241 },
++ { SCMP_SYS(ftruncate64), 241 },
++ { SCMP_SYS(fchown32), 241 },
++ { SCMP_SYS(chown32), 241 },
++ { SCMP_SYS(lchown32), 241 },
++ { SCMP_SYS(statfs64), 241 },
++ { SCMP_SYS(fstatfs64), 241 },
++ { SCMP_SYS(fstatat64), 241 },
++ { SCMP_SYS(lstat64), 241 },
++ { SCMP_SYS(sendfile64), 241 },
++ { SCMP_SYS(ugetrlimit), 241 },
++#endif
++ { SCMP_SYS(alarm), 241 },
++ { SCMP_SYS(rt_sigsuspend), 241 },
++ { SCMP_SYS(rt_sigqueueinfo), 241 },
++ { SCMP_SYS(rt_tgsigqueueinfo), 241 },
++ { SCMP_SYS(sigaltstack), 241 },
++ { SCMP_SYS(signalfd4), 241 },
++ { SCMP_SYS(truncate), 241 },
++ { SCMP_SYS(fchown), 241 },
++ { SCMP_SYS(lchown), 241 },
++ { SCMP_SYS(fchownat), 241 },
++ { SCMP_SYS(fstatfs), 241 },
++ { SCMP_SYS(sendfile), 241 },
++ { SCMP_SYS(getitimer), 241 },
++ { SCMP_SYS(syncfs), 241 },
++ { SCMP_SYS(fsync), 241 },
++ { SCMP_SYS(fchdir), 241 },
++ { SCMP_SYS(flock), 241 },
++ { SCMP_SYS(msync), 241 },
++ { SCMP_SYS(sched_setparam), 241 },
++ { SCMP_SYS(sched_setscheduler), 241 },
++ { SCMP_SYS(sched_yield), 241 },
++ { SCMP_SYS(sched_rr_get_interval), 241 },
++ { SCMP_SYS(sched_setaffinity), 241 },
++ { SCMP_SYS(sched_getaffinity), 241 },
++ { SCMP_SYS(readahead), 241 },
++ { SCMP_SYS(timer_getoverrun), 241 },
++ { SCMP_SYS(unlinkat), 241 },
++ { SCMP_SYS(readlinkat), 241 },
++ { SCMP_SYS(faccessat), 241 },
++ { SCMP_SYS(get_robust_list), 241 },
++ { SCMP_SYS(splice), 241 },
++ { SCMP_SYS(vmsplice), 241 },
++ { SCMP_SYS(getcpu), 241 },
++ { SCMP_SYS(sendmmsg), 241 },
++ { SCMP_SYS(recvmmsg), 241 },
++ { SCMP_SYS(prlimit64), 241 },
++ { SCMP_SYS(waitid), 241 }
+ };
+
+ int seccomp_start(void)
+--
+1.8.0.2
+
diff --git a/qemu.spec b/qemu.spec
index b2eed16..7ee31d5 100644
--- a/qemu.spec
+++ b/qemu.spec
@@ -108,8 +108,8 @@
Summary: QEMU is a FAST! processor emulator
Name: qemu
-Version: 1.2.0
-Release: 25%{?dist}
+Version: 1.2.2
+Release: 1%{?dist}
# Epoch because we pushed a qemu-1.0 package. AIUI this can't ever be dropped
Epoch: 2
License: GPLv2+ and LGPLv2+ and BSD
@@ -125,9 +125,8 @@ ExclusiveArch: %{kvm_archs}
%define _smp_mflags %{nil}
%endif
-# This is generated from the git qemu-kvm-1.2.0 tag, replace with proper
-# upstream tarbal once available
-Source0: qemu-kvm-%{version}.tar.gz
+# There aren't qemu-kvm 1.2 maint releases yet, so we are carrying patches
+Source0: http://downloads.sourceforge.net/sourceforge/kvm/qemu-kvm-1.2.0.tar.gz
#Source0: http://downloads.sourceforge.net/sourceforge/kvm/qemu-kvm-%{version}.tar.gz
Source1: qemu.binfmt
@@ -149,8 +148,7 @@ Source9: ksmtuned.conf
Source10: qemu-guest-agent.service
Source11: 99-qemu-guest-agent.rules
Source12: bridge.conf
-
-# Patches queued for 1.2.1 stable
+# Stable 1.2.1 patches
Patch0001: 0001-target-xtensa-convert-host-errno-values-to-guest.patch
Patch0002: 0002-target-cris-Fix-buffer-overflow.patch
Patch0003: 0003-target-xtensa-fix-missing-errno-codes-for-mingw32.patch
@@ -394,100 +392,137 @@ Patch0240: 0240-fpu-softfloat.c-Return-correctly-signed-values-from-.patch
Patch0241: 0241-pseries-Don-t-test-for-MSR_PR-for-hypercalls-under-K.patch
Patch0242: 0242-update-VERSION-for-v1.2.1.patch
-# The infamous chardev flow control patches
-Patch0400: 0400-char-Split-out-tcp-socket-close-code-in-a-separate-f.patch
-Patch0401: 0401-char-Add-a-QemuChrHandlers-struct-to-initialise-char.patch
-Patch0402: 0402-iohandlers-Add-enable-disable_write_fd_handler-funct.patch
-Patch0403: 0403-char-Add-framework-for-a-write-unblocked-callback.patch
-Patch0404: 0404-char-Update-send_all-to-handle-nonblocking-chardev-w.patch
-Patch0405: 0405-char-Equip-the-unix-tcp-backend-to-handle-nonblockin.patch
-Patch0406: 0406-char-Throttle-when-host-connection-is-down.patch
-Patch0407: 0407-virtio-console-Enable-port-throttling-when-chardev-i.patch
-Patch0408: 0408-spice-qemu-char.c-add-throttling.patch
-Patch0409: 0409-spice-qemu-char.c-remove-intermediate-buffer.patch
-Patch0410: 0410-usb-redir-Add-flow-control-support.patch
-# 411 superceded by 414 which does the same thing but on top of 413 that is
-# going upstream.
-Patch0412: 0412-char-Disable-write-callback-if-throttled-chardev-is-.patch
-Patch0413: 0413-hw-virtio-serial-bus-post_load-send_event-when-vm-is.patch
-Patch0414: 0414-hw-virtio-serial-bus-replay-guest-open-on-destinatio.patch
-
-# Spice features from upstream master: seamless migration & dynamic monitors
-Patch0500: 0500-qxl-disallow-unknown-revisions.patch
-Patch0501: 0501-spice-make-number-of-surfaces-runtime-configurable.patch
-Patch0502: 0502-qxl-Add-set_client_capabilities-interface-to-QXLInte.patch
-Patch0503: 0503-Remove-ifdef-QXL_COMMAND_FLAG_COMPAT_16BPP.patch
-Patch0504: 0504-spice-switch-to-queue-for-vga-mode-updates.patch
-Patch0505: 0505-spice-split-qemu_spice_create_update.patch
-Patch0506: 0506-spice-add-screen-mirror.patch
-Patch0507: 0507-spice-send-updates-only-for-changed-screen-content.patch
-Patch0508: 0508-qxl-Ignore-set_client_capabilities-pre-post-migrate.patch
-Patch0509: 0509-qxl-add-trace-event-for-QXL_IO_LOG.patch
-Patch0510: 0510-hw-qxl-support-client-monitor-configuration-via-devi.patch
-Patch0511: 0511-qxl-always-update-displaysurface-on-resize.patch
+# Stable 1.2.2 patches
+Patch0301: 0301-configure-Fix-CONFIG_QEMU_HELPERDIR-generation.patch
+Patch0302: 0302-fix-CONFIG_QEMU_HELPERDIR-generation-again.patch
+Patch0303: 0303-ui-vnc-Only-report-use-TIGHT_PNG-encoding-if-enabled.patch
+Patch0304: 0304-vnc-fix-info-vnc-with-vnc-.-reverse-on.patch
+Patch0305: 0305-uhci-Raise-interrupt-when-requested-even-for-non-act.patch
+Patch0306: 0306-hw-qxl-qxl_dirty_surfaces-use-uintptr_t.patch
+Patch0307: 0307-qxl-always-update-displaysurface-on-resize.patch
+Patch0308: 0308-rtc-fix-overflow-in-mktimegm.patch
+Patch0309: 0309-hw-Fix-return-value-check-for-bdrv_read-bdrv_write.patch
+Patch0310: 0310-target-i386-Allow-tsc-frequency-to-be-larger-then-2..patch
+Patch0311: 0311-e1000-drop-check_rxov-always-treat-RX-ring-with-RDH-.patch
+Patch0312: 0312-memory-fix-rendering-of-a-region-obscured-by-another.patch
+Patch0313: 0313-s390x-fix-initrd-in-virtio-machine.patch
+Patch0314: 0314-PPC-Bamboo-Fix-memory-size-DT-property.patch
+Patch0315: 0315-target-sparc64-disable-VGA-cirrus.patch
+Patch0316: 0316-xhci-fix-usb-name-in-caps.patch
+Patch0317: 0317-tools-initialize-main-loop-before-block-layer.patch
+Patch0318: 0318-m68k-Return-semihosting-errno-values-correctly.patch
+Patch0319: 0319-nbd-fixes-to-read-only-handling.patch
+Patch0320: 0320-mips-malta-fix-CBUS-UART-interrupt-pin.patch
+Patch0321: 0321-target-mips-fix-wrong-microMIPS-opcode-encoding.patch
+Patch0322: 0322-tcg-arm-fix-TLB-access-in-qemu-ld-st-ops.patch
+Patch0323: 0323-tcg-arm-fix-cross-endian-qemu_st16.patch
+Patch0324: 0324-target-openrisc-remove-conflicting-definitions-from-.patch
+Patch0325: 0325-configure-avoid-compiler-warning-in-pipe2-detection.patch
+Patch0326: 0326-qcow2-Fix-refcount-table-size-calculation.patch
+Patch0327: 0327-tci-Fix-type-of-tci_read_label.patch
+Patch0328: 0328-block-Fix-regression-for-MinGW-assertion-caused-by-s.patch
+Patch0329: 0329-qom-dynamic_cast-of-NULL-is-always-NULL.patch
+Patch0330: 0330-hmp-do-not-crash-on-invalid-SCSI-hotplug.patch
+Patch0331: 0331-PPC-Fix-missing-TRACE-exception.patch
+Patch0332: 0332-qom-fix-refcount-of-non-heap-allocated-objects.patch
+Patch0333: 0333-qapi-handle-visitor-type_size-in-QapiDeallocVisitor.patch
+Patch0334: 0334-qapi-fix-qapi_dealloc_type_size-parameter-type.patch
+Patch0335: 0335-iscsi-fix-segfault-in-url-parsing.patch
+Patch0336: 0336-iscsi-fix-deadlock-during-login.patch
+Patch0337: 0337-iscsi-do-not-assume-device-is-zero-initialized.patch
+Patch0338: 0338-virtio-scsi-Fix-some-endian-bugs-with-virtio-scsi.patch
+Patch0339: 0339-virtio-scsi-Fix-subtle-guest-endian-bug.patch
+Patch0340: 0340-qxl-reload-memslots-after-migration-when-qxl-is-in-U.patch
+Patch0341: 0341-usb-fail-usbdevice_create-when-there-is-no-USB-bus.patch
+Patch0342: 0342-stream-fix-ratelimit_set_speed.patch
+Patch0343: 0343-e1000-Discard-packets-that-are-too-long-if-SBP-and-L.patch
+
+# chardev flow control series
+Patch0401: 0401-update-VERSION-for-v1.2.2.patch
+Patch0402: 0402-char-Split-out-tcp-socket-close-code-in-a-separate-f.patch
+Patch0403: 0403-char-Add-a-QemuChrHandlers-struct-to-initialise-char.patch
+Patch0404: 0404-iohandlers-Add-enable-disable_write_fd_handler-funct.patch
+Patch0405: 0405-char-Add-framework-for-a-write-unblocked-callback.patch
+Patch0406: 0406-char-Update-send_all-to-handle-nonblocking-chardev-w.patch
+Patch0407: 0407-char-Equip-the-unix-tcp-backend-to-handle-nonblockin.patch
+Patch0408: 0408-char-Throttle-when-host-connection-is-down.patch
+Patch0409: 0409-virtio-console-Enable-port-throttling-when-chardev-i.patch
+Patch0410: 0410-spice-qemu-char.c-add-throttling.patch
+Patch0411: 0411-spice-qemu-char.c-remove-intermediate-buffer.patch
+Patch0412: 0412-usb-redir-Add-flow-control-support.patch
+Patch0413: 0413-virtio-serial-bus-replay-guest_open-on-migration.patch
+Patch0414: 0414-char-Disable-write-callback-if-throttled-chardev-is-.patch
+
+# spice seamless migration & dynamic monitors from upstream master
+Patch0501: 0501-qxl-disallow-unknown-revisions.patch
+Patch0502: 0502-spice-make-number-of-surfaces-runtime-configurable.patch
+Patch0503: 0503-qxl-Add-set_client_capabilities-interface-to-QXLInte.patch
+Patch0504: 0504-Remove-ifdef-QXL_COMMAND_FLAG_COMPAT_16BPP.patch
+Patch0505: 0505-spice-switch-to-queue-for-vga-mode-updates.patch
+Patch0506: 0506-spice-split-qemu_spice_create_update.patch
+Patch0507: 0507-spice-add-screen-mirror.patch
+Patch0508: 0508-spice-send-updates-only-for-changed-screen-content.patch
+Patch0509: 0509-qxl-Ignore-set_client_capabilities-pre-post-migrate.patch
+Patch0510: 0510-qxl-add-trace-event-for-QXL_IO_LOG.patch
+Patch0511: 0511-hw-qxl-support-client-monitor-configuration-via-devi.patch
Patch0512: 0512-qxl-update_area_io-cleanup-invalid-parameters-handli.patch
Patch0513: 0513-qxl-fix-range-check-for-rev3-io-commands.patch
-Patch0514: 0514-hw-qxl-exit-on-failure-to-register-qxl-interface.patch
-Patch0515: 0515-hw-qxl-fix-condition-for-exiting-guest_bug.patch
-Patch0516: 0516-hw-qxl-qxl_dirty_surfaces-use-uintptr_t.patch
-Patch0517: 0517-spice-raise-requirement-to-0.12.patch
-Patch0518: 0518-qxl-set-default-revision-to-4.patch
-
-# usb-redir live-migration and misc bits, will be in before 1.3.0
-Patch0600: 0600-usb-redir-Convert-to-new-libusbredirparser-0.5-API.patch
-Patch0601: 0601-usb-redir-Set-ep-max_packet_size-if-available.patch
-Patch0602: 0602-usb-redir-Add-a-usbredir_reject_device-helper-functi.patch
-Patch0603: 0603-usb-redir-Ensure-our-peer-has-the-necessary-caps-whe.patch
-Patch0604: 0604-usb-redir-Enable-pipelining-for-bulk-endpoints.patch
-Patch0605: 0605-xhci-move-device-lookup-into-xhci_setup_packet.patch
-Patch0606: 0606-xhci-implement-mfindex.patch
-Patch0607: 0607-xhci-iso-xfer-support.patch
-Patch0608: 0608-xhci-trace-cc-codes-in-cleartext.patch
-Patch0609: 0609-xhci-add-trace_usb_xhci_ep_set_dequeue.patch
-Patch0610: 0610-xhci-update-register-layout.patch
-Patch0611: 0611-xhci-update-port-handling.patch
-Patch0612: 0612-usb3-superspeed-descriptors.patch
-Patch0613: 0613-usb3-superspeed-endpoint-companion.patch
-Patch0614: 0614-usb3-bos-decriptor.patch
-Patch0615: 0615-usb-storage-usb3-support.patch
-Patch0616: 0616-xhci-fix-cleanup-msi.patch
-Patch0617: 0617-xhci-rework-interrupt-handling.patch
-Patch0618: 0618-xhci-add-msix-support.patch
-Patch0619: 0619-xhci-move-register-update-into-xhci_intr_raise.patch
-Patch0620: 0620-xhci-add-XHCIInterrupter.patch
-Patch0621: 0621-xhci-prepare-xhci_runtime_-read-write-for-multiple-i.patch
-Patch0622: 0622-xhci-pick-target-interrupter.patch
-Patch0623: 0623-xhci-support-multiple-interrupters.patch
-Patch0624: 0624-xhci-kill-xhci_mem_-read-write-dispatcher-functions.patch
-Patch0625: 0625-usb-redir-Change-cancelled-packet-code-into-a-generi.patch
-Patch0626: 0626-usb-redir-Add-an-already_in_flight-packet-id-queue.patch
-Patch0627: 0627-usb-redir-Store-max_packet_size-in-endp_data.patch
-Patch0628: 0628-usb-redir-Add-support-for-migration.patch
-Patch0629: 0629-usb-redir-Add-chardev-open-close-debug-logging.patch
-Patch0630: 0630-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
-Patch0631: 0631-ehci-Fix-interrupt-packet-MULT-handling.patch
-Patch0632: 0632-usb-redir-Adjust-pkg-config-check-for-usbredirparser.patch
-Patch0633: 0633-usb-redir-Change-usbredir_open_chardev-into-usbredir.patch
-Patch0634: 0634-usb-redir-Don-t-make-migration-fail-in-none-seamless.patch
+# usb-redir live-migration and misc bits from upstream master
+Patch0601: 0601-usb-redir-Convert-to-new-libusbredirparser-0.5-API.patch
+Patch0602: 0602-usb-redir-Set-ep-max_packet_size-if-available.patch
+Patch0603: 0603-usb-redir-Add-a-usbredir_reject_device-helper-functi.patch
+Patch0604: 0604-usb-redir-Ensure-our-peer-has-the-necessary-caps-whe.patch
+Patch0605: 0605-usb-redir-Enable-pipelining-for-bulk-endpoints.patch
+Patch0606: 0606-xhci-move-device-lookup-into-xhci_setup_packet.patch
+Patch0607: 0607-xhci-implement-mfindex.patch
+Patch0608: 0608-xhci-iso-xfer-support.patch
+Patch0609: 0609-xhci-trace-cc-codes-in-cleartext.patch
+Patch0610: 0610-xhci-add-trace_usb_xhci_ep_set_dequeue.patch
+Patch0611: 0611-xhci-update-register-layout.patch
+Patch0612: 0612-xhci-update-port-handling.patch
+Patch0613: 0613-usb3-superspeed-descriptors.patch
+Patch0614: 0614-usb3-superspeed-endpoint-companion.patch
+Patch0615: 0615-usb3-bos-decriptor.patch
+Patch0616: 0616-usb-storage-usb3-support.patch
+Patch0617: 0617-xhci-fix-cleanup-msi.patch
+Patch0618: 0618-xhci-rework-interrupt-handling.patch
+Patch0619: 0619-xhci-add-msix-support.patch
+Patch0620: 0620-xhci-move-register-update-into-xhci_intr_raise.patch
+Patch0621: 0621-xhci-add-XHCIInterrupter.patch
+Patch0622: 0622-xhci-prepare-xhci_runtime_-read-write-for-multiple-i.patch
+Patch0623: 0623-xhci-pick-target-interrupter.patch
+Patch0624: 0624-xhci-support-multiple-interrupters.patch
+Patch0625: 0625-xhci-kill-xhci_mem_-read-write-dispatcher-functions.patch
+Patch0626: 0626-usb-redir-Change-cancelled-packet-code-into-a-generi.patch
+Patch0627: 0627-usb-redir-Add-an-already_in_flight-packet-id-queue.patch
+Patch0628: 0628-usb-redir-Store-max_packet_size-in-endp_data.patch
+Patch0629: 0629-usb-redir-Add-support-for-migration.patch
+Patch0630: 0630-usb-redir-Add-chardev-open-close-debug-logging.patch
+Patch0631: 0631-usb-redir-Revert-usb-redir-part-of-commit-93bfef4c.patch
+Patch0632: 0632-ehci-Fix-interrupt-packet-MULT-handling.patch
+Patch0633: 0633-usb-redir-Adjust-pkg-config-check-for-usbredirparser.patch
+Patch0634: 0634-usb-redir-Change-usbredir_open_chardev-into-usbredir.patch
+Patch0635: 0635-usb-redir-Don-t-make-migration-fail-in-none-seamless.patch
+
+# misc bug fixes
# Non upstream build fix, http://www.spinics.net/lists/kvm/msg80589.html
-Patch0800: 0800-mips-Fix-link-error-with-piix4_pm_init.patch
+Patch0701: 0701-mips-Fix-link-error-with-piix4_pm_init.patch
# Add ./configure --disable-kvm-options
# keep: Carrying locally until qemu-kvm is fully merged into qemu.git
-Patch0801: 0801-configure-Add-disable-kvm-options.patch
+Patch0702: 0702-configure-Add-disable-kvm-options.patch
# Fix loading arm initrd if kernel is very large (bz 862766)
-Patch802: 0802-arm_boot-Change-initrd-load-address-to-halfway-throu.patch
+Patch0703: 0703-arm_boot-Change-initrd-load-address-to-halfway-throu.patch
# Don't use reserved word 'function' in systemtap files (bz 870972)
-Patch803: 0803-dtrace-backend-add-function-to-reserved-words.patch
-# Drop assertion that was triggering when pausing guests w/ qxl (bz
-# 870972)
-Patch804: 0804-wip-hw-qxl-inject-interrupts-in-any-state.patch
-# 38f419f (configure: Fix CONFIG_QEMU_HELPERDIR generation, 2012-10-17)
-Patch805: 0805-configure-Fix-CONFIG_QEMU_HELPERDIR-generation.patch
+Patch0704: 0704-dtrace-backend-add-function-to-reserved-words.patch
+# Drop assertion that was triggering when pausing guests w/ qxl (bz 870972)
+Patch0705: 0705-wip-hw-qxl-inject-interrupts-in-any-state.patch
+# libcacard build fixes
+Patch0706: 0706-libcacard-fix-missing-symbols-in-libcacard.so.patch
+Patch0707: 0707-configure-move-vscclient-binary-under-libcacard.patch
+# Fix libvirt + seccomp combo (bz 855162)
+Patch0708: 0708-seccomp-adding-new-syscalls-bugzilla-855162.patch
-# libcacard
-Patch1001: 1001-libcacard-fix-missing-symbols-in-libcacard.so.patch
-Patch1002: 1002-configure-move-vscclient-binary-under-libcacard.patch
BuildRequires: SDL-devel
BuildRequires: zlib-devel
@@ -930,8 +965,10 @@ Requires: libcacard = %{epoch}:%{version}-%{release}
CAC emulation development files.
%prep
-%setup -q -n qemu-kvm-%{version}
+#%setup -q -n qemu-kvm-%{version}
+%setup -q -n qemu-kvm-1.2.0
+# Stable 1.2.1 patches
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@@ -1175,7 +1212,52 @@ CAC emulation development files.
%patch0241 -p1
%patch0242 -p1
-%patch0400 -p1
+# Stable 1.2.2 patches
+%patch0301 -p1
+%patch0302 -p1
+%patch0303 -p1
+%patch0304 -p1
+%patch0305 -p1
+%patch0306 -p1
+%patch0307 -p1
+%patch0308 -p1
+%patch0309 -p1
+%patch0310 -p1
+%patch0311 -p1
+%patch0312 -p1
+%patch0313 -p1
+%patch0314 -p1
+%patch0315 -p1
+%patch0316 -p1
+%patch0317 -p1
+%patch0318 -p1
+%patch0319 -p1
+%patch0320 -p1
+%patch0321 -p1
+%patch0322 -p1
+%patch0323 -p1
+%patch0324 -p1
+%patch0325 -p1
+%patch0326 -p1
+%patch0327 -p1
+%patch0328 -p1
+%patch0329 -p1
+%patch0330 -p1
+%patch0331 -p1
+%patch0332 -p1
+%patch0333 -p1
+%patch0334 -p1
+%patch0335 -p1
+%patch0336 -p1
+%patch0337 -p1
+%patch0338 -p1
+%patch0339 -p1
+%patch0340 -p1
+%patch0341 -p1
+%patch0342 -p1
+%patch0343 -p1
+
+# chardev flow control series
%patch0401 -p1
%patch0402 -p1
%patch0403 -p1
@@ -1186,12 +1268,12 @@ CAC emulation development files.
%patch0408 -p1
%patch0409 -p1
%patch0410 -p1
-# 411 superceded by 414
+%patch0411 -p1
%patch0412 -p1
%patch0413 -p1
%patch0414 -p1
-%patch0500 -p1
+# spice seamless migration & dynamic monitors from upstream master
%patch0501 -p1
%patch0502 -p1
%patch0503 -p1
@@ -1205,13 +1287,8 @@ CAC emulation development files.
%patch0511 -p1
%patch0512 -p1
%patch0513 -p1
-%patch0514 -p1
-%patch0515 -p1
-%patch0516 -p1
-%patch0517 -p1
-%patch0518 -p1
-%patch0600 -p1
+# usb-redir live-migration and misc bits from upstream master
%patch0601 -p1
%patch0602 -p1
%patch0603 -p1
@@ -1246,27 +1323,28 @@ CAC emulation development files.
%patch0632 -p1
%patch0633 -p1
%patch0634 -p1
+%patch0635 -p1
-%patch0800 -p1
-%patch0801 -p1
-%patch802 -p1
-%patch803 -p1
-%patch804 -p1
-%patch805 -p1
+# misc bug fixes
+%patch0701 -p1
+%patch0702 -p1
+%patch0703 -p1
+%patch0704 -p1
+%patch0705 -p1
+%patch0706 -p1
+%patch0707 -p1
+%patch0708 -p1
-# libcacard
-%patch1001 -p1
-%patch1002 -p1
%build
%if %{with kvmonly}
buildarch="%{kvm_target}-softmmu"
%else
-buildarch="i386-softmmu x86_64-softmmu alpha-softmmu arm-softmmu cris-softmmu \
- lm32-softmmu m68k-softmmu microblaze-softmmu microblazeel-softmmu \
- mips-softmmu mipsel-softmmu mips64-softmmu mips64el-softmmu \
- or32-softmmu ppc-softmmu ppcemb-softmmu ppc64-softmmu s390x-softmmu \
- sh4-softmmu sh4eb-softmmu sparc-softmmu sparc64-softmmu \
+ buildarch="i386-softmmu x86_64-softmmu alpha-softmmu arm-softmmu \
+ cris-softmmu lm32-softmmu m68k-softmmu microblaze-softmmu \
+ microblazeel-softmmu mips-softmmu mipsel-softmmu mips64-softmmu \
+ mips64el-softmmu or32-softmmu ppc-softmmu ppcemb-softmmu ppc64-softmmu \
+ s390x-softmmu sh4-softmmu sh4eb-softmmu sparc-softmmu sparc64-softmmu \
xtensa-softmmu xtensaeb-softmmu unicore32-softmmu \
i386-linux-user x86_64-linux-user alpha-linux-user arm-linux-user \
armeb-linux-user cris-linux-user m68k-linux-user \
@@ -1874,6 +1952,12 @@ fi
%{_libdir}/pkgconfig/libcacard.pc
%changelog
+* Sun Dec 16 2012 Cole Robinson <crobinso at redhat.com> - 2:1.2.2-1
+- Update to qemu 1.2.2 stable
+- Fix libvirt + seccomp combo (bz #855162)
+- Fix scsi hotplug crash (bz #879657)
+- Fix QOM refcount crash (bz #881486)
+
* Wed Nov 28 2012 Alon Levy <alevy at redhat.com> - 2:1.2.0-25
* Merge libcacard into qemu, since they both use the same sources now.
More information about the scm-commits
mailing list