)]}'
{
  "log": [
    {
      "commit": "2061735ff09f9d5e67c501a96227b470e7de69b1",
      "tree": "96422f38427bbc6f6f3badc78e03d0d5065eb396",
      "parents": [
        "996970236c00f244ed9518238fef480725a40ff2",
        "02fa60d10137ed2ef17534718d7467e0d2170142"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Thu Nov 21 17:18:40 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Thu Nov 21 17:18:40 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/bonzini/tags/for-upstream\u0027 into staging\n\n* x86 updates for Intel errata (myself, Eduardo)\n* the big ugly list of x86 VMX features, which was targeted for 5.0 but\ncaused a Libvirt regression (myself)\n\n# gpg: Signature made Thu 21 Nov 2019 15:35:13 GMT\n# gpg:                using RSA key BFFBD25F78C7AE83\n# gpg: Good signature from \"Paolo Bonzini \u003cbonzini@gnu.org\u003e\" [full]\n# gpg:                 aka \"Paolo Bonzini \u003cpbonzini@redhat.com\u003e\" [full]\n# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1\n#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83\n\n* remotes/bonzini/tags/for-upstream:\n  i386: Add -noTSX aliases for hle\u003doff, rtm\u003doff CPU models\n  i386: Add new versions of Skylake/Cascadelake/Icelake without TSX\n  target/i386: add support for MSR_IA32_TSX_CTRL\n  target/i386: add VMX features to named CPU models\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "02fa60d10137ed2ef17534718d7467e0d2170142",
      "tree": "ff315ad15fba6e51ea982285e28f85e6ae5a4757",
      "parents": [
        "9ab2237f1979f31de228b2a73b56925dbde938d1"
      ],
      "author": {
        "name": "Eduardo Habkost",
        "email": "ehabkost@redhat.com",
        "time": "Wed Nov 20 13:49:12 2019 -0300"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Thu Nov 21 16:35:05 2019 +0100"
      },
      "message": "i386: Add -noTSX aliases for hle\u003doff, rtm\u003doff CPU models\n\nWe have been trying to avoid adding new aliases for CPU model\nversions, but in the case of changes in defaults introduced by\nthe TAA mitigation patches, the aliases might help avoid user\nconfusion when applying host software updates.\n\nSigned-off-by: Eduardo Habkost \u003cehabkost@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "9ab2237f1979f31de228b2a73b56925dbde938d1",
      "tree": "1565174cc2b327093fa6626b50f4c4e6b5d8793a",
      "parents": [
        "2a9758c51e2c2d13fc3845c3d603c11df98b8823"
      ],
      "author": {
        "name": "Eduardo Habkost",
        "email": "ehabkost@redhat.com",
        "time": "Wed Nov 20 13:49:11 2019 -0300"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Thu Nov 21 16:35:05 2019 +0100"
      },
      "message": "i386: Add new versions of Skylake/Cascadelake/Icelake without TSX\n\nOne of the mitigation methods for TAA[1] is to disable TSX\nsupport on the host system.  Linux added a mechanism to disable\nTSX globally through the kernel command line, and many Linux\ndistributions now default to tsx\u003doff.  This makes existing CPU\nmodels that have HLE and RTM enabled not usable anymore.\n\nAdd new versions of all CPU models that have the HLE and RTM\nfeatures enabled, that can be used when TSX is disabled in the\nhost system.\n\nReferences:\n\n[1] TAA, TSX asynchronous Abort:\n    https://software.intel.com/security-software-guidance/insights/deep-dive-intel-transactional-synchronization-extensions-intel-tsx-asynchronous-abort\n    https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/tsx_async_abort.html\n\nSigned-off-by: Eduardo Habkost \u003cehabkost@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "2a9758c51e2c2d13fc3845c3d603c11df98b8823",
      "tree": "4cb8e2cf0dc975329d1447552b57c8c3fc4e9160",
      "parents": [
        "0723cc8a5558c94388db75ae1f4991314914edd3"
      ],
      "author": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Wed Nov 20 13:19:22 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Thu Nov 21 16:35:05 2019 +0100"
      },
      "message": "target/i386: add support for MSR_IA32_TSX_CTRL\n\nThe MSR_IA32_TSX_CTRL MSR can be used to hide TSX (also known as the\nTrusty Side-channel Extension).  By virtualizing the MSR, KVM guests\ncan disable TSX and avoid paying the price of mitigating TSX-based\nattacks on microarchitectural side channels.\n\nReviewed-by: Eduardo Habkost \u003cehabkost@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "0723cc8a5558c94388db75ae1f4991314914edd3",
      "tree": "fccf5158b25bdac7e9c945e4410df6f4039e3090",
      "parents": [
        "39e2821077e6dcf788b7c2a9ef50970ec7995437"
      ],
      "author": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Wed Nov 20 18:37:53 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Thu Nov 21 16:33:53 2019 +0100"
      },
      "message": "target/i386: add VMX features to named CPU models\n\nThis allows using \"-cpu Haswell,+vmx\", which we did not really want to\nsupport in QEMU but was produced by Libvirt when using the \"host-model\"\nCPU model.  Without this patch, no VMX feature is _actually_ supported\n(only the basic instruction set extensions are) and KVM fails to load\nin the guest.\n\nThis was produced from the output of scripts/kvm/vmxcap using the following\nvery ugly Python script:\n\n    bits \u003d {\n            \u0027INS/OUTS instruction information\u0027: [\u0027FEAT_VMX_BASIC\u0027, \u0027MSR_VMX_BASIC_INS_OUTS\u0027],\n            \u0027IA32_VMX_TRUE_*_CTLS support\u0027: [\u0027FEAT_VMX_BASIC\u0027, \u0027MSR_VMX_BASIC_TRUE_CTLS\u0027],\n            \u0027External interrupt exiting\u0027: [\u0027FEAT_VMX_PINBASED_CTLS\u0027, \u0027VMX_PIN_BASED_EXT_INTR_MASK\u0027],\n            \u0027NMI exiting\u0027: [\u0027FEAT_VMX_PINBASED_CTLS\u0027, \u0027VMX_PIN_BASED_NMI_EXITING\u0027],\n            \u0027Virtual NMIs\u0027: [\u0027FEAT_VMX_PINBASED_CTLS\u0027, \u0027VMX_PIN_BASED_VIRTUAL_NMIS\u0027],\n            \u0027Activate VMX-preemption timer\u0027: [\u0027FEAT_VMX_PINBASED_CTLS\u0027, \u0027VMX_PIN_BASED_VMX_PREEMPTION_TIMER\u0027],\n            \u0027Process posted interrupts\u0027: [\u0027FEAT_VMX_PINBASED_CTLS\u0027, \u0027VMX_PIN_BASED_POSTED_INTR\u0027],\n            \u0027Interrupt window exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_VIRTUAL_INTR_PENDING\u0027],\n            \u0027Use TSC offsetting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_USE_TSC_OFFSETING\u0027],\n            \u0027HLT exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_HLT_EXITING\u0027],\n            \u0027INVLPG exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_INVLPG_EXITING\u0027],\n            \u0027MWAIT exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_MWAIT_EXITING\u0027],\n            \u0027RDPMC exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_RDPMC_EXITING\u0027],\n            \u0027RDTSC exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_RDTSC_EXITING\u0027],\n            \u0027CR3-load exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_CR3_LOAD_EXITING\u0027],\n            \u0027CR3-store exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_CR3_STORE_EXITING\u0027],\n            \u0027CR8-load exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_CR8_LOAD_EXITING\u0027],\n            \u0027CR8-store exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_CR8_STORE_EXITING\u0027],\n            \u0027Use TPR shadow\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_TPR_SHADOW\u0027],\n            \u0027NMI-window exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_VIRTUAL_NMI_PENDING\u0027],\n            \u0027MOV-DR exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_MOV_DR_EXITING\u0027],\n            \u0027Unconditional I/O exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_UNCOND_IO_EXITING\u0027],\n            \u0027Use I/O bitmaps\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_USE_IO_BITMAPS\u0027],\n            \u0027Monitor trap flag\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_MONITOR_TRAP_FLAG\u0027],\n            \u0027Use MSR bitmaps\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_USE_MSR_BITMAPS\u0027],\n            \u0027MONITOR exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_MONITOR_EXITING\u0027],\n            \u0027PAUSE exiting\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_PAUSE_EXITING\u0027],\n            \u0027Activate secondary control\u0027: [\u0027FEAT_VMX_PROCBASED_CTLS\u0027, \u0027VMX_CPU_BASED_ACTIVATE_SECONDARY_CONTROLS\u0027],\n            \u0027Virtualize APIC accesses\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES\u0027],\n            \u0027Enable EPT\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_ENABLE_EPT\u0027],\n            \u0027Descriptor-table exiting\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_DESC\u0027],\n            \u0027Enable RDTSCP\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_RDTSCP\u0027],\n            \u0027Virtualize x2APIC mode\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_VIRTUALIZE_X2APIC_MODE\u0027],\n            \u0027Enable VPID\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_ENABLE_VPID\u0027],\n            \u0027WBINVD exiting\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_WBINVD_EXITING\u0027],\n            \u0027Unrestricted guest\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_UNRESTRICTED_GUEST\u0027],\n            \u0027APIC register emulation\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_APIC_REGISTER_VIRT\u0027],\n            \u0027Virtual interrupt delivery\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY\u0027],\n            \u0027PAUSE-loop exiting\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_PAUSE_LOOP_EXITING\u0027],\n            \u0027RDRAND exiting\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_RDRAND_EXITING\u0027],\n            \u0027Enable INVPCID\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_ENABLE_INVPCID\u0027],\n            \u0027Enable VM functions\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_ENABLE_VMFUNC\u0027],\n            \u0027VMCS shadowing\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_SHADOW_VMCS\u0027],\n            \u0027RDSEED exiting\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_RDSEED_EXITING\u0027],\n            \u0027Enable PML\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_ENABLE_PML\u0027],\n            \u0027Enable XSAVES/XRSTORS\u0027: [\u0027FEAT_VMX_SECONDARY_CTLS\u0027, \u0027VMX_SECONDARY_EXEC_XSAVES\u0027],\n            \u0027Save debug controls\u0027: [\u0027FEAT_VMX_EXIT_CTLS\u0027, \u0027VMX_VM_EXIT_SAVE_DEBUG_CONTROLS\u0027],\n            \u0027Load IA32_PERF_GLOBAL_CTRL\u0027: [\u0027FEAT_VMX_EXIT_CTLS\u0027, \u0027VMX_VM_EXIT_LOAD_IA32_PERF_GLOBAL_CTRL\u0027],\n            \u0027Acknowledge interrupt on exit\u0027: [\u0027FEAT_VMX_EXIT_CTLS\u0027, \u0027VMX_VM_EXIT_ACK_INTR_ON_EXIT\u0027],\n            \u0027Save IA32_PAT\u0027: [\u0027FEAT_VMX_EXIT_CTLS\u0027, \u0027VMX_VM_EXIT_SAVE_IA32_PAT\u0027],\n            \u0027Load IA32_PAT\u0027: [\u0027FEAT_VMX_EXIT_CTLS\u0027, \u0027VMX_VM_EXIT_LOAD_IA32_PAT\u0027],\n            \u0027Save IA32_EFER\u0027: [\u0027FEAT_VMX_EXIT_CTLS\u0027, \u0027VMX_VM_EXIT_SAVE_IA32_EFER\u0027],\n            \u0027Load IA32_EFER\u0027: [\u0027FEAT_VMX_EXIT_CTLS\u0027, \u0027VMX_VM_EXIT_LOAD_IA32_EFER\u0027],\n            \u0027Save VMX-preemption timer value\u0027: [\u0027FEAT_VMX_EXIT_CTLS\u0027, \u0027VMX_VM_EXIT_SAVE_VMX_PREEMPTION_TIMER\u0027],\n            \u0027Clear IA32_BNDCFGS\u0027: [\u0027FEAT_VMX_EXIT_CTLS\u0027, \u0027VMX_VM_EXIT_CLEAR_BNDCFGS\u0027],\n            \u0027Load debug controls\u0027: [\u0027FEAT_VMX_ENTRY_CTLS\u0027, \u0027VMX_VM_ENTRY_LOAD_DEBUG_CONTROLS\u0027],\n            \u0027IA-32e mode guest\u0027: [\u0027FEAT_VMX_ENTRY_CTLS\u0027, \u0027VMX_VM_ENTRY_IA32E_MODE\u0027],\n            \u0027Load IA32_PERF_GLOBAL_CTRL\u0027: [\u0027FEAT_VMX_ENTRY_CTLS\u0027, \u0027VMX_VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL\u0027],\n            \u0027Load IA32_PAT\u0027: [\u0027FEAT_VMX_ENTRY_CTLS\u0027, \u0027VMX_VM_ENTRY_LOAD_IA32_PAT\u0027],\n            \u0027Load IA32_EFER\u0027: [\u0027FEAT_VMX_ENTRY_CTLS\u0027, \u0027VMX_VM_ENTRY_LOAD_IA32_EFER\u0027],\n            \u0027Load IA32_BNDCFGS\u0027: [\u0027FEAT_VMX_ENTRY_CTLS\u0027, \u0027VMX_VM_ENTRY_LOAD_BNDCFGS\u0027],\n            \u0027Store EFER.LMA into IA-32e mode guest control\u0027: [\u0027FEAT_VMX_MISC\u0027, \u0027MSR_VMX_MISC_STORE_LMA\u0027],\n            \u0027HLT activity state\u0027: [\u0027FEAT_VMX_MISC\u0027, \u0027MSR_VMX_MISC_ACTIVITY_HLT\u0027],\n            \u0027VMWRITE to VM-exit information fields\u0027: [\u0027FEAT_VMX_MISC\u0027, \u0027MSR_VMX_MISC_VMWRITE_VMEXIT\u0027],\n            \u0027Inject event with insn length\u003d0\u0027: [\u0027FEAT_VMX_MISC\u0027, \u0027MSR_VMX_MISC_ZERO_LEN_INJECT\u0027],\n            \u0027Execute-only EPT translations\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_EXECONLY\u0027],\n            \u0027Page-walk length 4\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_PAGE_WALK_LENGTH_4\u0027],\n            \u0027Paging-structure memory type WB\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_WB\u0027],\n            \u00272MB EPT pages\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_2MB | MSR_VMX_EPT_1GB\u0027],\n            \u0027INVEPT supported\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_INVEPT\u0027],\n            \u0027EPT accessed and dirty flags\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_AD_BITS\u0027],\n            \u0027Single-context INVEPT\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_INVEPT_SINGLE_CONTEXT\u0027],\n            \u0027All-context INVEPT\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_INVEPT_ALL_CONTEXT\u0027],\n            \u0027INVVPID supported\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_INVVPID\u0027],\n            \u0027Individual-address INVVPID\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_INVVPID_SINGLE_ADDR\u0027],\n            \u0027Single-context INVVPID\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_INVVPID_SINGLE_CONTEXT\u0027],\n            \u0027All-context INVVPID\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_INVVPID_ALL_CONTEXT\u0027],\n            \u0027Single-context-retaining-globals INVVPID\u0027: [\u0027FEAT_VMX_EPT_VPID_CAPS\u0027, \u0027MSR_VMX_EPT_INVVPID_SINGLE_CONTEXT_NOGLOBALS\u0027],\n            \u0027EPTP Switching\u0027: [\u0027FEAT_VMX_VMFUNC\u0027, \u0027MSR_VMX_VMFUNC_EPT_SWITCHING\u0027]\n    }\n\n    import sys\n    import textwrap\n\n    out \u003d {}\n    for l in sys.stdin.readlines():\n        l \u003d l.rstrip()\n        if l.endswith(\u0027!!\u0027):\n            l \u003d l[:-2].rstrip()\n        if l.startswith(\u0027    \u0027) and (l.endswith(\u0027default\u0027) or l.endswith(\u0027yes\u0027)):\n            l \u003d l[4:]\n            for key, value in bits.items():\n                if l.startswith(key):\n                    ctl, bit \u003d value\n                    if ctl in out:\n                        out[ctl] \u003d out[ctl] + \u0027 | \u0027\n                    else:\n                        out[ctl] \u003d \u0027    [%s] \u003d \u0027 % ctl\n                    out[ctl] \u003d out[ctl] + bit\n\n    for x in sorted(out.keys()):\n        print(\"\\n         \".join(textwrap.wrap(out[x] + \",\")))\n\nNote that the script has a bug in that some keys apply to both VM entry\nand VM exit controls (\"load IA32_PERF_GLOBAL_CTRL\", \"load IA32_EFER\",\n\"load IA32_PAT\".  Those have to be fixed by hand.\n\nReviewed-by: Eduardo Habkost \u003cehabkost@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "996970236c00f244ed9518238fef480725a40ff2",
      "tree": "43d1015444a71caa6b2efc4c77de4fa43a438cb9",
      "parents": [
        "7b5425318a27d0a41c1008a36c502719255b8f5e",
        "c55c974486b0dadf97fe47e2e789d5dba9b77138"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Thu Nov 21 12:46:07 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Thu Nov 21 12:46:07 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/kraxel/tags/fixes-20191121-pull-request\u0027 into staging\n\ntwo audio fixes and one gtk message fix.\n\n# gpg: Signature made Thu 21 Nov 2019 10:04:32 GMT\n# gpg:                using RSA key 4CB6D8EED3E87138\n# gpg: Good signature from \"Gerd Hoffmann (work) \u003ckraxel@redhat.com\u003e\" [full]\n# gpg:                 aka \"Gerd Hoffmann \u003cgerd@kraxel.org\u003e\" [full]\n# gpg:                 aka \"Gerd Hoffmann (private) \u003ckraxel@gmail.com\u003e\" [full]\n# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138\n\n* remotes/kraxel/tags/fixes-20191121-pull-request:\n  ui/gtk: fix gettext message\u0027s charset.\n  display: xlnx_dp: Provide sufficient bytes for silent audio channel\n  audio: fix audio recording\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "7b5425318a27d0a41c1008a36c502719255b8f5e",
      "tree": "27b039c4cc7f3eb12167f8db6823c830665b877c",
      "parents": [
        "bf12043acc6458e7b71d19a9f030b31ec22fba12",
        "22c30b2d20e828edadbd992c1d4c4bfd0f3433ba"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Thu Nov 21 11:27:33 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Thu Nov 21 11:27:33 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/stsquad/tags/pull-rc3-testing-and-tcg-201119-1\u0027 into staging\n\nA few test and doc fixes:\n\n  - tweak DEBUG behaviour for vm-test-build\n  - rename and update plug docs for versioning\n  - slim down MAIN_SOFTMMU_TARGETS\n\n# gpg: Signature made Wed 20 Nov 2019 10:56:23 GMT\n# gpg:                using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44\n# gpg: Good signature from \"Alex Bennée (Master Work Key) \u003calex.bennee@linaro.org\u003e\" [full]\n# Primary key fingerprint: 6685 AE99 E751 67BC AFC8  DF35 FBD0 DB09 5A9E 2A44\n\n* remotes/stsquad/tags/pull-rc3-testing-and-tcg-201119-1:\n  tests/tcg: modify multiarch tests to work with clang\n  .travis.yml: drop 32 bit systems from MAIN_SOFTMMU_TARGETS\n  docs/devel: update tcg-plugins.rst with API versioning details\n  docs/devel: rename plugins.rst to tcg-plugins.rst\n  tests/vm: make --interactive (and therefore DEBUG\u003d1) unconditional\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "c55c974486b0dadf97fe47e2e789d5dba9b77138",
      "tree": "31af688922aa51c865cd32a1691a4eebb6dc4b97",
      "parents": [
        "0f6ed883e74f3fd9eb3eedfe0e61be66e4834fc9"
      ],
      "author": {
        "name": "yanminhui",
        "email": "yanminhui163@163.com",
        "time": "Sat Nov 16 11:10:37 2019 +0800"
      },
      "committer": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Thu Nov 21 09:42:30 2019 +0100"
      },
      "message": "ui/gtk: fix gettext message\u0027s charset.\n\nSigned-off-by: yanminhui \u003cyanminhui163@163.com\u003e\nMessage-Id: \u003c20191116031037.1207-1-yanminhui163@163.com\u003e\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\n"
    },
    {
      "commit": "0f6ed883e74f3fd9eb3eedfe0e61be66e4834fc9",
      "tree": "63f6f26dff2643b2f31a3759d1d4f20943262737",
      "parents": [
        "7ffc90f3ae3d84562a4bda63cde961000b335542"
      ],
      "author": {
        "name": "Sai Pavan Boddu",
        "email": "sai.pavan.boddu@xilinx.com",
        "time": "Fri Nov 15 21:26:48 2019 +0530"
      },
      "committer": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Thu Nov 21 07:12:28 2019 +0100"
      },
      "message": "display: xlnx_dp: Provide sufficient bytes for silent audio channel\n\nFill the audio channel with required number of bytes to cover the\nelapsed time. This prevents rate control reset, and avoids debug prints\nlike below\n\nlog:\n\tResetting rate control (65692 samples)\n\t...\n\tResetting rate control (65721 samples)\n\t...\n\nSigned-off-by: Sai Pavan Boddu \u003csai.pavan.boddu@xilinx.com\u003e\nReviewed-by: Alistair Francis \u003calistair.francis@wdc.com\u003e\nMessage-id: 1573833408-2388-1-git-send-email-sai.pavan.boddu@xilinx.com\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\n"
    },
    {
      "commit": "bf12043acc6458e7b71d19a9f030b31ec22fba12",
      "tree": "e86dfe8d5d45f37619d9284cc5abd37140404823",
      "parents": [
        "39e2821077e6dcf788b7c2a9ef50970ec7995437",
        "6c77aa909e0eec6531e2398d0e9e60ec6a9339c6"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Wed Nov 20 11:01:20 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Wed Nov 20 11:01:20 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/mst/tags/for_upstream\u0027 into staging\n\nvirtio, acpi: fixes\n\nA couple of bugfixes.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\n\n# gpg: Signature made Wed 20 Nov 2019 09:57:44 GMT\n# gpg:                using RSA key 5D09FD0871C8F85B94CA8A0D281F0DB8D28D5469\n# gpg:                issuer \"mst@redhat.com\"\n# gpg: Good signature from \"Michael S. Tsirkin \u003cmst@kernel.org\u003e\" [full]\n# gpg:                 aka \"Michael S. Tsirkin \u003cmst@redhat.com\u003e\" [full]\n# Primary key fingerprint: 0270 606B 6F3C DF3D 0B17  0970 C350 3912 AFBE 8E67\n#      Subkey fingerprint: 5D09 FD08 71C8 F85B 94CA  8A0D 281F 0DB8 D28D 5469\n\n* remotes/mst/tags/for_upstream:\n  tests: acpi: always retain dumped ACPI tables in case of error\n  vhost-user-input: use free(elem) instead of g_free(elem)\n  libvhost-user: Zero memory allocated for VuVirtqInflightDesc\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "22c30b2d20e828edadbd992c1d4c4bfd0f3433ba",
      "tree": "c2030ed5d64fd80067203d4e3fe87fd582dba55d",
      "parents": [
        "6e98888041db350b9dbd347d885368e3802227d2"
      ],
      "author": {
        "name": "Taylor Simpson",
        "email": "tsimpson@quicinc.com",
        "time": "Sun Nov 17 17:14:25 2019 -0600"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Wed Nov 20 10:53:31 2019 +0000"
      },
      "message": "tests/tcg: modify multiarch tests to work with clang\n\nSigned-off-by: Taylor Simpson \u003ctsimpson@quicinc.com\u003e\nReviewed-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nReviewed-by: Thomas Huth \u003cthuth@redhat.com\u003e\nMessage-Id: \u003c1574032465-12186-1-git-send-email-tsimpson@quicinc.com\u003e\n[AJB: tweak header line]\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\n"
    },
    {
      "commit": "6e98888041db350b9dbd347d885368e3802227d2",
      "tree": "418e3041a3b2efc05c7db8bcc2a79eb919ab75df",
      "parents": [
        "5c6ecbdc83daef751da3c925be3bfb95ef480842"
      ],
      "author": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 18:31:19 2019 +0000"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Wed Nov 20 10:53:31 2019 +0000"
      },
      "message": ".travis.yml: drop 32 bit systems from MAIN_SOFTMMU_TARGETS\n\nThe older clangs are still struggling to build and run everything\nwithing the 50 minute timeout so lets lighten the load a bit more. We\nstill have coverage for GCC and hopefully no obscure 32 bit guest only\nbreakages slip through the cracks.\n\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Thomas Huth \u003cthuth@redhat.com\u003e\n"
    },
    {
      "commit": "5c6ecbdc83daef751da3c925be3bfb95ef480842",
      "tree": "843fc102671120d6a0f9f9c14d52f7cd4599d7e2",
      "parents": [
        "8ea6abf0d06c8a86af93bfc8135301aae1480b1f"
      ],
      "author": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 20:16:33 2019 +0000"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Wed Nov 20 10:53:31 2019 +0000"
      },
      "message": "docs/devel: update tcg-plugins.rst with API versioning details\n\nWhile we are at it fix up the quoted code sections with the inline ::\napproach.\n\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Robert Foley \u003crobert.foley@linaro.org\u003e\n"
    },
    {
      "commit": "8ea6abf0d06c8a86af93bfc8135301aae1480b1f",
      "tree": "de24bab08b47ec4b38ba38228922b83368348e0a",
      "parents": [
        "bcc388df07b8ac69660c2ad0200d4f242513e642"
      ],
      "author": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 16:28:53 2019 +0000"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Wed Nov 20 10:53:31 2019 +0000"
      },
      "message": "docs/devel: rename plugins.rst to tcg-plugins.rst\n\nThis makes it a bit clearer what this is about.\n\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\n"
    },
    {
      "commit": "bcc388df07b8ac69660c2ad0200d4f242513e642",
      "tree": "4d5b3d9b776e78412b53293343271f20cb7bcbba",
      "parents": [
        "39e2821077e6dcf788b7c2a9ef50970ec7995437"
      ],
      "author": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 15:08:15 2019 +0000"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Wed Nov 20 10:53:31 2019 +0000"
      },
      "message": "tests/vm: make --interactive (and therefore DEBUG\u003d1) unconditional\n\nWhile the concept of only dropping to ssh if a test fails is nice it\nis more useful for this to be unconditional. You usually just want to\nget the build up and running and then noodle around debugging or\nattempting to replicate.\n\nCc: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Thomas Huth \u003cthuth@redhat.com\u003e\n"
    },
    {
      "commit": "6c77aa909e0eec6531e2398d0e9e60ec6a9339c6",
      "tree": "e86dfe8d5d45f37619d9284cc5abd37140404823",
      "parents": [
        "ec244b17391f8f9a16e91905a91a52dd77d3759f"
      ],
      "author": {
        "name": "Igor Mammedov",
        "email": "imammedo@redhat.com",
        "time": "Wed Nov 20 10:02:40 2019 +0100"
      },
      "committer": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Wed Nov 20 04:57:22 2019 -0500"
      },
      "message": "tests: acpi: always retain dumped ACPI tables in case of error\n\nIf IASL wasn\u0027t able to parse expected file, test will just\nprint warning\n  \"Warning! iasl couldn\u0027t parse the expected aml\\n\"\nand remove temporary table dumped from guest.\n\nTypically expected tables are always valid, with an exception\nwhen patchset introduces new tables.\nMake sure dumped tables are retained even if expected files\nare not valid, so one could have a chance to manualy check new\ntables.\n\nSigned-off-by: Igor Mammedov \u003cimammedo@redhat.com\u003e\nMessage-Id: \u003c1574240560-12538-1-git-send-email-imammedo@redhat.com\u003e\nReviewed-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\n"
    },
    {
      "commit": "ec244b17391f8f9a16e91905a91a52dd77d3759f",
      "tree": "958b5a1ffbb2f61ef2f1a638f013289a0375dcf8",
      "parents": [
        "d9b3ade54ea7465093578cd0f792437198b572ac"
      ],
      "author": {
        "name": "Stefan Hajnoczi",
        "email": "stefanha@redhat.com",
        "time": "Tue Nov 19 11:16:26 2019 +0000"
      },
      "committer": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Wed Nov 20 04:57:22 2019 -0500"
      },
      "message": "vhost-user-input: use free(elem) instead of g_free(elem)\n\nThe virtqueue element returned by vu_queue_pop() is allocated using\nmalloc(3) by virtqueue_alloc_element().  Use the matching free(3)\nfunction instead of glib\u0027s g_free().\n\nSigned-off-by: Stefan Hajnoczi \u003cstefanha@redhat.com\u003e\nMessage-Id: \u003c20191119111626.112206-1-stefanha@redhat.com\u003e\nReviewed-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\n"
    },
    {
      "commit": "d9b3ade54ea7465093578cd0f792437198b572ac",
      "tree": "b9ceb04c020b48afe7336b5a01870173170f9727",
      "parents": [
        "39e2821077e6dcf788b7c2a9ef50970ec7995437"
      ],
      "author": {
        "name": "Xie Yongji",
        "email": "xieyongji@baidu.com",
        "time": "Tue Nov 19 15:57:59 2019 +0800"
      },
      "committer": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Wed Nov 20 04:57:22 2019 -0500"
      },
      "message": "libvhost-user: Zero memory allocated for VuVirtqInflightDesc\n\nUse a zero-initialized VuVirtqInflightDesc struct to avoid\nthat scan-build reports that vq-\u003eresubmit_list[0].counter may\nbe garbage value in vu_check_queue_inflights().\n\nFixes: 5f9ff1eff (\"libvhost-user: Support tracking inflight I/O in\nshared memory\")\nReported-by: Marc-André Lureau \u003cmarcandre.lureau@redhat.com\u003e\nSigned-off-by: Xie Yongji \u003cxieyongji@baidu.com\u003e\nMessage-Id: \u003c20191119075759.4334-1-xieyongji@baidu.com\u003e\nReviewed-by: Marc-André Lureau \u003cmarcandre.lureau@redhat.com\u003e\nReviewed-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\n"
    },
    {
      "commit": "7ffc90f3ae3d84562a4bda63cde961000b335542",
      "tree": "458ad5c979141b473ae05b1eee8dd582056c07f1",
      "parents": [
        "39e2821077e6dcf788b7c2a9ef50970ec7995437"
      ],
      "author": {
        "name": "Volker Rümelin",
        "email": "vr_qemu@t-online.de",
        "time": "Tue Nov 19 07:58:49 2019 +0100"
      },
      "committer": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Wed Nov 20 09:11:12 2019 +0100"
      },
      "message": "audio: fix audio recording\n\nWith current code audio recording with all audio backends\nexcept PulseAudio and DirectSound is broken. The generic audio\nrecording buffer management forgot to update the current read\nposition after a read.\n\nFixes: ff095e5231 \"audio: api for mixeng code free backends\"\n\nSigned-off-by: Volker Rümelin \u003cvr_qemu@t-online.de\u003e\nReviewed-by: Zoltán Kővágó \u003cDirtY.iCE.hu@gmail.com\u003e\nMessage-id: 2fc947cf-7b42-de68-3f11-cbcf1c096be9@t-online.de\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\n"
    },
    {
      "commit": "39e2821077e6dcf788b7c2a9ef50970ec7995437",
      "tree": "e8ec51407caec4d4e8f5b79f8e0d29cc46bbe03b",
      "parents": [
        "06b43e082c6bdbd5b261b57d5c8e1fe5db6807a9"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 19:34:10 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 19:34:10 2019 +0000"
      },
      "message": "Update version for v4.2.0-rc2 release\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "06b43e082c6bdbd5b261b57d5c8e1fe5db6807a9",
      "tree": "448b1ec00a472622d19df6903a3f22477a1ff5a1",
      "parents": [
        "4b8be65ec5b42027b9b0587955643646d015f2ee",
        "7a3e29b12f5afe0106a5713bb4db6e23dc66ef91"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 16:31:27 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 16:31:27 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/bonzini/tags/for-upstream\u0027 into staging\n\n* microvm docs and fixes (Sergio, Liam)\n* New processor features for Intel errata (myself, Pawan)\n* Kconfig fixes (myself, Thomas)\n* Revert mc146818rtc change (myself)\n* Deprecate scsi-disk (myself)\n* RTC fix (myself, Marcelo)\n\n# gpg: Signature made Tue 19 Nov 2019 09:03:49 GMT\n# gpg:                using RSA key BFFBD25F78C7AE83\n# gpg: Good signature from \"Paolo Bonzini \u003cbonzini@gnu.org\u003e\" [full]\n# gpg:                 aka \"Paolo Bonzini \u003cpbonzini@redhat.com\u003e\" [full]\n# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1\n#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83\n\n* remotes/bonzini/tags/for-upstream:\n  mc146818rtc: fix timer interrupt reinjection again\n  Revert \"mc146818rtc: fix timer interrupt reinjection\"\n  scsi: deprecate scsi-disk\n  hw/i386: Move save_tsc_khz from PCMachineClass to X86MachineClass\n  docs/microvm.rst: add instructions for shutting down the guest\n  docs/microvm.rst: fix alignment in \"Limitations\"\n  vfio: vfio-pci requires EDID\n  hw/i386: Fix compiler warning when CONFIG_IDE_ISA is disabled\n  target/i386: Export TAA_NO bit to guests\n  target/i386: add PSCHANGE_NO bit for the ARCH_CAPABILITIES MSR\n  microvm: fix memory leak in microvm_fix_kernel_cmdline\n  scripts: Detect git worktrees for get_maintainer.pl --git\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "4b8be65ec5b42027b9b0587955643646d015f2ee",
      "tree": "f7ccb682324d2242e6ee42126c56e19b541b50f4",
      "parents": [
        "9263dec8ef9a5723d87724c5d1de86a2d5f8ba29",
        "abc7cf36559f953777faf27d2e0dfb561ac533a5"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 15:55:33 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 15:55:33 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/philmd-gitlab/tags/mips-next-20191119\u0027 into staging\n\nThe DTrace via SystemTap backend can not support the dynamic \u0027*\u0027 width\nformat. We failed at noticing it for the 4.1 release, and LP#1844817\nwas opened to track it. Fix this regression for the next release.\n\n# gpg: Signature made Tue 19 Nov 2019 13:56:50 GMT\n# gpg:                using RSA key 89C1E78F601EE86C867495CBA2A3FD6EDEADC0DE\n# gpg: Good signature from \"Philippe Mathieu-Daudé (Phil) \u003cphilmd@redhat.com\u003e\" [marginal]\n# gpg: WARNING: This key is not certified with sufficiently trusted signatures!\n# gpg:          It is not certain that the signature belongs to the owner.\n# Primary key fingerprint: 89C1 E78F 601E E86C 8674  95CB A2A3 FD6E DEAD C0DE\n\n* remotes/philmd-gitlab/tags/mips-next-20191119:\n  hw/mips/gt64xxx: Remove dynamic field width from trace events\n  hw/block/pflash: Remove dynamic field width from trace events\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "abc7cf36559f953777faf27d2e0dfb561ac533a5",
      "tree": "28e6e4bbd9f8185e1ed962da47dc27f7ef98e3dc",
      "parents": [
        "10f9f1fbed11e520e6fd71f02cd71f0e9c759b69"
      ],
      "author": {
        "name": "Philippe Mathieu-Daudé",
        "email": "philmd@redhat.com",
        "time": "Fri Nov 08 15:13:59 2019 +0100"
      },
      "committer": {
        "name": "Philippe Mathieu-Daudé",
        "email": "philmd@redhat.com",
        "time": "Tue Nov 19 14:46:01 2019 +0100"
      },
      "message": "hw/mips/gt64xxx: Remove dynamic field width from trace events\n\nSince not all trace backends support dynamic field width in\nformat (dtrace via stap does not), replace by a static field\nwidth instead.\n\nWe previously passed to the trace API \u0027width \u003c\u003c 1\u0027 as the number\nof hex characters to display (the dynamic field width). We don\u0027t\nneed this anymore. Instead, display the size of bytes accessed.\n\nFixes: ab6bff424f (\"gt64xxx_pci: Convert debug printf to trace events\")\nReported-by: Eric Blake \u003ceblake@redhat.com\u003e\nReviewed-by: Eric Blake \u003ceblake@redhat.com\u003e\nReviewed-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nBuglink: https://bugs.launchpad.net/qemu/+bug/1844817\nSigned-off-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\n"
    },
    {
      "commit": "10f9f1fbed11e520e6fd71f02cd71f0e9c759b69",
      "tree": "138028d0bfcca678dea1da63bde346cf4fde8ffd",
      "parents": [
        "385e43e6638464009e09cfaec254012e531f6342"
      ],
      "author": {
        "name": "Philippe Mathieu-Daudé",
        "email": "philmd@redhat.com",
        "time": "Fri Nov 08 15:11:34 2019 +0100"
      },
      "committer": {
        "name": "Philippe Mathieu-Daudé",
        "email": "philmd@redhat.com",
        "time": "Tue Nov 19 14:45:58 2019 +0100"
      },
      "message": "hw/block/pflash: Remove dynamic field width from trace events\n\nSince not all trace backends support dynamic field width in\nformat (dtrace via stap does not), replace by a static field\nwidth instead.\n\nWe previously passed to the trace API \u0027width \u003c\u003c 1\u0027 as the number\nof hex characters to display (the dynamic field width). We don\u0027t\nneed this anymore. Instead, display the size of bytes accessed.\n\nFixes: e8aa2d95ea (\"pflash: Simplify trace_pflash_io_read/write\")\nFixes: c1474acd5d (\"pflash: Simplify trace_pflash_data_read/write\")\nReported-by: Eric Blake \u003ceblake@redhat.com\u003e\nReviewed-by: Eric Blake \u003ceblake@redhat.com\u003e\nReviewed-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nBuglink: https://bugs.launchpad.net/qemu/+bug/1844817\nSigned-off-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\n"
    },
    {
      "commit": "9263dec8ef9a5723d87724c5d1de86a2d5f8ba29",
      "tree": "258a0e0cde71f440238c0e1c38706685117eefd7",
      "parents": [
        "6e5d4999c761ffa082f60d72a14e5c953515b417",
        "04c9c81b8fa2ee33f59a26265700fae6fc646062"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 13:32:07 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 13:32:07 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/pmaydell/tags/pull-target-arm-20191119\u0027 into staging\n\ntarget-arm queue:\n * Support EL0 v7m msr/mrs for CONFIG_USER_ONLY\n * Relax r13 restriction for ldrex/strex for v8.0\n * Do not reject rt \u003d\u003d rt2 for strexd\n * net/cadence_gem: Set PHY autonegotiation restart status\n * ssi: xilinx_spips: Skip spi bus update for a few register writes\n * pl031: Expose RTCICR as proper WC register\n\n# gpg: Signature made Tue 19 Nov 2019 13:30:35 GMT\n# gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE\n# gpg:                issuer \"peter.maydell@linaro.org\"\n# gpg: Good signature from \"Peter Maydell \u003cpeter.maydell@linaro.org\u003e\" [ultimate]\n# gpg:                 aka \"Peter Maydell \u003cpmaydell@gmail.com\u003e\" [ultimate]\n# gpg:                 aka \"Peter Maydell \u003cpmaydell@chiark.greenend.org.uk\u003e\" [ultimate]\n# Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE\n\n* remotes/pmaydell/tags/pull-target-arm-20191119:\n  target/arm: Support EL0 v7m msr/mrs for CONFIG_USER_ONLY\n  target/arm: Relax r13 restriction for ldrex/strex for v8.0\n  target/arm: Do not reject rt \u003d\u003d rt2 for strexd\n  net/cadence_gem: Set PHY autonegotiation restart status\n  ssi: xilinx_spips: Skip spi bus update for a few register writes\n  target/arm: Merge arm_cpu_vq_map_next_smaller into sole caller\n  pl031: Expose RTCICR as proper WC register\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "04c9c81b8fa2ee33f59a26265700fae6fc646062",
      "tree": "258a0e0cde71f440238c0e1c38706685117eefd7",
      "parents": [
        "d46ad79efac7aaf9f0eb9f5a96a576e9f39200e0"
      ],
      "author": {
        "name": "Richard Henderson",
        "email": "richard.henderson@linaro.org",
        "time": "Tue Nov 19 13:20:28 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 13:20:28 2019 +0000"
      },
      "message": "target/arm: Support EL0 v7m msr/mrs for CONFIG_USER_ONLY\n\nSimply moving the non-stub helper_v7m_mrs/msr outside of\n!CONFIG_USER_ONLY is not an option, because of all of the\nother system-mode helpers that are called.\n\nBut we can split out a few subroutines to handle the few\nEL0 accessible registers without duplicating code.\n\nReported-by: Christophe Lyon \u003cchristophe.lyon@linaro.org\u003e\nSigned-off-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nMessage-id: 20191118194916.3670-1-richard.henderson@linaro.org\n[PMM: deleted now-redundant comment; added a default case\n to switch in v7m_msr helper]\nReviewed-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "d46ad79efac7aaf9f0eb9f5a96a576e9f39200e0",
      "tree": "fdfe771b0a836c53a6188c92e1ea109c66c7ee63",
      "parents": [
        "655b02646dc175dc10666459b0a1e4346fc8d46a"
      ],
      "author": {
        "name": "Richard Henderson",
        "email": "richard.henderson@linaro.org",
        "time": "Tue Nov 19 13:20:28 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 13:20:28 2019 +0000"
      },
      "message": "target/arm: Relax r13 restriction for ldrex/strex for v8.0\n\nArmv8-A removes UNPREDICTABLE for R13 for these cases.\n\nSigned-off-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nMessage-id: 20191117090621.32425-3-richard.henderson@linaro.org\n[PMM: changed ENABLE_ARCH_8 checks to check a new bool \u0027v8a\u0027,\n since these cases are still UNPREDICTABLE for v8M]\nReviewed-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "655b02646dc175dc10666459b0a1e4346fc8d46a",
      "tree": "eacbc2b33d8153c461bddf9463eec1f0c2c3cec7",
      "parents": [
        "6623d214451ec4f784d1c82c51c655a01fed1b06"
      ],
      "author": {
        "name": "Richard Henderson",
        "email": "richard.henderson@linaro.org",
        "time": "Tue Nov 19 13:20:28 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 13:20:28 2019 +0000"
      },
      "message": "target/arm: Do not reject rt \u003d\u003d rt2 for strexd\n\nThere was too much cut and paste between ldrexd and strexd,\nas ldrexd does prohibit two output registers the same.\n\nFixes: af288228995\nReported-by: Michael Goffioul \u003cmichael.goffioul@gmail.com\u003e\nSigned-off-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nMessage-id: 20191117090621.32425-2-richard.henderson@linaro.org\nReviewed-by: Robert Foley \u003crobert.foley@linaro.org\u003e\nReviewed-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "6623d214451ec4f784d1c82c51c655a01fed1b06",
      "tree": "fd0b4a2864a67440d4953789f60ce5052a67f621",
      "parents": [
        "3a6606c7aa1e6e687e435c1eae929a396bd866e3"
      ],
      "author": {
        "name": "Linus Ziegert",
        "email": "linus.ziegert+qemu@holoplot.com",
        "time": "Tue Nov 19 13:20:27 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 13:20:27 2019 +0000"
      },
      "message": "net/cadence_gem: Set PHY autonegotiation restart status\n\nThe Linux kernel PHY driver sets AN_RESTART in the BMCR of the\nPHY when autonegotiation is started.\nRecently the kernel started to read back the PHY\u0027s AN_RESTART\nbit and now checks whether the autonegotiation is complete and\nthe bit was cleared [1]. Otherwise the link status is down.\n\nThe emulated PHY needs to clear AN_RESTART immediately to inform\nthe kernel driver about the completion of autonegotiation phase.\n\n[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id\u003dc36757eb9dee\n\nSigned-off-by: Linus Ziegert \u003clinus.ziegert+qemu@holoplot.com\u003e\nReviewed-by: Alistair Francis \u003calistair.francis@wdc.com\u003e\nMessage-id: 20191104181604.21943-1-linus.ziegert+qemu@holoplot.com\nCc: qemu-stable@nongnu.org\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "3a6606c7aa1e6e687e435c1eae929a396bd866e3",
      "tree": "27da4d802dc527dca171dfa8f53ffd96c6b84236",
      "parents": [
        "6e553f2a1b8450c9e9721fb60e3ef134492a4a39"
      ],
      "author": {
        "name": "Sai Pavan Boddu",
        "email": "sai.pavan.boddu@xilinx.com",
        "time": "Tue Nov 19 13:20:27 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 13:20:27 2019 +0000"
      },
      "message": "ssi: xilinx_spips: Skip spi bus update for a few register writes\n\nA few configuration register writes need not update the spi bus state, so just\nreturn after the register write.\n\nSigned-off-by: Sai Pavan Boddu \u003csai.pavan.boddu@xilinx.com\u003e\nReviewed-by: Alistair Francis \u003calistair.francis@wdc.com\u003e\nReviewed-by: Francisco Iglesias \u003cfrasse.iglesias@gmail.com\u003e\nTested-by: Francisco Iglesias \u003cfrasse.iglesias@gmail.com\u003e\nReviewed-by: Edgar E. Iglesias \u003cedgar.iglesias@xilinx.com\u003e\nMessage-id: 1573830705-14579-1-git-send-email-sai.pavan.boddu@xilinx.com\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "6e553f2a1b8450c9e9721fb60e3ef134492a4a39",
      "tree": "67488bf8631a2493fd3a53f631d0bf2e5d477c83",
      "parents": [
        "83ad95957c7e66f2685fb38c9675949d3bf478eb"
      ],
      "author": {
        "name": "Richard Henderson",
        "email": "richard.henderson@linaro.org",
        "time": "Tue Nov 19 13:20:27 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 13:20:27 2019 +0000"
      },
      "message": "target/arm: Merge arm_cpu_vq_map_next_smaller into sole caller\n\nCoverity reports, in sve_zcr_get_valid_len,\n\n\"Subtract operation overflows on operands\narm_cpu_vq_map_next_smaller(cpu, start_vq + 1U) and 1U\"\n\nFirst, the aarch32 stub version of arm_cpu_vq_map_next_smaller,\nreturning 0, does exactly what Coverity reports.  Remove it.\n\nSecond, the aarch64 version of arm_cpu_vq_map_next_smaller has\na set of asserts, but they don\u0027t cover the case in question.\nFurther, there is a fair amount of extra arithmetic needed to\nconvert from the 0-based zcr register, to the 1-base vq form,\nto the 0-based bitmap, and back again.  This can be simplified\nby leaving the value in the 0-based form.\n\nFinally, use test_bit to simplify the common case, where the\nlength in the zcr registers is in fact a supported length.\n\nReported-by: Coverity (CID 1407217)\nSigned-off-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nReviewed-by: Andrew Jones \u003cdrjones@redhat.com\u003e\nMessage-id: 20191118091414.19440-1-richard.henderson@linaro.org\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "83ad95957c7e66f2685fb38c9675949d3bf478eb",
      "tree": "0421bb1c8aa7a6f2555505a782500925f5b90a9e",
      "parents": [
        "6e5d4999c761ffa082f60d72a14e5c953515b417"
      ],
      "author": {
        "name": "Alexander Graf",
        "email": "graf@amazon.com",
        "time": "Tue Nov 19 13:20:27 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 13:20:27 2019 +0000"
      },
      "message": "pl031: Expose RTCICR as proper WC register\n\nThe current PL031 RTCICR register implementation always clears the\nIRQ pending status on a register write, regardless of the value the\nguest writes.\n\nTo justify that behavior, it references the ARM926EJ-S Development\nChip Reference Manual (DDI0287B) and indicates that said document\nstates that any write clears the internal IRQ state.  It is indeed\ntrue that in section 11.1 this document says:\n\n  \"The interrupt is cleared by writing any data value to the\n   interrupt clear register RTCICR\".\n\nHowever, later in section 11.2.2 it contradicts itself by saying:\n\n  \"Writing 1 to bit 0 of RTCICR clears the RTCINTR flag.\"\n\nThe latter statement matches the PL031 TRM (DDI0224C), which says:\n\n  \"Writing 1 to bit position 0 clears the corresponding interrupt.\n   Writing 0 has no effect.\"\n\nLet\u0027s assume that the self-contradictory DDI0287B is in error, and\nfollow the reference manual for the device itself, by making the\nregister write-one-to-clear.\n\nReported-by: Hendrik Borghorst \u003chborghor@amazon.de\u003e\nSigned-off-by: Alexander Graf \u003cgraf@amazon.com\u003e\nMessage-id: 20191104115228.30745-1-graf@amazon.com\n[PMM: updated commit message to note that DDI0287B says two\n conflicting things]\nReviewed-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "6e5d4999c761ffa082f60d72a14e5c953515b417",
      "tree": "40c4a5780b7eb7e15fa380c68c90717abb83e5a1",
      "parents": [
        "385e43e6638464009e09cfaec254012e531f6342",
        "2895aaa139b3f916b3650ca516b35dceb9c0d4c4"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 11:29:00 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 11:29:01 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/armbru/tags/pull-monitor-2019-11-19\u0027 into staging\n\nMonitor patches for 2019-11-19\n\n# gpg: Signature made Tue 19 Nov 2019 08:50:57 GMT\n# gpg:                using RSA key 354BC8B3D7EB2A6B68674E5F3870B400EB918653\n# gpg:                issuer \"armbru@redhat.com\"\n# gpg: Good signature from \"Markus Armbruster \u003carmbru@redhat.com\u003e\" [full]\n# gpg:                 aka \"Markus Armbruster \u003carmbru@pond.sub.org\u003e\" [full]\n# Primary key fingerprint: 354B C8B3 D7EB 2A6B 6867  4E5F 3870 B400 EB91 8653\n\n* remotes/armbru/tags/pull-monitor-2019-11-19:\n  monitor/qmp: resume monitor when clearing its queue\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "385e43e6638464009e09cfaec254012e531f6342",
      "tree": "c43ee841d3695d5fd24bb4faaa2b28415884f0aa",
      "parents": [
        "f086f22d6c068ba151b0f6e81e75a64f130df712",
        "296416ff0f519d762fbb87ac59f0770824267f3f"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 09:17:23 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 19 09:17:24 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/ericb/tags/pull-nbd-2019-11-19\u0027 into staging\n\nnbd patches for 2019-11-19\n\n- iotests: more tests of NBD reconnect, various test output improvements\n- nbd: fix spec compliance issue with long strings\n- slience a Coverity warning on coroutines\n\n# gpg: Signature made Tue 19 Nov 2019 03:06:41 GMT\n# gpg:                using RSA key 71C2CC22B1C4602927D2F3AAA7A16B4A2527436A\n# gpg: Good signature from \"Eric Blake \u003ceblake@redhat.com\u003e\" [full]\n# gpg:                 aka \"Eric Blake (Free Software Programmer) \u003cebb9@byu.net\u003e\" [full]\n# gpg:                 aka \"[jpeg image of size 6874]\" [full]\n# Primary key fingerprint: 71C2 CC22 B1C4 6029 27D2  F3AA A7A1 6B4A 2527 436A\n\n* remotes/ericb/tags/pull-nbd-2019-11-19:\n  tests: More iotest 223 improvements\n  iotests: Include QMP input in .out files\n  iotests: Switch nbd tests to use Unix rather than TCP\n  iotests: Fix 173\n  MAINTAINERS: add more bitmap-related to Dirty Bitmaps section\n  nbd: Don\u0027t send oversize strings\n  bitmap: Enforce maximum bitmap name length\n  nbd/server: Prefer heap over stack for parsing client names\n  qemu-coroutine-sleep: Silence Coverity warning\n  iotests: Test NBD client reconnection\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "7a3e29b12f5afe0106a5713bb4db6e23dc66ef91",
      "tree": "ac5e365b8aa9d01c6d07b5537aaf2d20167a835e",
      "parents": [
        "3ae32adff17226bc6a5f3fd7bb9804e6779e0660"
      ],
      "author": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Sun Nov 17 10:28:14 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:02:13 2019 +0100"
      },
      "message": "mc146818rtc: fix timer interrupt reinjection again\n\nCommit 369b41359af46bded5799c9ef8be2b641d92e043 broke timer interrupt\nreinjection when there is no period change by the guest.  In that\ncase, old_period is 0, which ends up zeroing irq_coalesced (counter of\nreinjected interrupts).\n\nThe consequence is Windows 7 is unable to synchronize time via NTP.\nEasily reproducible by playing a fullscreen video with cirrus and VNC.\n\nFix by passing s-\u003eperiod when periodic_timer_update is called due to\nexpiration of the timer.  With this change, old_period \u003d\u003d 0 only\nmeans that the periodic timer was off.\n\nReported-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCo-developed-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "3ae32adff17226bc6a5f3fd7bb9804e6779e0660",
      "tree": "baddc4ff126e778605e2c26a023473b58b8fc23d",
      "parents": [
        "0d074bf8e74d16920d9c9a132a41d5200333c7bb"
      ],
      "author": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Sun Nov 17 10:07:38 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:01:34 2019 +0100"
      },
      "message": "Revert \"mc146818rtc: fix timer interrupt reinjection\"\n\nThis reverts commit b429de730174b388ea5760e3debb0d542ea3c261, except\nthat the reversal of the outer \"if (period)\" is left in.\n\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "0d074bf8e74d16920d9c9a132a41d5200333c7bb",
      "tree": "0b4fa9c36b2c28b210f656b2f38333149d9c3d52",
      "parents": [
        "2f34ebf222d6a9367665a4bf78b8c861a988c1d0"
      ],
      "author": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Fri Nov 01 14:32:20 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:01:34 2019 +0100"
      },
      "message": "scsi: deprecate scsi-disk\n\nIt\u0027s an old compatibility shim that just delegates to scsi-cd or scsi-hd.\nJust like ide-drive, we don\u0027t need this.\n\nAcked-by: Peter Krempa \u003cpkrempa@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "2f34ebf222d6a9367665a4bf78b8c861a988c1d0",
      "tree": "688ab7b0b5b1f1a4a8486e168a305be635631854",
      "parents": [
        "62e9dc35824eee7caf6878a6ba89a46afa433289"
      ],
      "author": {
        "name": "Liam Merwick",
        "email": "liam.merwick@oracle.com",
        "time": "Mon Nov 18 11:13:25 2019 +0000"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:01:34 2019 +0100"
      },
      "message": "hw/i386: Move save_tsc_khz from PCMachineClass to X86MachineClass\n\nAttempting to migrate a VM using the microvm machine class results in the source\nQEMU aborting with the following message/backtrace:\n\ntarget/i386/machine.c:955:tsc_khz_needed: Object 0x555556608fa0 is not an\ninstance of type generic-pc-machine\n\nabort()\nobject_class_dynamic_cast_assert()\nvmstate_save_state_v()\nvmstate_save_state()\nvmstate_save()\nqemu_savevm_state_complete_precopy()\nmigration_thread()\nmigration_thread()\nmigration_thread()\nqemu_thread_start()\nstart_thread()\nclone()\n\nThe access to the machine class returned by MACHINE_GET_CLASS() in\ntsc_khz_needed() is crashing as it is trying to dereference a different\ntype of machine class object (TYPE_PC_MACHINE) to that of this microVM.\n\nThis can be resolved by extending the changes in the following commit\nf0bb276bf8d5 (\"hw/i386: split PCMachineState deriving X86MachineState from it\")\nand moving the save_tsc_khz field in PCMachineClass to X86MachineClass.\n\nFixes: f0bb276bf8d5 (\"hw/i386: split PCMachineState deriving X86MachineState from it\")\nSigned-off-by: Liam Merwick \u003cliam.merwick@oracle.com\u003e\nReviewed-by: Darren Kenny \u003cdarren.kenny@oracle.com\u003e\nMessage-Id: \u003c1574075605-25215-1-git-send-email-liam.merwick@oracle.com\u003e\nReviewed-by: Sergio Lopez \u003cslp@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "62e9dc35824eee7caf6878a6ba89a46afa433289",
      "tree": "d6ff377e08996883fa3aa05df6fac0525c3b719a",
      "parents": [
        "ff9d708933c019d963505f65c031ac743ec5de1d"
      ],
      "author": {
        "name": "Sergio Lopez",
        "email": "slp@redhat.com",
        "time": "Fri Nov 15 17:13:38 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:01:34 2019 +0100"
      },
      "message": "docs/microvm.rst: add instructions for shutting down the guest\n\nAdd a new section explaining the particularities of the microvm\nmachine type for triggering a guest-initiated shut down.\n\nSigned-off-by: Sergio Lopez \u003cslp@redhat.com\u003e\nMessage-Id: \u003c20191115161338.42864-3-slp@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "ff9d708933c019d963505f65c031ac743ec5de1d",
      "tree": "4923392f4ebe78a1a9cf0c53744fa407ecdceb3a",
      "parents": [
        "7771e1ae1bedba67e9034f9eab233f823aae5fee"
      ],
      "author": {
        "name": "Sergio Lopez",
        "email": "slp@redhat.com",
        "time": "Fri Nov 15 17:13:37 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:01:33 2019 +0100"
      },
      "message": "docs/microvm.rst: fix alignment in \"Limitations\"\n\nFix the alignment of the items in the \"Limitations\" section.\n\nSigned-off-by: Sergio Lopez \u003cslp@redhat.com\u003e\nMessage-Id: \u003c20191115161338.42864-2-slp@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "7771e1ae1bedba67e9034f9eab233f823aae5fee",
      "tree": "71dd2da9ea2e58f915f0d10fcfeb240f1006da6d",
      "parents": [
        "c9d6da3a5e427cd0ff58a06a38c8faa4fa7b21ba"
      ],
      "author": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Fri Nov 15 17:14:44 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:01:33 2019 +0100"
      },
      "message": "vfio: vfio-pci requires EDID\n\nhw/vfio/display.c needs the EDID subsystem, select it.\n\nCc: Alex Williamson \u003calex.williamson@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "c9d6da3a5e427cd0ff58a06a38c8faa4fa7b21ba",
      "tree": "b26151460861d352a33f7df6186840546ce6b92a",
      "parents": [
        "7fac38635e1cc5ebae34eb6530da1009bd5808e4"
      ],
      "author": {
        "name": "Thomas Huth",
        "email": "thuth@redhat.com",
        "time": "Fri Nov 15 15:50:49 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:01:33 2019 +0100"
      },
      "message": "hw/i386: Fix compiler warning when CONFIG_IDE_ISA is disabled\n\nWhen CONFIG_IDE_ISA is disabled, compilation currently fails:\n\n hw/i386/pc_piix.c: In function ‘pc_init1’:\n hw/i386/pc_piix.c:81:9: error: unused variable ‘i’ [-Werror\u003dunused-variable]\n\nMove the variable declaration to the right code block to avoid\nthis problem.\n\nFixes: 4501d317b50e (\"hw/i386/pc: Extract pc_i8259_create()\")\nSigned-off-by: Thomas Huth \u003cthuth@redhat.com\u003e\nMessage-Id: \u003c20191115145049.26868-1-thuth@redhat.com\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "7fac38635e1cc5ebae34eb6530da1009bd5808e4",
      "tree": "7eaede164c578b61da2b928b16a4089dfc1fe851",
      "parents": [
        "7f7a585d5bd3c7f1275d28c77d9d67513c1de36c"
      ],
      "author": {
        "name": "Pawan Gupta",
        "email": "pawan.kumar.gupta@linux.intel.com",
        "time": "Mon Nov 18 23:23:27 2019 -0800"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:01:32 2019 +0100"
      },
      "message": "target/i386: Export TAA_NO bit to guests\n\nTSX Async Abort (TAA) is a side channel attack on internal buffers in\nsome Intel processors similar to Microachitectural Data Sampling (MDS).\n\nSome future Intel processors will use the ARCH_CAP_TAA_NO bit in the\nIA32_ARCH_CAPABILITIES MSR to report that they are not vulnerable to\nTAA. Make this bit available to guests.\n\nSigned-off-by: Pawan Gupta \u003cpawan.kumar.gupta@linux.intel.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "7f7a585d5bd3c7f1275d28c77d9d67513c1de36c",
      "tree": "281c29e358c1061226fcc4e517d928cd31763504",
      "parents": [
        "c3157b74c47f886f99df752500f7cf76e7a287dd"
      ],
      "author": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Wed Nov 13 15:54:35 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:00:36 2019 +0100"
      },
      "message": "target/i386: add PSCHANGE_NO bit for the ARCH_CAPABILITIES MSR\n\nThis is required to disable ITLB multihit mitigations in nested\nhypervisors.\n\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "c3157b74c47f886f99df752500f7cf76e7a287dd",
      "tree": "ca4fd82bc879a945a135199f2c36b802317e9491",
      "parents": [
        "b73f059cf2dce327f4f5936a1e6d4d7b898c6a71"
      ],
      "author": {
        "name": "Sergio Lopez",
        "email": "slp@redhat.com",
        "time": "Tue Nov 12 17:34:23 2019 +0100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:00:36 2019 +0100"
      },
      "message": "microvm: fix memory leak in microvm_fix_kernel_cmdline\n\nIn microvm_fix_kernel_cmdline(), fw_cfg_modify_string() is duplicating\ncmdline instead of taking ownership of it. Free it afterwards to avoid\nleaking it.\n\nReported-by: Coverity (CID 1407218)\nSuggested-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nSigned-off-by: Sergio Lopez \u003cslp@redhat.com\u003e\nMessage-Id: \u003c20191112163423.91884-1-slp@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "b73f059cf2dce327f4f5936a1e6d4d7b898c6a71",
      "tree": "4f67401294a5e4371e9af1cc78114bf307b6a1b3",
      "parents": [
        "369e8f5bbd8a5301bde6fae22b93fe9288c552a5"
      ],
      "author": {
        "name": "Alexey Kardashevskiy",
        "email": "aik@ozlabs.ru",
        "time": "Tue Nov 12 14:45:32 2019 +1100"
      },
      "committer": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Tue Nov 19 10:00:36 2019 +0100"
      },
      "message": "scripts: Detect git worktrees for get_maintainer.pl --git\n\nRecent git versions support worktrees where .git is not a directory but\na file with a path to the .git repository; however the get_maintainer.pl\nscript only recognises the .git directory, let\u0027s fix it.\n\nSigned-off-by: Alexey Kardashevskiy \u003caik@ozlabs.ru\u003e\nReviewed-by: Greg Kurz \u003cgroug@kaod.org\u003e\nReviewed-by: Stefano Garzarella \u003csgarzare@redhat.com\u003e\nTested-by: Stefano Garzarella \u003csgarzare@redhat.com\u003e\nMessage-Id: \u003c20191112034532.69079-1-aik@ozlabs.ru\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n"
    },
    {
      "commit": "2895aaa139b3f916b3650ca516b35dceb9c0d4c4",
      "tree": "e65267e31d5afee4b7b438e7cd43287e4984bd55",
      "parents": [
        "a5c2a235103ab366ad5318636ec138e52c6dcfa4"
      ],
      "author": {
        "name": "Wolfgang Bumiller",
        "email": "w.bumiller@proxmox.com",
        "time": "Fri Nov 15 09:59:14 2019 +0100"
      },
      "committer": {
        "name": "Markus Armbruster",
        "email": "armbru@redhat.com",
        "time": "Tue Nov 19 08:21:47 2019 +0100"
      },
      "message": "monitor/qmp: resume monitor when clearing its queue\n\nWhen a monitor\u0027s queue is filled up in handle_qmp_command()\nit gets suspended. It\u0027s the dispatcher bh\u0027s job currently to\nresume the monitor, which it does after processing an event\nfrom the queue. However, it is possible for a\nCHR_EVENT_CLOSED event to be processed before before the bh\nis scheduled, which will clear the queue without resuming\nthe monitor, thereby preventing the dispatcher from reaching\nthe resume() call.\nAny new connections to the qmp socket will be accept()ed and\nshow the greeting, but will not respond to any messages sent\nafterwards (as they will not be read from the\nstill-suspended socket).\nFix this by resuming the monitor when clearing a queue which\nwas filled up.\n\nSigned-off-by: Wolfgang Bumiller \u003cw.bumiller@proxmox.com\u003e\nMessage-Id: \u003c20191115085914.21287-1-w.bumiller@proxmox.com\u003e\n"
    },
    {
      "commit": "296416ff0f519d762fbb87ac59f0770824267f3f",
      "tree": "b3f43aa9721c8c8626e428967af3580f61f3c0c6",
      "parents": [
        "a98b1a1fefd53daf044d2267e6b9487541798918"
      ],
      "author": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Thu Nov 14 15:34:15 2019 -0600"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 20:34:37 2019 -0600"
      },
      "message": "tests: More iotest 223 improvements\n\nRun the core of the test twice, once without iothreads, and again\nwith, for more coverage of both setups.\n\nSuggested-by: Nir Soffer \u003cnsoffer@redhat.com\u003e\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\nReviewed-by: Max Reitz \u003cmreitz@redhat.com\u003e\nMessage-Id: \u003c20191114213415.23499-5-eblake@redhat.com\u003e\n"
    },
    {
      "commit": "a98b1a1fefd53daf044d2267e6b9487541798918",
      "tree": "e3349ad5486f7f8ab862a5ac9ebb914579707e11",
      "parents": [
        "f3923a72f199b2c63747a7032db74730546f55c6"
      ],
      "author": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Thu Nov 14 15:34:14 2019 -0600"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 20:33:48 2019 -0600"
      },
      "message": "iotests: Include QMP input in .out files\n\nWe generally include relevant HMP input in .out files, by virtue of\nthe fact that HMP echoes its input.  But QMP does not, so we have to\nexplicitly inject it in the output stream (appropriately filtered to\nkeep the tests passing), in order to make it easier to read .out files\nto see what behavior is being tested (especially true where the output\nfile is a sequence of {\u0027return\u0027: {}}).\n\nSuggested-by: Max Reitz \u003cmreitz@redhat.com\u003e\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\nMessage-Id: \u003c20191114213415.23499-4-eblake@redhat.com\u003e\nReviewed-by: Max Reitz \u003cmreitz@redhat.com\u003e\n"
    },
    {
      "commit": "f3923a72f199b2c63747a7032db74730546f55c6",
      "tree": "46fa72e84d17e8a18df6166588b5255bcea73e44",
      "parents": [
        "509e91c127390343b7688ddea0b908fa3e8b2707"
      ],
      "author": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Thu Nov 14 15:34:13 2019 -0600"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 16:38:38 2019 -0600"
      },
      "message": "iotests: Switch nbd tests to use Unix rather than TCP\n\nUp to now, all it took to cause a lot of iotest failures was to have a\nbackground process such as \u0027nbdkit -p 10810 null\u0027 running, because we\nhard-coded the TCP port.  Switching to a Unix socket eliminates this\ncontention.  We still have TCP coverage in test 233, and that test is\nmore careful to not pick a hard-coded port.\n\nAdd a comment explaining where the format layer applies when using\nNBD as protocol (until NBD gains support for a resize extension, we\nonly pipe raw bytes over the wire).\n\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\nMessage-Id: \u003c20191114213415.23499-3-eblake@redhat.com\u003e\n[eblake: Tweak socket name per Max Reitz\u0027 review]\n"
    },
    {
      "commit": "509e91c127390343b7688ddea0b908fa3e8b2707",
      "tree": "841b89684a9e23b21f9c865364a0eac4154524b5",
      "parents": [
        "052db8e71444d85036bee2d3e3225ba9a6d652ee"
      ],
      "author": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Thu Nov 14 15:34:12 2019 -0600"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 16:01:34 2019 -0600"
      },
      "message": "iotests: Fix 173\n\nThis test has been broken since 3.0.  It used TEST_IMG to influence\nthe name of a file created during _make_test_img, but commit 655ae6bb\nchanged things so that the wrong file name is being created, which\nthen caused _launch_qemu to fail.  In the meantime, the set of events\nissued for the actions of the test has increased.\n\nWhy haven\u0027t we noticed the failure? Because the test rarely gets run:\n\u0027./check -qcow2 173\u0027 is insufficient (that defaults to using file protocol)\n\u0027./check -nfs 173\u0027 is insufficient (that defaults to using raw format)\nso the test is only run with:\n./check -qcow2 -nfs 173\n\nNote that we already have a number of other problems with -nfs:\n./check -nfs (fails 18/30)\n./check -qcow2 -nfs (fails 45/76 after this patch, if exports does\nnot permit \u0027insecure\u0027)\nand it\u0027s not on my priority list to fix those.  Rather, I found this\nbecause of my next patch\u0027s work on tests using _send_qemu_cmd.\n\nFixes: 655ae6b\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\nReviewed-by: Max Reitz \u003cmreitz@redhat.com\u003e\nMessage-Id: \u003c20191114213415.23499-2-eblake@redhat.com\u003e\n"
    },
    {
      "commit": "052db8e71444d85036bee2d3e3225ba9a6d652ee",
      "tree": "768abe3d6b4caf0c9b34de4cc173d043d69b5c27",
      "parents": [
        "93676c88d7a5cd5971de94f9091eff8e9773b1af"
      ],
      "author": {
        "name": "Vladimir Sementsov-Ogievskiy",
        "email": "vsementsov@virtuozzo.com",
        "time": "Sat Oct 26 19:56:55 2019 +0300"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 16:01:34 2019 -0600"
      },
      "message": "MAINTAINERS: add more bitmap-related to Dirty Bitmaps section\n\nLet\u0027s add bitmaps persistence qcow2 feature and postcopy bitmaps\nmigration to Dirty Bitmaps section.\n\nSigned-off-by: Vladimir Sementsov-Ogievskiy \u003cvsementsov@virtuozzo.com\u003e\nMessage-Id: \u003c20191026165655.14112-1-vsementsov@virtuozzo.com\u003e\nReviewed-by: John Snow \u003cjsnow@redhat.com\u003e\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\n"
    },
    {
      "commit": "93676c88d7a5cd5971de94f9091eff8e9773b1af",
      "tree": "c6711a35024de53f6af0bacebc3063d40b41d291",
      "parents": [
        "cf7c49cf6aedb0486ca7ba7c32aa819fe51dadfb"
      ],
      "author": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Wed Nov 13 20:46:34 2019 -0600"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 16:01:34 2019 -0600"
      },
      "message": "nbd: Don\u0027t send oversize strings\n\nQemu as server currently won\u0027t accept export names larger than 256\nbytes, nor create dirty bitmap names longer than 1023 bytes, so most\nuses of qemu as client or server have no reason to get anywhere near\nthe NBD spec maximum of a 4k limit per string.\n\nHowever, we weren\u0027t actually enforcing things, ignoring when the\nremote side violates the protocol on input, and also having several\ncode paths where we send oversize strings on output (for example,\nqemu-nbd --description could easily send more than 4k).  Tighten\nthings up as follows:\n\nclient:\n- Perform bounds check on export name and dirty bitmap request prior\n  to handing it to server\n- Validate that copied server replies are not too long (ignoring\n  NBD_INFO_* replies that are not copied is not too bad)\nserver:\n- Perform bounds check on export name and description prior to\n  advertising it to client\n- Reject client name or metadata query that is too long\n- Adjust things to allow full 4k name limit rather than previous\n  256 byte limit\n\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\nMessage-Id: \u003c20191114024635.11363-4-eblake@redhat.com\u003e\nReviewed-by: Maxim Levitsky \u003cmlevitsk@redhat.com\u003e\nReviewed-by: Vladimir Sementsov-Ogievskiy \u003cvsementsov@virtuozzo.com\u003e\n"
    },
    {
      "commit": "cf7c49cf6aedb0486ca7ba7c32aa819fe51dadfb",
      "tree": "d22968feb61ad3cd6060605293ed8f1a9976d6b4",
      "parents": [
        "9d7ab222da5a9de61b34f26ec442d37ccdd18cf0"
      ],
      "author": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Wed Nov 13 20:46:33 2019 -0600"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 16:01:34 2019 -0600"
      },
      "message": "bitmap: Enforce maximum bitmap name length\n\nWe document that for qcow2 persistent bitmaps, the name cannot exceed\n1023 bytes.  It is inconsistent if transient bitmaps do not have to\nabide by the same limit, and it is unlikely that any existing client\neven cares about using bitmap names this long.  It\u0027s time to codify\nthat ALL bitmaps managed by qemu (whether persistent in qcow2 or not)\nhave a documented maximum length.\n\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\nMessage-Id: \u003c20191114024635.11363-3-eblake@redhat.com\u003e\nReviewed-by: Maxim Levitsky \u003cmlevitsk@redhat.com\u003e\nReviewed-by: Vladimir Sementsov-Ogievskiy \u003cvsementsov@virtuozzo.com\u003e\n"
    },
    {
      "commit": "9d7ab222da5a9de61b34f26ec442d37ccdd18cf0",
      "tree": "3e9909533221eb61a13776d70b21ab0c05dc72f8",
      "parents": [
        "f61ffad53f6d1cc4e23c557e22ed3d4f0ad0ae5e"
      ],
      "author": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Wed Nov 13 20:46:32 2019 -0600"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 16:01:34 2019 -0600"
      },
      "message": "nbd/server: Prefer heap over stack for parsing client names\n\nAs long as we limit NBD names to 256 bytes (the bare minimum permitted\nby the standard), stack-allocation works for parsing a name received\nfrom the client.  But as mentioned in a comment, we eventually want to\npermit up to the 4k maximum of the NBD standard, which is too large\nfor stack allocation; so switch everything in the server to use heap\nallocation.  For now, there is no change in actually supported name\nlength.\n\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\nMessage-Id: \u003c20191114024635.11363-2-eblake@redhat.com\u003e\n[eblake: fix uninit variable compile failure]\nReviewed-by: Maxim Levitsky \u003cmlevitsk@redhat.com\u003e\nReviewed-by: Vladimir Sementsov-Ogievskiy \u003cvsementsov@virtuozzo.com\u003e\n"
    },
    {
      "commit": "f61ffad53f6d1cc4e23c557e22ed3d4f0ad0ae5e",
      "tree": "a4f9c119cfc2171b90f30cfec8d2489ba8851faf",
      "parents": [
        "a4d925f8f0634f72f1f03b23f0d172b7315e9ebf"
      ],
      "author": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 11 14:35:24 2019 -0600"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 16:01:34 2019 -0600"
      },
      "message": "qemu-coroutine-sleep: Silence Coverity warning\n\nCoverity warns that we store the address of a stack variable through a\npointer passed in by the caller, which would let the caller trivially\ntrigger use-after-free if that stored value is still present when we\nfinish execution.  However, the way coroutines work is that after our\ncall to qemu_coroutine_yield(), control is temporarily continued in\nthe caller prior to our function concluding, and in order to resume\nour coroutine, the caller must poll until the variable has been set to\nNULL.  Thus, we can add an assert that we do not leak stack storage to\nthe caller on function exit.\n\nFixes: Coverity CID 1406474\nCC: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\nMessage-Id: \u003c20191111203524.21912-1-eblake@redhat.com\u003e\nReviewed-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\n"
    },
    {
      "commit": "a4d925f8f0634f72f1f03b23f0d172b7315e9ebf",
      "tree": "78b3759ffaf08ce40bc487b22040b35520d3cddb",
      "parents": [
        "a5c2a235103ab366ad5318636ec138e52c6dcfa4"
      ],
      "author": {
        "name": "Andrey Shinkevich",
        "email": "andrey.shinkevich@virtuozzo.com",
        "time": "Tue Nov 12 06:39:36 2019 +0300"
      },
      "committer": {
        "name": "Eric Blake",
        "email": "eblake@redhat.com",
        "time": "Mon Nov 18 16:01:31 2019 -0600"
      },
      "message": "iotests: Test NBD client reconnection\n\nThe test for an NBD client. The NBD server is disconnected after the\nclient write request. The NBD client should reconnect and complete\nthe write operation.\n\nSuggested-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSuggested-by: Vladimir Sementsov-Ogievskiy \u003cvsementsov@virtuozzo.com\u003e\nSigned-off-by: Andrey Shinkevich \u003candrey.shinkevich@virtuozzo.com\u003e\nReviewed-by: Eric Blake \u003ceblake@redhat.com\u003e\nTested-by: Eric Blake \u003ceblake@redhat.com\u003e\nMessage-Id: \u003c1573529976-815699-1-git-send-email-andrey.shinkevich@virtuozzo.com\u003e\n"
    },
    {
      "commit": "f086f22d6c068ba151b0f6e81e75a64f130df712",
      "tree": "426a77a49035798bbed0465f471422eaeb4e4e4e",
      "parents": [
        "a5c2a235103ab366ad5318636ec138e52c6dcfa4",
        "29b95c992a569818294478b4616e44b45c67d34e"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Mon Nov 18 21:35:48 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Mon Nov 18 21:35:48 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/awilliam/tags/vfio-fixes-20191118.0\u0027 into staging\n\nVFIO fixes 2019-11-18\n\n - Fix migration blocker double free (Michal Privoznik)\n\n - Use migration_add_blocker() return value (Jens Freimann)\n\n - Depend on EDID for display support (Paolo Bonzini)\n\n# gpg: Signature made Mon 18 Nov 2019 17:44:52 GMT\n# gpg:                using RSA key 239B9B6E3BB08B22\n# gpg: Good signature from \"Alex Williamson \u003calex.williamson@redhat.com\u003e\" [full]\n# gpg:                 aka \"Alex Williamson \u003calex@shazbot.org\u003e\" [full]\n# gpg:                 aka \"Alex Williamson \u003calwillia@redhat.com\u003e\" [full]\n# gpg:                 aka \"Alex Williamson \u003calex.l.williamson@gmail.com\u003e\" [full]\n# Primary key fingerprint: 42F6 C04E 540B D1A9 9E7B  8A90 239B 9B6E 3BB0 8B22\n\n* remotes/awilliam/tags/vfio-fixes-20191118.0:\n  vfio: vfio-pci requires EDID\n  vfio: don\u0027t ignore return value of migrate_add_blocker\n  hw/vfio/pci: Fix double free of migration_blocker\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "29b95c992a569818294478b4616e44b45c67d34e",
      "tree": "8182928e897e44ee3c1297ed1e1dd0bbe795383d",
      "parents": [
        "ed92369a5725ae42c28128778f154798f1464c26"
      ],
      "author": {
        "name": "Paolo Bonzini",
        "email": "pbonzini@redhat.com",
        "time": "Mon Nov 18 10:41:49 2019 -0700"
      },
      "committer": {
        "name": "Alex Williamson",
        "email": "alex.williamson@redhat.com",
        "time": "Mon Nov 18 10:41:49 2019 -0700"
      },
      "message": "vfio: vfio-pci requires EDID\n\nhw/vfio/display.c needs the EDID subsystem, select it.\n\nCc: Alex Williamson \u003calex.williamson@redhat.com\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\nSigned-off-by: Alex Williamson \u003calex.williamson@redhat.com\u003e\n"
    },
    {
      "commit": "ed92369a5725ae42c28128778f154798f1464c26",
      "tree": "778e9042c97fad225905473cc23ac29f072f51fa",
      "parents": [
        "1335d64323be87ee14c766c59fabfb7e9acd7af7"
      ],
      "author": {
        "name": "Jens Freimann",
        "email": "jfreimann@redhat.com",
        "time": "Mon Nov 18 10:41:48 2019 -0700"
      },
      "committer": {
        "name": "Alex Williamson",
        "email": "alex.williamson@redhat.com",
        "time": "Mon Nov 18 10:41:48 2019 -0700"
      },
      "message": "vfio: don\u0027t ignore return value of migrate_add_blocker\n\nWhen an error occurs in migrate_add_blocker() it sets a\nnegative return value and uses error pointer we pass in.\nInstead of just looking at the error pointer check for a negative return\nvalue and avoid a coverity error because the return value is\nset but never used. This fixes CID 1407219.\n\nReported-by: Coverity (CID 1407219)\nFixes: f045a0104c8c (\"vfio: unplug failover primary device before migration\")\nSigned-off-by: Jens Freimann \u003cjfreimann@redhat.com\u003e\nReviewed-by: Stefano Garzarella \u003csgarzare@redhat.com\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nSigned-off-by: Alex Williamson \u003calex.williamson@redhat.com\u003e\n"
    },
    {
      "commit": "1335d64323be87ee14c766c59fabfb7e9acd7af7",
      "tree": "1ad9d7c7b33eba26f5eb0cfaf4aae2481bde56f3",
      "parents": [
        "1bd0f1c9c149c2fb738f381099cec7ad0ee224a9"
      ],
      "author": {
        "name": "Michal Privoznik",
        "email": "mprivozn@redhat.com",
        "time": "Mon Nov 18 10:41:47 2019 -0700"
      },
      "committer": {
        "name": "Alex Williamson",
        "email": "alex.williamson@redhat.com",
        "time": "Mon Nov 18 10:41:47 2019 -0700"
      },
      "message": "hw/vfio/pci: Fix double free of migration_blocker\n\nWhen user tries to hotplug a VFIO device, but the operation fails\nsomewhere in the middle (in my testing it failed because of\nRLIMIT_MEMLOCK forbidding more memory allocation), then a double\nfree occurs. In vfio_realize() the vdev-\u003emigration_blocker is\nallocated, then something goes wrong which causes control to jump\nonto \u0027error\u0027 label where the error is freed. But the pointer is\nleft pointing to invalid memory. Later, when\nvfio_instance_finalize() is called, the memory is freed again.\n\nIn my testing the second hunk was sufficient to fix the bug, but\nI figured the first hunk doesn\u0027t hurt either.\n\n\u003d\u003d169952\u003d\u003d Invalid read of size 8\n\u003d\u003d169952\u003d\u003d    at 0xA47DCD: error_free (error.c:266)\n\u003d\u003d169952\u003d\u003d    by 0x4E0A18: vfio_instance_finalize (pci.c:3040)\n\u003d\u003d169952\u003d\u003d    by 0x8DF74C: object_deinit (object.c:606)\n\u003d\u003d169952\u003d\u003d    by 0x8DF7BE: object_finalize (object.c:620)\n\u003d\u003d169952\u003d\u003d    by 0x8E0757: object_unref (object.c:1074)\n\u003d\u003d169952\u003d\u003d    by 0x45079C: memory_region_unref (memory.c:1779)\n\u003d\u003d169952\u003d\u003d    by 0x45376B: do_address_space_destroy (memory.c:2793)\n\u003d\u003d169952\u003d\u003d    by 0xA5C600: call_rcu_thread (rcu.c:283)\n\u003d\u003d169952\u003d\u003d    by 0xA427CB: qemu_thread_start (qemu-thread-posix.c:519)\n\u003d\u003d169952\u003d\u003d    by 0x80A8457: start_thread (in /lib64/libpthread-2.29.so)\n\u003d\u003d169952\u003d\u003d    by 0x81C96EE: clone (in /lib64/libc-2.29.so)\n\u003d\u003d169952\u003d\u003d  Address 0x143137e0 is 0 bytes inside a block of size 48 free\u0027d\n\u003d\u003d169952\u003d\u003d    at 0x4A342BB: free (vg_replace_malloc.c:530)\n\u003d\u003d169952\u003d\u003d    by 0xA47E05: error_free (error.c:270)\n\u003d\u003d169952\u003d\u003d    by 0x4E0945: vfio_realize (pci.c:3025)\n\u003d\u003d169952\u003d\u003d    by 0x76A4FF: pci_qdev_realize (pci.c:2099)\n\u003d\u003d169952\u003d\u003d    by 0x689B9A: device_set_realized (qdev.c:876)\n\u003d\u003d169952\u003d\u003d    by 0x8E2C80: property_set_bool (object.c:2080)\n\u003d\u003d169952\u003d\u003d    by 0x8E0EF6: object_property_set (object.c:1272)\n\u003d\u003d169952\u003d\u003d    by 0x8E3FC8: object_property_set_qobject (qom-qobject.c:26)\n\u003d\u003d169952\u003d\u003d    by 0x8E11DB: object_property_set_bool (object.c:1338)\n\u003d\u003d169952\u003d\u003d    by 0x5E7BDD: qdev_device_add (qdev-monitor.c:673)\n\u003d\u003d169952\u003d\u003d    by 0x5E81E5: qmp_device_add (qdev-monitor.c:798)\n\u003d\u003d169952\u003d\u003d    by 0x9E18A8: do_qmp_dispatch (qmp-dispatch.c:132)\n\u003d\u003d169952\u003d\u003d  Block was alloc\u0027d at\n\u003d\u003d169952\u003d\u003d    at 0x4A35476: calloc (vg_replace_malloc.c:752)\n\u003d\u003d169952\u003d\u003d    by 0x51B1158: g_malloc0 (in /usr/lib64/libglib-2.0.so.0.6000.6)\n\u003d\u003d169952\u003d\u003d    by 0xA47357: error_setv (error.c:61)\n\u003d\u003d169952\u003d\u003d    by 0xA475D9: error_setg_internal (error.c:97)\n\u003d\u003d169952\u003d\u003d    by 0x4DF8C2: vfio_realize (pci.c:2737)\n\u003d\u003d169952\u003d\u003d    by 0x76A4FF: pci_qdev_realize (pci.c:2099)\n\u003d\u003d169952\u003d\u003d    by 0x689B9A: device_set_realized (qdev.c:876)\n\u003d\u003d169952\u003d\u003d    by 0x8E2C80: property_set_bool (object.c:2080)\n\u003d\u003d169952\u003d\u003d    by 0x8E0EF6: object_property_set (object.c:1272)\n\u003d\u003d169952\u003d\u003d    by 0x8E3FC8: object_property_set_qobject (qom-qobject.c:26)\n\u003d\u003d169952\u003d\u003d    by 0x8E11DB: object_property_set_bool (object.c:1338)\n\u003d\u003d169952\u003d\u003d    by 0x5E7BDD: qdev_device_add (qdev-monitor.c:673)\n\nFixes: f045a0104c8c (\"vfio: unplug failover primary device before migration\")\nSigned-off-by: Michal Privoznik \u003cmprivozn@redhat.com\u003e\nReviewed-by: Cornelia Huck \u003ccohuck@redhat.com\u003e\nSigned-off-by: Alex Williamson \u003calex.williamson@redhat.com\u003e\n"
    },
    {
      "commit": "a5c2a235103ab366ad5318636ec138e52c6dcfa4",
      "tree": "803b176647a9894516d862e436de458cecb2d35b",
      "parents": [
        "1bd0f1c9c149c2fb738f381099cec7ad0ee224a9",
        "b1f6a8e180367c945b67c6c9bbcec5c856be3779"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Mon Nov 18 17:06:17 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Mon Nov 18 17:06:17 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/kevin/tags/for-upstream\u0027 into staging\n\nBlock layer patches:\n\n- Fix HMP savevm with -blockdev\n- Minor iotests improvements\n\n# gpg: Signature made Mon 18 Nov 2019 16:51:56 GMT\n# gpg:                using RSA key 7F09B272C88F2FD6\n# gpg: Good signature from \"Kevin Wolf \u003ckwolf@redhat.com\u003e\" [full]\n# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6\n\n* remotes/kevin/tags/for-upstream:\n  iotests: Test multiple blockdev-snapshot calls\n  block: Remove \u0027backing\u0027: null from bs-\u003e{explicit_,}options\n  iotests: Fix \"no qualified output\" error path\n  qemu-iotests/iotests.py: improve assert_qmp message\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "b1f6a8e180367c945b67c6c9bbcec5c856be3779",
      "tree": "92a3ff8d2165040eaa13046d008ad2eef289a3f7",
      "parents": [
        "ae0f57f0aa03571045a3accc0b22d91a4775e63c"
      ],
      "author": {
        "name": "Kevin Wolf",
        "email": "kwolf@redhat.com",
        "time": "Fri Nov 08 09:46:03 2019 +0100"
      },
      "committer": {
        "name": "Kevin Wolf",
        "email": "kwolf@redhat.com",
        "time": "Mon Nov 18 17:50:08 2019 +0100"
      },
      "message": "iotests: Test multiple blockdev-snapshot calls\n\nTest that doing a second blockdev-snapshot doesn\u0027t make the first\noverlay\u0027s backing file go away.\n\nSigned-off-by: Kevin Wolf \u003ckwolf@redhat.com\u003e\nReviewed-by: Peter Krempa \u003cpkrempa@redhat.com\u003e\n"
    },
    {
      "commit": "ae0f57f0aa03571045a3accc0b22d91a4775e63c",
      "tree": "9db328c1cef5b159dac63739e09e39f9fe9a1536",
      "parents": [
        "d44abcc0f71a08e5777f8d4fe92902dc2eaaa468"
      ],
      "author": {
        "name": "Kevin Wolf",
        "email": "kwolf@redhat.com",
        "time": "Fri Nov 08 09:36:35 2019 +0100"
      },
      "committer": {
        "name": "Kevin Wolf",
        "email": "kwolf@redhat.com",
        "time": "Mon Nov 18 17:50:08 2019 +0100"
      },
      "message": "block: Remove \u0027backing\u0027: null from bs-\u003e{explicit_,}options\n\nbs-\u003eoptions and bs-\u003eexplicit_options shouldn\u0027t contain any options for\nchild nodes. bdrv_open_inherited() takes care to remove any options that\nmatch a child name after opening the image and the same is done when\nreopening.\n\nHowever, we miss the case of \u0027backing\u0027: null, which is a child option,\nbut results in no child being created. This means that a \u0027backing\u0027: null\nremains in bs-\u003eoptions and bs-\u003eexplicit_options.\n\nA typical use for \u0027backing\u0027: null is in live snapshots: blockdev-add for\nthe qcow2 overlay makes sure not to open the backing file (because it is\nalready opened and blockdev-snapshot will attach it). After doing a\nblockdev-snapshot, bs-\u003eoptions and bs-\u003eexplicit_options become\ninconsistent with the actual state (bs has a backing file now, but the\noptions still say null). On the next occasion that the image is\nreopened, e.g. switching it from read-write to read-only when another\nsnapshot is taken, the option will take effect again and the node\nincorrectly loses its backing file.\n\nFix bdrv_open_inherited() to remove the \u0027backing\u0027 option from\nbs-\u003eoptions and bs-\u003eexplicit_options even for the case where it\nspecifies that no backing file is wanted.\n\nReported-by: Peter Krempa \u003cpkrempa@redhat.com\u003e\nSigned-off-by: Kevin Wolf \u003ckwolf@redhat.com\u003e\nReviewed-by: Alberto Garcia \u003cberto@igalia.com\u003e\nTested-by: Peter Krempa \u003cpkrempa@redhat.com\u003e\n"
    },
    {
      "commit": "d44abcc0f71a08e5777f8d4fe92902dc2eaaa468",
      "tree": "ce6eb33d73f0970061a61cde26c9f8b0f9aeb0d8",
      "parents": [
        "dbf231d7b40ebc2dfd9a7c31c46dad6011d9c308"
      ],
      "author": {
        "name": "Kevin Wolf",
        "email": "kwolf@redhat.com",
        "time": "Fri Nov 08 09:03:59 2019 +0100"
      },
      "committer": {
        "name": "Kevin Wolf",
        "email": "kwolf@redhat.com",
        "time": "Mon Nov 18 17:50:08 2019 +0100"
      },
      "message": "iotests: Fix \"no qualified output\" error path\n\nThe variable for error messages to be displayed is $results, not\n$reason. Fix \u0027check\u0027 to print the \"no qualified output\" error message\nagain instead of having a failure without any message telling the user\nwhy it failed.\n\nSigned-off-by: Kevin Wolf \u003ckwolf@redhat.com\u003e\nReviewed-by: Max Reitz \u003cmreitz@redhat.com\u003e\n"
    },
    {
      "commit": "dbf231d7b40ebc2dfd9a7c31c46dad6011d9c308",
      "tree": "ca670f0254f776af260b4b6e294376881b138c2c",
      "parents": [
        "bbe165740a96f67f48ecd3029dc26bdd7fd5192c"
      ],
      "author": {
        "name": "Vladimir Sementsov-Ogievskiy",
        "email": "vsementsov@virtuozzo.com",
        "time": "Sat Oct 26 13:12:21 2019 +0300"
      },
      "committer": {
        "name": "Kevin Wolf",
        "email": "kwolf@redhat.com",
        "time": "Mon Nov 18 17:50:08 2019 +0100"
      },
      "message": "qemu-iotests/iotests.py: improve assert_qmp message\n\nFrom the two values compared, make it obvious which is found at path, and\nwhich is expected.\n\nSigned-off-by: Vladimir Sementsov-Ogievskiy \u003cvsementsov@virtuozzo.com\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nSigned-off-by: Kevin Wolf \u003ckwolf@redhat.com\u003e\n"
    },
    {
      "commit": "1bd0f1c9c149c2fb738f381099cec7ad0ee224a9",
      "tree": "a913882b185131d7c998b5996357d02157ec8e7d",
      "parents": [
        "bbe165740a96f67f48ecd3029dc26bdd7fd5192c",
        "0285747737417a7d154ddc3e5adcf1fd665566fd"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Mon Nov 18 14:30:24 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Mon Nov 18 14:30:24 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/kraxel/tags/seabios-20191118-pull-request\u0027 into staging\n\nseabios: update to pre-1.13 snapshot again (lchs fixed)\n\n# gpg: Signature made Mon 18 Nov 2019 14:23:50 GMT\n# gpg:                using RSA key 4CB6D8EED3E87138\n# gpg: Good signature from \"Gerd Hoffmann (work) \u003ckraxel@redhat.com\u003e\" [full]\n# gpg:                 aka \"Gerd Hoffmann \u003cgerd@kraxel.org\u003e\" [full]\n# gpg:                 aka \"Gerd Hoffmann (private) \u003ckraxel@gmail.com\u003e\" [full]\n# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138\n\n* remotes/kraxel/tags/seabios-20191118-pull-request:\n  seabios: update to pre-1.13 snapshot again\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "0285747737417a7d154ddc3e5adcf1fd665566fd",
      "tree": "73bf9f1909bfd03eaa05c1475cadc0b77e7abbd1",
      "parents": [
        "0221d73ce6a8e075adaa0a35a6ef853d2652b855"
      ],
      "author": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Mon Nov 18 15:04:15 2019 +0100"
      },
      "committer": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Mon Nov 18 15:04:19 2019 +0100"
      },
      "message": "seabios: update to pre-1.13 snapshot again\n\nDue to lchs support merge in upstream seabios gone wrong (applied v3\ninstead of v4) here is another seabios snapshot update with the\nmis-merge fixed up, so lchs support should actually work in -rc2.\n\nAlso picked up two tpm bugfixes.\n\ngit shortlog from previous snapshot\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nGerd Hoffmann (4):\n      Revert \"geometry: Apply LCHS values for boot devices\"\n      Revert \"config: Add toggle for bootdevice information\"\n      Revert \"geometry: Add boot_lchs_find_*() utility functions\"\n      Revert \"geometry: Read LCHS from fw_cfg\"\n\nSam Eiderman (4):\n      geometry: Read LCHS from fw_cfg\n      boot: Build ata and scsi paths in function\n      geometry: Add boot_lchs_find_*() utility functions\n      geometry: Apply LCHS values for boot devices\n\nStefan Berger (2):\n      tpm: Require a response to have minimum size of a valid response header\n      tcgbios: Check for enough bytes returned from TPM2_GetCapability\n\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\n"
    },
    {
      "commit": "bbe165740a96f67f48ecd3029dc26bdd7fd5192c",
      "tree": "be2007ee4bd747a4901544be36e02b3511ffc299",
      "parents": [
        "369e8f5bbd8a5301bde6fae22b93fe9288c552a5",
        "cd8843ff25d62a0af747517289a4f330b1ae2a6e"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Mon Nov 18 11:09:06 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Mon Nov 18 11:09:06 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/vivier2/tags/ppc-for-4.2-pull-request\u0027 into staging\n\nppc patch queue 2019-11-15\n\nSeveral fixes for 4.2.0-rc2:\n\nfix mos6522 performance issue,\nxive/xics issues,\nfix /chosen device-tree on reset\nand KVM default cpu-model for all machine classes\n\n# gpg: Signature made Mon 18 Nov 2019 10:52:19 GMT\n# gpg:                using RSA key CD2F75DDC8E3A4DC2E4F5173F30C38BD3F2FBE3C\n# gpg:                issuer \"lvivier@redhat.com\"\n# gpg: Good signature from \"Laurent Vivier \u003clvivier@redhat.com\u003e\" [full]\n# gpg:                 aka \"Laurent Vivier \u003claurent@vivier.eu\u003e\" [full]\n# gpg:                 aka \"Laurent Vivier (Red Hat) \u003clvivier@redhat.com\u003e\" [full]\n# Primary key fingerprint: CD2F 75DD C8E3 A4DC 2E4F  5173 F30C 38BD 3F2F BE3C\n\n* remotes/vivier2/tags/ppc-for-4.2-pull-request:\n  mos6522: fix T1 and T2 timers\n  spapr/kvm: Set default cpu model for all machine classes\n  spapr: Add /chosen to FDT only at reset time to preserve kernel and initramdisk\n  ppc: Skip partially initialized vCPUs in \u0027info pic\u0027\n  xive, xics: Fix reference counting on CPU objects\n  ppc: Add intc_destroy() handlers to SpaprInterruptController/PnvChip\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "cd8843ff25d62a0af747517289a4f330b1ae2a6e",
      "tree": "890be52086f8d92598904f66507a35521e3fb827",
      "parents": [
        "165dc3edd7f705c6c10908860b8c72e55eadd04b"
      ],
      "author": {
        "name": "Laurent Vivier",
        "email": "laurent@vivier.eu",
        "time": "Sat Nov 02 16:49:19 2019 +0100"
      },
      "committer": {
        "name": "Laurent Vivier",
        "email": "lvivier@redhat.com",
        "time": "Mon Nov 18 11:50:49 2019 +0100"
      },
      "message": "mos6522: fix T1 and T2 timers\n\nWith the Quadra 800 emulation, mos6522 timers processing can consume\nuntil 70% of the host CPU time with an idle guest (I guess the problem\nshould also happen with PowerMac emulation).\n\nOn a recent system, it can be painless (except if you look at top), but\non an old host like a PowerMac G5 the guest kernel can be terribly slow\nduring the boot sequence (for instance, unpacking initramfs can take 15\nseconds rather than only 3 seconds).\n\nWe can avoid this CPU overload by enabling QEMU internal timers only if\nthe mos6522 counter interrupts are enabled. Sometime the guest kernel\nwants to read the counters values, but we don\u0027t need the timers to\nupdate the counters.\n\nWith this patch applied, an idle Q800 consumes only 3% of host CPU time\n(and the guest can boot in a decent time).\n\nSigned-off-by: Laurent Vivier \u003claurent@vivier.eu\u003e\nMessage-Id: \u003c20191102154919.17775-1-laurent@vivier.eu\u003e\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Laurent Vivier \u003clvivier@redhat.com\u003e\n"
    },
    {
      "commit": "165dc3edd7f705c6c10908860b8c72e55eadd04b",
      "tree": "5266c88c4dd38411f869f095b7cef66b2e18ca8a",
      "parents": [
        "a49f62b9fd7cf825d7c1f6fad10d865220ff01b2"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Oct 30 17:20:35 2019 +0100"
      },
      "committer": {
        "name": "Laurent Vivier",
        "email": "lvivier@redhat.com",
        "time": "Mon Nov 18 11:50:39 2019 +0100"
      },
      "message": "spapr/kvm: Set default cpu model for all machine classes\n\nWe have to set the default model of all machine classes, not just for\nthe active one. Otherwise, \"query-machines\" will indicate the wrong\nCPU model (e.g. \"power9_v2.0-powerpc64-cpu\" instead of\n\"host-powerpc64-cpu\") as \"default-cpu-type\".\n\ns390x already fixed this in de60a92e \"s390x/kvm: Set default cpu model for\nall machine classes\".  This patch applies a similar fix for the pseries-*\nmachine types on ppc64.\n\nDoing a\n    {\"execute\":\"query-machines\"}\nunder KVM now results in\n    {\n      \"hotpluggable-cpus\": true,\n      \"name\": \"pseries-4.2\",\n      \"numa-mem-supported\": true,\n      \"default-cpu-type\": \"host-powerpc64-cpu\",\n      \"is-default\": true,\n      \"cpu-max\": 1024,\n      \"deprecated\": false,\n      \"alias\": \"pseries\"\n    },\n    {\n      \"hotpluggable-cpus\": true,\n      \"name\": \"pseries-4.1\",\n      \"numa-mem-supported\": true,\n      \"default-cpu-type\": \"host-powerpc64-cpu\",\n      \"cpu-max\": 1024,\n      \"deprecated\": false\n    },\n    ...\n\nLibvirt probes all machines via \"-machine none,accel\u003dkvm:tcg\" and will\ncurrently see the wrong CPU model under KVM.\n\nReported-by: Jiři Denemark \u003cjdenemar@redhat.com\u003e\nCc: David Hildenbrand \u003cdavid@redhat.com\u003e\nCc: Igor Mammedov \u003cimammedo@redhat.com\u003e\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nReviewed-by: David Hildenbrand \u003cdavid@redhat.com\u003e\nReviewed-by: Greg Kurz \u003cgroug@kaod.org\u003e\nTested-by: Jiri Denemark \u003cjdenemar@redhat.com\u003e\nSigned-off-by: Laurent Vivier \u003clvivier@redhat.com\u003e\n"
    },
    {
      "commit": "a49f62b9fd7cf825d7c1f6fad10d865220ff01b2",
      "tree": "20900ecf0af2c9a8b7c5b5a02a26fd6fc6e0a75c",
      "parents": [
        "0a83b47055246d3942084f03fc54731c4fb9b731"
      ],
      "author": {
        "name": "Alexey Kardashevskiy",
        "email": "aik@ozlabs.ru",
        "time": "Thu Oct 24 15:13:08 2019 +1100"
      },
      "committer": {
        "name": "Laurent Vivier",
        "email": "lvivier@redhat.com",
        "time": "Mon Nov 18 11:50:33 2019 +0100"
      },
      "message": "spapr: Add /chosen to FDT only at reset time to preserve kernel and initramdisk\n\nSince \"spapr: Render full FDT on ibm,client-architecture-support\" we build\nthe entire flatten device tree (FDT) twice - at the reset time and\nwhen \"ibm,client-architecture-support\" (CAS) is called. The full FDT from\nCAS is then applied on top of the SLOF internal device tree.\n\nThis is mostly ok, however there is a case when the QEMU is started with\n-initrd and for some reason the guest decided to move/unpack the init RAM\ndisk image - the guest correctly notifies SLOF about the change but\nat CAS it is overridden with the QEMU initial location addresses and\nthe guest may fail to boot if the original initrd memory was changed.\n\nThis fixes the problem by only adding the /chosen node at the reset time\nto prevent the original QEMU\u0027s linux,initrd-start/linux,initrd-end to\noverride the updated addresses.\n\nThis only treats /chosen differently as we know there is a special case\nalready and it is unlikely anything else will need to change /chosen at CAS\nwe are better off not touching /chosen after we handed it over to SLOF.\n\nSigned-off-by: Alexey Kardashevskiy \u003caik@ozlabs.ru\u003e\nMessage-Id: \u003c20191024041308.5673-1-aik@ozlabs.ru\u003e\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Laurent Vivier \u003clvivier@redhat.com\u003e\n"
    },
    {
      "commit": "0a83b47055246d3942084f03fc54731c4fb9b731",
      "tree": "15a0f96fe9cac621b126b962c1f8c5ea7089e225",
      "parents": [
        "35886de140b7ff781b775d2da5e7475e8a8cb4c6"
      ],
      "author": {
        "name": "Greg Kurz",
        "email": "groug@kaod.org",
        "time": "Thu Oct 24 16:27:33 2019 +0200"
      },
      "committer": {
        "name": "Laurent Vivier",
        "email": "lvivier@redhat.com",
        "time": "Mon Nov 18 11:50:25 2019 +0100"
      },
      "message": "ppc: Skip partially initialized vCPUs in \u0027info pic\u0027\n\nCPU_FOREACH() can race with vCPU hotplug/unplug on sPAPR machines, ie.\nwe may try to print out info about a vCPU with a NULL presenter pointer.\n\nCheck that in order to prevent QEMU from crashing.\n\nSigned-off-by: Greg Kurz \u003cgroug@kaod.org\u003e\nMessage-Id: \u003c157192725327.3146912.12047076483178652551.stgit@bahia.lan\u003e\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Laurent Vivier \u003clvivier@redhat.com\u003e\n"
    },
    {
      "commit": "35886de140b7ff781b775d2da5e7475e8a8cb4c6",
      "tree": "4c1b3625f85ecacd3b81a906e55084f754b2d1ad",
      "parents": [
        "0990ce6a2e900d0bdda7f3ecdc991746f63551fb"
      ],
      "author": {
        "name": "Greg Kurz",
        "email": "groug@kaod.org",
        "time": "Thu Oct 24 16:27:27 2019 +0200"
      },
      "committer": {
        "name": "Laurent Vivier",
        "email": "lvivier@redhat.com",
        "time": "Mon Nov 18 11:50:16 2019 +0100"
      },
      "message": "xive, xics: Fix reference counting on CPU objects\n\nWhen a VCPU gets connected to the XIVE interrupt controller, we add a\nconst link targetting the CPU object to the TCTX object. Similar links\nare added to the ICP object when using the XICS interrupt controller.\n\nAs explained in \u003cqom/object.h\u003e:\n\n * The caller must ensure that @target stays alive as long as\n * this property exists.  In the case @target is a child of @obj,\n * this will be the case.  Otherwise, the caller is responsible for\n * taking a reference.\n\nWe\u0027re in the latter case for both XICS and XIVE. Add the missing\ncalls to object_ref() and object_unref().\n\nThis doesn\u0027t fix any known issue because the life cycle of the TCTX or\nICP happens to be shorter than the one of the CPU or XICS fabric, but\nbetter safe than sorry.\n\nSigned-off-by: Greg Kurz \u003cgroug@kaod.org\u003e\nReviewed-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nMessage-Id: \u003c157192724770.3146912.15400869269097231255.stgit@bahia.lan\u003e\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Laurent Vivier \u003clvivier@redhat.com\u003e\n"
    },
    {
      "commit": "0990ce6a2e900d0bdda7f3ecdc991746f63551fb",
      "tree": "38bc8fa17c3a2477949aabb8fc852c45795fe1e7",
      "parents": [
        "36609b4fa36f0ac934874371874416f7533a5408"
      ],
      "author": {
        "name": "Greg Kurz",
        "email": "groug@kaod.org",
        "time": "Thu Oct 24 16:27:22 2019 +0200"
      },
      "committer": {
        "name": "Laurent Vivier",
        "email": "lvivier@redhat.com",
        "time": "Mon Nov 18 11:49:11 2019 +0100"
      },
      "message": "ppc: Add intc_destroy() handlers to SpaprInterruptController/PnvChip\n\nSpaprInterruptControllerClass and PnvChipClass have an intc_create() method\nthat calls the appropriate routine, ie. icp_create() or xive_tctx_create(),\nto establish the link between the VCPU and the presenter component of the\ninterrupt controller during realize.\n\nThere aren\u0027t any symmetrical call to be called when the VCPU gets unrealized\nthough. It is assumed that object_unparent() is the only thing to do.\n\nThis is questionable because the parenting logic around the CPU and\npresenter objects is really an implementation detail of the interrupt\ncontroller. It shouldn\u0027t be open-coded in the machine code.\n\nFix this by adding an intc_destroy() method that undoes what was done in\nintc_create(). Also NULLify the presenter pointers to avoid having\nstale pointers around. This will allow to reliably check if a vCPU has\na valid presenter.\n\nSigned-off-by: Greg Kurz \u003cgroug@kaod.org\u003e\nMessage-Id: \u003c157192724208.3146912.7254684777515287626.stgit@bahia.lan\u003e\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Laurent Vivier \u003clvivier@redhat.com\u003e\n"
    },
    {
      "commit": "369e8f5bbd8a5301bde6fae22b93fe9288c552a5",
      "tree": "729c01c31556a664918de331e436168379c21bf6",
      "parents": [
        "19bef037fe096b17edda103fd513ce6451da23c8"
      ],
      "author": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Wed Oct 23 12:19:56 2019 +0200"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Mon Nov 18 10:33:29 2019 +0000"
      },
      "message": "buildfix: update texinfo menu\n\nBuild error message:\nqemu-doc.texi:34: node `Top\u0027 lacks menu item for `Recently removed features\u0027 despite being its Up target\n\nFixes: 3264ffced3d0 (\"dirty-bitmaps: remove deprecated autoload parameter\")\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nReviewed-by: John Snow \u003cjsnow@redhat.com\u003e\nReviewed-by: Markus Armbruster \u003carmbru@redhat.com\u003e\nTested-by: Laszlo Ersek \u003clersek@redhat.com\u003e\nMessage-id: 20191023101956.19120-1-kraxel@redhat.com\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "19bef037fe096b17edda103fd513ce6451da23c8",
      "tree": "bc097d63bbc7de8d381198742e99443c32743612",
      "parents": [
        "e10bf1fe00eceb2dbff973f5939036ef3f3c77a4",
        "6911fde41006b2afe3510755c4cff259ca56c1d9"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Fri Nov 15 11:22:33 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Fri Nov 15 11:22:33 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/palmer/tags/riscv-for-master-4.2-rc2\u0027 into staging\n\nRISC-V Fixes for 4.2-rc2\n\nThis contains a handful of patches that I\u0027d like to target for 4.2:\n\n* OpenSBI upgrade to 0.5\n* Increase in the flash size of the virt board.\n* A non-functional cleanup.\n* A cleanup to our MIP handling that avoids atomics.\n\nThis passes \"make check\" and boots OpenEmbedded for me.\n\n# gpg: Signature made Thu 14 Nov 2019 18:39:27 GMT\n# gpg:                using RSA key 00CE76D1834960DFCE886DF8EF4CA1502CCBAB41\n# gpg:                issuer \"palmer@dabbelt.com\"\n# gpg: Good signature from \"Palmer Dabbelt \u003cpalmer@dabbelt.com\u003e\" [unknown]\n# gpg:                 aka \"Palmer Dabbelt \u003cpalmer@sifive.com\u003e\" [unknown]\n# gpg: WARNING: This key is not certified with a trusted signature!\n# gpg:          There is no indication that the signature belongs to the owner.\n# Primary key fingerprint: 00CE 76D1 8349 60DF CE88  6DF8 EF4C A150 2CCB AB41\n\n* remotes/palmer/tags/riscv-for-master-4.2-rc2:\n  riscv/virt: Increase flash size\n  opensbi: Upgrade from v0.4 to v0.5\n  target/riscv: Remove atomic accesses to MIP CSR\n  remove unnecessary ifdef TARGET_RISCV64\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "6911fde41006b2afe3510755c4cff259ca56c1d9",
      "tree": "a74b8726dcf672259e20d3594504fae18219b430",
      "parents": [
        "3158add2bd12b5db812b8362bebbaba1e9d4d265"
      ],
      "author": {
        "name": "Alistair Francis",
        "email": "alistair.francis@wdc.com",
        "time": "Wed Nov 06 16:47:20 2019 -0800"
      },
      "committer": {
        "name": "Palmer Dabbelt",
        "email": "palmer@dabbelt.com",
        "time": "Thu Nov 14 09:53:28 2019 -0800"
      },
      "message": "riscv/virt: Increase flash size\n\nCoreboot developers have requested that they have at least 32MB of flash\nto load binaries. We currently have 32MB of flash, but it is split in\ntwo to allow loading two flash binaries. Let\u0027s increase the flash size\nfrom 32MB to 64MB to ensure we have a single region that is 32MB.\n\nNo QEMU release has include flash in the RISC-V virt machine, so this\nisn\u0027t a breaking change.\n\nSigned-off-by: Alistair Francis \u003calistair.francis@wdc.com\u003e\nSigned-off-by: Palmer Dabbelt \u003cpalmer@sifive.com\u003e\n"
    },
    {
      "commit": "3158add2bd12b5db812b8362bebbaba1e9d4d265",
      "tree": "8589b5b249867f978f631b5d712013ec97c80e1d",
      "parents": [
        "7ec5d3030b9293ab631dd653f64bc933b6c82e65"
      ],
      "author": {
        "name": "Alistair Francis",
        "email": "alistair.francis@wdc.com",
        "time": "Fri Oct 25 16:15:45 2019 -0700"
      },
      "committer": {
        "name": "Palmer Dabbelt",
        "email": "palmer@dabbelt.com",
        "time": "Thu Nov 14 09:53:28 2019 -0800"
      },
      "message": "opensbi: Upgrade from v0.4 to v0.5\n\nThis release has:\n    Lot of critical fixes\n    Hypervisor extension support\n    SBI v0.2 base extension support\n    Debug prints support\n    Handle traps when doing unpriv load/store\n    Allow compiling without FP support\n    Use git describe to generate boot-time banner\n    Andes AE350 platform support\n\nShortLog:\n\nAnup Patel (14):\n      platform: sifive/fu540: Move FDT further up\n      lib: Allow compiling without FP support\n      lib: Introduce sbi_dprintf() API\n      lib: Use sbi_dprintf() for invalid CSRs\n      lib: Handle traps when doing unpriv load/store in get_insn()\n      lib: Delegate supervisor ecall to HS-mode when H extension available\n      lib: Extend sbi_hart_switch_mode() to support hypervisor extension\n      lib: Extend sbi_trap_redirect() for hypervisor extension\n      lib: Redirect WFI trapped from VS/VU mode to HS-mode\n      include: Extend get_insn() to read instruction from VS/VU mode\n      lib: Emulate HTIMEDELTA CSR for platforms not having TIME CSR\n      Makefile: Minor fix in OPENSBI_VERSION_GIT\n      lib: Fix coldboot race condition observed on emulators/simulators\n      include: Bump-up version to 0.5\n\nAtish Patra (16):\n      lib: Provide an atomic exchange function unsigned long\n      lib: Fix race conditions in tlb fifo access.\n      platform: Remove the ipi_sync method from all platforms.\n      lib: Fix timer for 32 bit\n      lib: Support atomic swap instructions\n      lib: Upgrade to full flush if size is at least threshold\n      docs: Update the fu540 platform guide as per U-Boot documents.\n      lib: Change tlb range flush threshold to 4k page instead of 1G\n      lib: provide a platform specific tlb range flush threshold\n      lib: Fix tlb flush range limit value\n      Test: Move test payload related code out of interface header\n      lib: Align error codes as per SBI specification.\n      lib: Rename existing SBI implementation as 0.1.\n      lib: Remove redundant variable assignment\n      lib: Implement SBI v0.2\n      lib: Provide a platform hook to implement vendor specific SBI extensions.\n\nBin Meng (6):\n      platform: sifive: fu540: Use standard value string for cpu node status\n      README: Document 32-bit / 64-bit images build\n      treewide: Use conventional names for 32-bit and 64-bit\n      platform: sifive: fu540: Expand FDT size before any patching\n      firmware: Use macro instead of magic number for boot status\n      docs: platform: Update descriptions for qemu/sifive_u support\n\nDamien Le Moal (4):\n      kendryte/k210: Use sifive UART driver\n      kendryte/k210: remove sysctl code\n      README: Update license information\n      kendryte/k210: remove unused file\n\nGeorg Kotheimer (1):\n      utils: Use cpu_to_fdt32() when writing to fdt\n\nJacob Garber (4):\n      lib: Use bitwise \u0026 instead of boolean \u0026\u0026\n      lib: Use correct type for return value\n      lib: Prevent unintended sign extensions\n      lib: Correct null pointer check\n\nLukas Auer (1):\n      firmware: do not use relocated _boot_status before it is valid\n\nNylon Chen (3):\n      firmware: Fix the loop condition of _wait_relocate_copy_done section\n      platform: Add Andes AE350 initial support\n      scripts: Add AE350 to platform list in the binary archive script\n\nPalmer Dabbelt (1):\n      Include `git describe` in OpenSBI\n\nZong Li (1):\n      Write MSIP by using memory-mapped control register\n\nSigned-off-by: Alistair Francis \u003calistair.francis@wdc.com\u003e\nReviewed-by: Palmer Dabbelt \u003cpalmer@sifive.com\u003e\nSigned-off-by: Palmer Dabbelt \u003cpalmer@sifive.com\u003e\nSigned-off-by: Palmer Dabbelt \u003cpalmer@dabbelt.com\u003e\n"
    },
    {
      "commit": "7ec5d3030b9293ab631dd653f64bc933b6c82e65",
      "tree": "d296987c0cce26292ad67b885672f9104c2f7b4b",
      "parents": [
        "f480f6e8c5ca9a27c046e3a273a4693d2475bdc2"
      ],
      "author": {
        "name": "Alistair Francis",
        "email": "alistair.francis@wdc.com",
        "time": "Tue Oct 08 15:04:18 2019 -0700"
      },
      "committer": {
        "name": "Palmer Dabbelt",
        "email": "palmer@dabbelt.com",
        "time": "Thu Nov 14 09:53:28 2019 -0800"
      },
      "message": "target/riscv: Remove atomic accesses to MIP CSR\n\nInstead of relying on atomics to access the MIP register let\u0027s update\nour helper function to instead just lock the IO mutex thread before\nwriting. This follows the same concept as used in PPC for handling\ninterrupts\n\nSigned-off-by: Alistair Francis \u003calistair.francis@wdc.com\u003e\nReviewed-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nReviewed-by: Palmer Dabbelt \u003cpalmer@dabbelt.com\u003e\nSigned-off-by: Palmer Dabbelt \u003cpalmer@sifive.com\u003e\nSigned-off-by: Palmer Dabbelt \u003cpalmer@dabbelt.com\u003e\n"
    },
    {
      "commit": "f480f6e8c5ca9a27c046e3a273a4693d2475bdc2",
      "tree": "6320c7570733dc304d4b040f400ea7421c6bbf3a",
      "parents": [
        "aa464db69b40b4b695be31085e6d2f1e90956c89"
      ],
      "author": {
        "name": "hiroyuki.obinata",
        "email": "hiroyuki.obinata@gmail.com",
        "time": "Wed Oct 30 09:23:18 2019 +0900"
      },
      "committer": {
        "name": "Palmer Dabbelt",
        "email": "palmer@dabbelt.com",
        "time": "Thu Nov 14 09:53:28 2019 -0800"
      },
      "message": "remove unnecessary ifdef TARGET_RISCV64\n\nSigned-off-by: Hiroyuki Obinata \u003chiroyuki.obinata@gmail.com\u003e\nSigned-off-by: Palmer Dabbelt \u003cpalmer@sifive.com\u003e\n"
    },
    {
      "commit": "e10bf1fe00eceb2dbff973f5939036ef3f3c77a4",
      "tree": "ff3689636354f390937b591d7dabdc32bbf846be",
      "parents": [
        "aa464db69b40b4b695be31085e6d2f1e90956c89",
        "0221d73ce6a8e075adaa0a35a6ef853d2652b855"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Thu Nov 14 10:44:32 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Thu Nov 14 10:44:32 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/kraxel/tags/seabios-20191113-pull-request\u0027 into staging\n\nseabios: update to pre-1.13 snapshot (with ahci fix included).\n\n# gpg: Signature made Wed 13 Nov 2019 14:03:25 GMT\n# gpg:                using RSA key 4CB6D8EED3E87138\n# gpg: Good signature from \"Gerd Hoffmann (work) \u003ckraxel@redhat.com\u003e\" [full]\n# gpg:                 aka \"Gerd Hoffmann \u003cgerd@kraxel.org\u003e\" [full]\n# gpg:                 aka \"Gerd Hoffmann (private) \u003ckraxel@gmail.com\u003e\" [full]\n# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138\n\n* remotes/kraxel/tags/seabios-20191113-pull-request:\n  seabios: update to pre-1.13 snapshot\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "0221d73ce6a8e075adaa0a35a6ef853d2652b855",
      "tree": "78e1d2f87e704ad5b5aaa14fe11b66dd1433611c",
      "parents": [
        "9f2ce35dfa4ea4a31dbb765dd02bed2500891887"
      ],
      "author": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Wed Nov 06 13:13:48 2019 +0100"
      },
      "committer": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Wed Nov 13 15:02:21 2019 +0100"
      },
      "message": "seabios: update to pre-1.13 snapshot\n\nseabios 1.13 will be released later this month.  This patch updates the\nseabios submodule and binaries in qemu to a snapshot of git master.\nThat will increase the test coverage of the upcoming seabios release and\nwill also make the number of changes smaller when we update to the final\n1.13 release during qemu code freeze for 4.2.\n\nv3: add ahci bugfix\nv2: build binaries with gcc 4.8.5 instead of gcc 8.3.1 (rhel7).\n\ngit shortlog rel-1.12.1..\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nDavid Woodhouse (2):\n      csm: Sanitise alignment constraint in Legacy16GetTableAddress\n      csm: Fix boot priority translation\n\nDenis Plotnikov (1):\n      virtio: extend virtio queue size to 256\n\nGerd Hoffmann (21):\n      vga: move modelist from bochsvga.c to new svgamodes.c\n      vga: make memcpy_high() public\n      vga: add atiext driver\n      vga: add ati bios tables\n      vbe: add edid support.\n      ati: add edid support.\n      bochsvga: add edid support.\n      bochsdisplay: add edid support.\n      bochsdisplay: parse resolution from edid.\n      add get_keystroke_full() helper\n      bootmenu: add support for more than 9 entries\n      optionrom: disallow int19 redirect for pnp roms.\n      ati-vga: make less verbose\n      ati-vga: fix ati_read()\n      ati-vga: make i2c register and bits configurable\n      ati-vga: try vga ddc first\n      ati-vga: add rage128 edid support\n      bochsdisplay: add copyright and license to bochsdisplay.c\n      ramfb: add copyright and license to ramfb.c\n      cp437: add license to cp437.c\n      ahci: zero-initialize port struct\n\nJoseph Pacheco-Corwin (1):\n      bootsplash: Added support for 16/24/32bpp in one function\n\nKevin O\u0027Connor (10):\n      output: Avoid thunking to 16bit mode in printf() if no vgabios\n      docs: Update mailing list archive links\n      docs: Fix cut-and-paste error in Mailinglist.md archive link\n      usb-ehci: Clear pipe token on pipe reallocate\n      pciinit: Use %pP shorthand for printing device ids in intel_igd_setup()\n      virtio-pci: Use %pP format in dprintf() calls\n      Makefile: Build with -Wno-address-of-packed-member\n      svgamodes: Add copyright notice to vgasrc/svgamodes.c\n      docs: Add developer-certificate-of-origin\n      docs: Note release date for v1.12.1\n\nLiran Alon (1):\n      pvscsi: ring_desc do not have to be page aligned\n\nSam Eiderman (6):\n      smbios: Add missing zero byte to Type 0\n      geometry: Read LCHS from fw_cfg\n      boot: Reorder functions in boot.c\n      geometry: Add boot_lchs_find_*() utility functions\n      config: Add toggle for bootdevice information\n      geometry: Apply LCHS values for boot devices\n\nStefan Berger (2):\n      tcgbios: Use table to convert hash to buffer size\n      tcgbios: Implement TPM 2.0 menu item to activate and deactivate PCR banks\n\nStefano Garzarella (1):\n      qemu: avoid debug prints if debugcon is not enabled\n\nStephen Douthit (1):\n      tpm: Check for TPM related ACPI tables before attempting hw probe\n\nUwe Kleine-König (3):\n      cbvga: reuse svga modes definitions from svgamodes.c\n      Add additional resolutions for 16:9 displays: 1600x900 and 2560x1440\n      Remove dos line endings introduced in the last two commits\n\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\n"
    },
    {
      "commit": "aa464db69b40b4b695be31085e6d2f1e90956c89",
      "tree": "d21c651b31d07a65d96f9c5ef826f666bb24e4dc",
      "parents": [
        "ef45f7b3788caf7d2501702eddd912868f9c008e"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 12 18:40:02 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 12 18:40:02 2019 +0000"
      },
      "message": "Update version for v4.2.0-rc1 release\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "ef45f7b3788caf7d2501702eddd912868f9c008e",
      "tree": "c2ebd155ae70ba8dc2e535de89bfe91b441f4f97",
      "parents": [
        "04d57cfa7eec070f54978a3c7b313428e4a282cc",
        "0f1f2d4596aee037d3ccbcf10592466daa54107f"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 12 17:46:57 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 12 17:46:57 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/vivier2/tags/linux-user-for-4.2-pull-request\u0027 into staging\n\nFix CID 1407221 and stime()\n\n# gpg: Signature made Tue 12 Nov 2019 16:16:43 GMT\n# gpg:                using RSA key CD2F75DDC8E3A4DC2E4F5173F30C38BD3F2FBE3C\n# gpg:                issuer \"laurent@vivier.eu\"\n# gpg: Good signature from \"Laurent Vivier \u003clvivier@redhat.com\u003e\" [full]\n# gpg:                 aka \"Laurent Vivier \u003claurent@vivier.eu\u003e\" [full]\n# gpg:                 aka \"Laurent Vivier (Red Hat) \u003clvivier@redhat.com\u003e\" [full]\n# Primary key fingerprint: CD2F 75DD C8E3 A4DC 2E4F  5173 F30C 38BD 3F2F BE3C\n\n* remotes/vivier2/tags/linux-user-for-4.2-pull-request:\n  linux-user: remove host stime() syscall\n  linux-user: fix missing break\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "04d57cfa7eec070f54978a3c7b313428e4a282cc",
      "tree": "15404cc99c52880e123d7dca695278e694c5ab05",
      "parents": [
        "2a7e7c3e103a5c29af7c583390c243d85a2527e8",
        "c49a41b0b9e6c77e24ac2be4d95c54d62bc7b092"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 12 16:10:43 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 12 16:10:43 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/edgar/tags/edgar/xilinx-next-2019-11-12.for-upstream\u0027 into staging\n\nFor upstream\n\n# gpg: Signature made Tue 12 Nov 2019 15:41:43 GMT\n# gpg:                using RSA key AC44FEDC14F7F1EBEDBF415129C596780F6BCA83\n# gpg: Good signature from \"Edgar E. Iglesias (Xilinx key) \u003cedgar.iglesias@xilinx.com\u003e\" [unknown]\n# gpg:                 aka \"Edgar E. Iglesias \u003cedgar.iglesias@gmail.com\u003e\" [full]\n# Primary key fingerprint: AC44 FEDC 14F7 F1EB EDBF  4151 29C5 9678 0F6B CA83\n\n* remotes/edgar/tags/edgar/xilinx-next-2019-11-12.for-upstream:\n  target/microblaze: Plug temp leak around eval_cond_jmp()\n  target/microblaze: Plug temp leaks with delay slot setup\n  target/microblaze: Plug temp leaks for loads/stores\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "0f1f2d4596aee037d3ccbcf10592466daa54107f",
      "tree": "a179b01554367218ca1a52cda4bab7b5202f9b80",
      "parents": [
        "c0cb880153ddf0366af09caecb40cc14dcc1991e"
      ],
      "author": {
        "name": "Laurent Vivier",
        "email": "laurent@vivier.eu",
        "time": "Tue Nov 12 15:25:56 2019 +0100"
      },
      "committer": {
        "name": "Laurent Vivier",
        "email": "laurent@vivier.eu",
        "time": "Tue Nov 12 17:05:57 2019 +0100"
      },
      "message": "linux-user: remove host stime() syscall\n\nstime() has been withdrawn from glibc\n(12cbde1dae6f \"Use clock_settime to implement stime; withdraw stime.\")\n\nImplement the target stime() syscall using host\nclock_settime(CLOCK_REALTIME, ...) as it is done internally in glibc.\n\nTested qemu-ppc/x86_64 with:\n\n\t#include \u003ctime.h\u003e\n\t#include \u003cstdio.h\u003e\n\n\tint main(void)\n\t{\n\t\ttime_t t;\n\t\tint ret;\n\n\t\t/* date -u -d\"2019-11-12T15:11:00\" \"+%s\" */\n\t\tt \u003d 1573571460;\n\t\tret \u003d stime(\u0026t);\n\t\tprintf(\"ret %d\\n\", ret);\n\t\treturn 0;\n\t}\n\n        # date; ./stime; date\n        Tue Nov 12 14:18:32 UTC 2019\n        ret 0\n        Tue Nov 12 15:11:00 UTC 2019\n\nBuglink: https://bugs.launchpad.net/qemu/+bug/1852115\nReported-by: Cole Robinson \u003ccrobinso@redhat.com\u003e\nSigned-off-by: Laurent Vivier \u003claurent@vivier.eu\u003e\nReviewed-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nMessage-Id: \u003c20191112142556.6335-1-laurent@vivier.eu\u003e\n"
    },
    {
      "commit": "c0cb880153ddf0366af09caecb40cc14dcc1991e",
      "tree": "9db042ff3ba1522da64cbe9ef1d92b2dcfc82dc9",
      "parents": [
        "2a7e7c3e103a5c29af7c583390c243d85a2527e8"
      ],
      "author": {
        "name": "Laurent Vivier",
        "email": "laurent@vivier.eu",
        "time": "Tue Nov 12 11:50:55 2019 +0100"
      },
      "committer": {
        "name": "Laurent Vivier",
        "email": "laurent@vivier.eu",
        "time": "Tue Nov 12 17:05:24 2019 +0100"
      },
      "message": "linux-user: fix missing break\n\nReported by Coverity (CID 1407221)\nFixes: a2d866827bd8 (\"linux-user: Support for NETLINK socket options\")\ncc: Josh Kunz \u003cjkz@google.com\u003e\nSigned-off-by: Laurent Vivier \u003claurent@vivier.eu\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nMessage-Id: \u003c20191112105055.32269-1-laurent@vivier.eu\u003e\n"
    },
    {
      "commit": "c49a41b0b9e6c77e24ac2be4d95c54d62bc7b092",
      "tree": "13b61b8cb77ba75b2683fba66e0a260ca3f88ed4",
      "parents": [
        "f91c60f0cae9fc6c9ea823a6961c23acd96966b4"
      ],
      "author": {
        "name": "Edgar E. Iglesias",
        "email": "edgar.iglesias@xilinx.com",
        "time": "Wed Nov 06 14:40:08 2019 +0100"
      },
      "committer": {
        "name": "Edgar E. Iglesias",
        "email": "edgar.iglesias@xilinx.com",
        "time": "Tue Nov 12 16:35:26 2019 +0100"
      },
      "message": "target/microblaze: Plug temp leak around eval_cond_jmp()\n\nPlug temp leak around eval_cond_jmp().\n\nReviewed-by: Luc Michel \u003cluc.michel@greensocs.com\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nReviewed-by: Alistair Francis \u003calistair.francis@wdc.com\u003e\nReviewed-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nSigned-off-by: Edgar E. Iglesias \u003cedgar.iglesias@xilinx.com\u003e\n"
    },
    {
      "commit": "f91c60f0cae9fc6c9ea823a6961c23acd96966b4",
      "tree": "cd7cd138da2c8253aced5ef4f5fc21513c3c072f",
      "parents": [
        "a6338015269443245f1f9f0eb3fcaf171a35765b"
      ],
      "author": {
        "name": "Edgar E. Iglesias",
        "email": "edgar.iglesias@xilinx.com",
        "time": "Wed Nov 06 14:26:53 2019 +0100"
      },
      "committer": {
        "name": "Edgar E. Iglesias",
        "email": "edgar.iglesias@xilinx.com",
        "time": "Tue Nov 12 16:35:26 2019 +0100"
      },
      "message": "target/microblaze: Plug temp leaks with delay slot setup\n\nPlug temp leaks with delay slot setup.\n\nReviewed-by: Luc Michel \u003cluc.michel@greensocs.com\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nReviewed-by: Alistair Francis \u003calistair.francis@wdc.com\u003e\nReviewed-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nSigned-off-by: Edgar E. Iglesias \u003cedgar.iglesias@xilinx.com\u003e\n"
    },
    {
      "commit": "a6338015269443245f1f9f0eb3fcaf171a35765b",
      "tree": "727ea2d978ddc0f40ed2e52ccbc89e00dee3864e",
      "parents": [
        "039e285e095c20a88e623b927654b161aaf9d914"
      ],
      "author": {
        "name": "Edgar E. Iglesias",
        "email": "edgar.iglesias@xilinx.com",
        "time": "Thu Aug 08 02:30:06 2019 +0200"
      },
      "committer": {
        "name": "Edgar E. Iglesias",
        "email": "edgar.iglesias@xilinx.com",
        "time": "Tue Nov 12 16:35:26 2019 +0100"
      },
      "message": "target/microblaze: Plug temp leaks for loads/stores\n\nSimplify endian reversion of address also plugging TCG temp\nleaks for loads/stores.\n\nSuggested-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nReviewed-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nReviewed-by: Luc Michel \u003cluc.michel@greensocs.com\u003e\nReviewed-by: Alistair Francis \u003calistair.francis@wdc.com\u003e\nSigned-off-by: Edgar E. Iglesias \u003cedgar.iglesias@xilinx.com\u003e\n"
    },
    {
      "commit": "2a7e7c3e103a5c29af7c583390c243d85a2527e8",
      "tree": "1fa66d329a0031fcdc7b7ac7117bdf921236a1d8",
      "parents": [
        "039e285e095c20a88e623b927654b161aaf9d914",
        "3fb356cc86461a14450802e14fa79e8436dbbf31"
      ],
      "author": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 12 14:51:00 2019 +0000"
      },
      "committer": {
        "name": "Peter Maydell",
        "email": "peter.maydell@linaro.org",
        "time": "Tue Nov 12 14:51:00 2019 +0000"
      },
      "message": "Merge remote-tracking branch \u0027remotes/stsquad/tags/pull-testing-and-tcg-121119-1\u0027 into staging\n\nTesting and plugins for rc1\n\n  - add plugin API versioning\n  - tests/vm add netbsd autoinstall\n  - disable ipmi-bt-test for non-Linux\n  - single-thread make check\n\n# gpg: Signature made Tue 12 Nov 2019 14:34:30 GMT\n# gpg:                using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44\n# gpg: Good signature from \"Alex Bennée (Master Work Key) \u003calex.bennee@linaro.org\u003e\" [full]\n# Primary key fingerprint: 6685 AE99 E751 67BC AFC8  DF35 FBD0 DB09 5A9E 2A44\n\n* remotes/stsquad/tags/pull-testing-and-tcg-121119-1:\n  tcg plugins: expose an API version concept\n  .travis.yml: don\u0027t run make check with multiple jobs\n  tests/vm: support sites with sha512 checksums\n  tests: only run ipmi-bt-test if CONFIG_LINUX\n  tests/vm: update netbsd to version 8.1\n  tests/vm: use console_consume for netbsd\n  tests/vm: add console_consume helper\n  tests/vm: netbsd autoinstall, using serial console\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n"
    },
    {
      "commit": "3fb356cc86461a14450802e14fa79e8436dbbf31",
      "tree": "1fa66d329a0031fcdc7b7ac7117bdf921236a1d8",
      "parents": [
        "05273a43af5f9e71152ad1b877bc3a898857e989"
      ],
      "author": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Mon Nov 04 13:18:36 2019 +0000"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 14:32:55 2019 +0000"
      },
      "message": "tcg plugins: expose an API version concept\n\nThis is a very simple versioning API which allows the plugin\ninfrastructure to check the API a plugin was built against. We also\nexpose a min/cur API version to the plugin via the info block in case\nit wants to avoid using old deprecated APIs in the future.\n\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nReviewed-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nReviewed-by: Robert Foley \u003crobert.foley@linaro.org\u003e\n"
    },
    {
      "commit": "05273a43af5f9e71152ad1b877bc3a898857e989",
      "tree": "4165a98d2856b63d4427207e13331e06d26c8604",
      "parents": [
        "5b4b4865f44ed27d6aeea1d05e8314fce9cdc136"
      ],
      "author": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Thu Nov 07 10:47:03 2019 +0000"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 14:32:55 2019 +0000"
      },
      "message": ".travis.yml: don\u0027t run make check with multiple jobs\n\nLet\u0027s challenge the convention that doing more at a time helps. It\ncertainly doesn\u0027t tell you unambiguously where in the test cycle you\nwere before the test hangs and exceeds the job time limit.\n\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\n"
    },
    {
      "commit": "5b4b4865f44ed27d6aeea1d05e8314fce9cdc136",
      "tree": "a054e55daab5d0465a817da283a620eb9895e22b",
      "parents": [
        "860eacec5852e66ac1425ab636ea245afcfa9283"
      ],
      "author": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Mon Nov 04 17:31:44 2019 +0000"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 14:32:55 2019 +0000"
      },
      "message": "tests/vm: support sites with sha512 checksums\n\nThe NetBSD project uses SHA512 for its checksums so lets support that\nin the download helper.\n\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nTested-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\n"
    },
    {
      "commit": "860eacec5852e66ac1425ab636ea245afcfa9283",
      "tree": "fcf973307b9252934a1a0cfff6cedfdd0535473d",
      "parents": [
        "2548b4a7d362d2e8504f97bcc9583fd45dc641b3"
      ],
      "author": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Fri Nov 01 13:36:22 2019 +0000"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 14:32:55 2019 +0000"
      },
      "message": "tests: only run ipmi-bt-test if CONFIG_LINUX\n\nThis test has been unstable on NetBSD for awhile. It seems the\nmechanism used to listen to a random port is a Linux-ism (although a\nreceived wisdom Linux-ism rather than a well documented one). As\nworking around would add more hard to test complexity to the test I\u0027ve\ngone for the easier option of making it CONFIG_LINUX only.\n\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nCc: Corey Minyard \u003ccminyard@mvista.com\u003e\nCc: Kamil Rytarowski \u003ckamil@netbsd.org\u003e\n"
    },
    {
      "commit": "2548b4a7d362d2e8504f97bcc9583fd45dc641b3",
      "tree": "53d9d819181f9e2836a75d871bbead983ac82382",
      "parents": [
        "00963aca8b5a4e34e7b7abac18e943930284fae2"
      ],
      "author": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Thu Oct 31 09:53:06 2019 +0100"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 14:32:55 2019 +0000"
      },
      "message": "tests/vm: update netbsd to version 8.1\n\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\nMessage-Id: \u003c20191031085306.28888-5-kraxel@redhat.com\u003e\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nTested-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\n"
    },
    {
      "commit": "00963aca8b5a4e34e7b7abac18e943930284fae2",
      "tree": "534c404d76df10c5232eecbd20479a42e86e2b50",
      "parents": [
        "6c4f0416be5805962a77af240a41fae5eaffda8b"
      ],
      "author": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Thu Oct 31 09:53:05 2019 +0100"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 14:32:55 2019 +0000"
      },
      "message": "tests/vm: use console_consume for netbsd\n\nUse new helper to read all pending console output,\nnot just a single char.  Unblocks installer boot.\n\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\nMessage-Id: \u003c20191031085306.28888-4-kraxel@redhat.com\u003e\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nTested-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\n"
    },
    {
      "commit": "6c4f0416be5805962a77af240a41fae5eaffda8b",
      "tree": "397c546d786c88bdca6a27b8d81b7b91313d66bb",
      "parents": [
        "af093bc937ba7813ba3a091ddab64d2f813740ea"
      ],
      "author": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Thu Oct 31 09:53:04 2019 +0100"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 14:32:55 2019 +0000"
      },
      "message": "tests/vm: add console_consume helper\n\nHelper function to read all console output.\n\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\nMessage-Id: \u003c20191031085306.28888-3-kraxel@redhat.com\u003e\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nTested-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\n"
    },
    {
      "commit": "af093bc937ba7813ba3a091ddab64d2f813740ea",
      "tree": "43099053a278bb10318383b9be85e95a6edd9fe2",
      "parents": [
        "039e285e095c20a88e623b927654b161aaf9d914"
      ],
      "author": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@redhat.com",
        "time": "Thu Oct 31 09:53:03 2019 +0100"
      },
      "committer": {
        "name": "Alex Bennée",
        "email": "alex.bennee@linaro.org",
        "time": "Tue Nov 12 14:32:55 2019 +0000"
      },
      "message": "tests/vm: netbsd autoinstall, using serial console\n\nInstead of fetching the prebuilt image from patchew download the install\niso and prepare the image locally.  Install to disk, using the serial\nconsole.  Create qemu user, configure ssh login.  Install packages\nneeded for qemu builds.\n\nSigned-off-by: Gerd Hoffmann \u003ckraxel@redhat.com\u003e\nReviewed-by: Kamil Rytarowski \u003cn54@gmx.com\u003e\nTested-by: Thomas Huth \u003cthuth@redhat.com\u003e\n[ehabkost: rebased to latest qemu.git master]\nSigned-off-by: Eduardo Habkost \u003cehabkost@redhat.com\u003e\nMessage-Id: \u003c20191031085306.28888-2-kraxel@redhat.com\u003e\nSigned-off-by: Alex Bennée \u003calex.bennee@linaro.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\nTested-by: Philippe Mathieu-Daudé \u003cphilmd@redhat.com\u003e\n"
    }
  ],
  "next": "039e285e095c20a88e623b927654b161aaf9d914"
}
