qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] eaf1ff: spapr: Clarify why DR connectors aren


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] eaf1ff: spapr: Clarify why DR connectors aren't user creat...
Date: Fri, 30 Oct 2020 04:55:52 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: eaf1ffbe15fe67612c63d928415ee04eb4836dc7
      
https://github.com/qemu/qemu/commit/eaf1ffbe15fe67612c63d928415ee04eb4836dc7
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr_drc.c

  Log Message:
  -----------
  spapr: Clarify why DR connectors aren't user creatable

DR connector is a device that emulates a firmware abstraction used by PAPR
compliant guests to manage hotplug/dynamic-reconfiguration of PHBs, PCI
devices, memory, and CPUs.

It is internally created by the spapr platform and requires to be owned by
either the machine (PHBs, CPUs, memory) or by a PHB (PCI devices).

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160250199940.765467.6896806997161856576.stgit@bahia.lan>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: dff669d6a15fb92b063cb5aa691b4bb498727404
      
https://github.com/qemu/qemu/commit/dff669d6a15fb92b063cb5aa691b4bb498727404
  Author: Laurent Vivier <lvivier@redhat.com>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr_events.c

  Log Message:
  -----------
  ppc/spapr: re-assert IRQs during event-scan if there are pending

If we hotplug a CPU during the first second of the kernel boot,
the IRQ can be sent to the kernel while the RTAS event handler
is not installed. The event is queued, but the kernel doesn't
collect it and ignores the new CPU.

As the code relies on edge-triggered IRQ, we can re-assert it
during the event-scan RTAS call if there are still pending
events (as it is already done in check-exception).

Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Message-Id: <20201015210318.117386-1-lvivier@redhat.com>
Reviewed-by: Greg Kurz <groug@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 2d154d2694009f9294e34875059e3a650ee5110a
      
https://github.com/qemu/qemu/commit/2d154d2694009f9294e34875059e3a650ee5110a
  Author: Elena Afanasova <eafanasova@gmail.com>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/net/spapr_llan.c

  Log Message:
  -----------
  hw/net: move allocation to the heap due to very large stack frame

[dwg] The stack frame itself probably isn't that big a deal, but
avoiding alloca() is generally recommended these days.

Signed-off-by: Elena Afanasova <eafanasova@gmail.com>
Message-Id: <8f07132478469b35fb50a4706691e2b56b10a67b.camel@gmail.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: ce316b5118c732c5fef23d7763b8c01054bfcdfa
      
https://github.com/qemu/qemu/commit/ce316b5118c732c5fef23d7763b8c01054bfcdfa
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_nvdimm.c
    M include/hw/ppc/spapr_nvdimm.h

  Log Message:
  -----------
  spapr: Move spapr_create_nvdimm_dr_connectors() to core machine code

The spapr_create_nvdimm_dr_connectors() function doesn't need to access
any internal details of the sPAPR NVDIMM implementation. Also, pretty
much like for the LMBs, only spapr_machine_init() is responsible for the
creation of DR connectors for NVDIMMs.

Make this clear by making this function static in hw/ppc/spapr.c.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160249772183.757627.7396780936543977766.stgit@bahia.lan>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 90689a32ce2b84580646956c2417343943e5df37
      
https://github.com/qemu/qemu/commit/90689a32ce2b84580646956c2417343943e5df37
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr_cpu_core.c

  Log Message:
  -----------
  spapr: Fix leak of CPU machine specific data

When a CPU core is being removed, the machine specific data of each
CPU thread object is leaked.

Fix this by calling the dedicated helper we have for that instead of
simply unparenting the CPU object. Call it from a separate loop in
spapr_cpu_core_unrealize() for symmetry with spapr_cpu_core_realize().

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160279670540.1808373.17319746576919615623.stgit@bahia.lan>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: f1023d21e81b7bf523ddf2ac91a48117f20ef9d7
      
https://github.com/qemu/qemu/commit/f1023d21e81b7bf523ddf2ac91a48117f20ef9d7
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M accel/tcg/user-exec-stub.c
    M hw/ppc/spapr_cpu_core.c
    M target/ppc/translate_init.c.inc

  Log Message:
  -----------
  spapr: Unrealize vCPUs with qdev_unrealize()

Since we introduced CPU hot-unplug in sPAPR, we don't unrealize the
vCPU objects explicitly. Instead, we let QOM handle that for us under
object_property_del_all() when the CPU core object is finalized. The
only thing we do is calling cpu_remove_sync() to tear the vCPU thread
down.

This happens to work but it is ugly because:
- we call qdev_realize() but the corresponding qdev_unrealize() is
  buried deep in the QOM code
- we call cpu_remove_sync() to undo qemu_init_vcpu() called by
  ppc_cpu_realize() in target/ppc/translate_init.c.inc
- the CPU init and teardown paths aren't really symmetrical

The latter didn't bite us so far but a future patch that greatly
simplifies the CPU core realize path needs it to avoid a crash
in QOM.

For all these reasons, have ppc_cpu_unrealize() to undo the changes
of ppc_cpu_realize() by calling cpu_remove_sync() at the right place,
and have the sPAPR CPU core code to call qdev_unrealize().

This requires to add a missing stub because translate_init.c.inc is
also compiled for user mode.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160279671236.1808373.14732005038172874990.stgit@bahia.lan>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 96598cdb14da4d48c68f178a7b5f8d47f5c638f4
      
https://github.com/qemu/qemu/commit/96598cdb14da4d48c68f178a7b5f8d47f5c638f4
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr_cpu_core.c

  Log Message:
  -----------
  spapr: Drop spapr_delete_vcpu() unused argument

The 'sc' argument is unused. Drop it.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160279671929.1808373.10333672533575251075.stgit@bahia.lan>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 9370c28f12ca9336dd893e3b673a334c4938c58f
      
https://github.com/qemu/qemu/commit/9370c28f12ca9336dd893e3b673a334c4938c58f
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr_cpu_core.c

  Log Message:
  -----------
  spapr: Make spapr_cpu_core_unrealize() idempotent

spapr_cpu_core_realize() has a rollback path which partially duplicates
the code of spapr_cpu_core_unrealize().

Let's make spapr_cpu_core_unrealize() idempotent and call it instead. This
requires to:
- move the registration and unregistration of the reset handler around
  but it is harmless,
- allocate the array of vCPUs with g_new0() to be able to filter out
  unused slots,
- make sure to only unrealize vCPUs that have been already realized.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160279672626.1808373.14142129300586424514.stgit@bahia.lan>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 3cff86f036142057368b6040a8c78dce225500c7
      
https://github.com/qemu/qemu/commit/3cff86f036142057368b6040a8c78dce225500c7
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr_cpu_core.c

  Log Message:
  -----------
  spapr: Simplify spapr_cpu_core_realize() and spapr_cpu_core_unrealize()

Now that the error path of spapr_cpu_core_realize() is just to call
idempotent spapr_cpu_core_unrealize() for rollback, no need to create
and realize the vCPUs in two separate loops.

Merge them and do them same in spapr_cpu_core_unrealize() for symmetry.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160279673321.1808373.2248221100790367912.stgit@bahia.lan>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 84fd54961933a324e99bb52d0cc1de0ac9b7780e
      
https://github.com/qemu/qemu/commit/84fd54961933a324e99bb52d0cc1de0ac9b7780e
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/arm/virt.c
    M hw/i386/pc.c
    M hw/mem/pc-dimm.c
    M hw/ppc/spapr.c
    M include/hw/mem/pc-dimm.h

  Log Message:
  -----------
  pc-dimm: Drop @errp argument of pc_dimm_plug()

pc_dimm_plug() doesn't use it. It only aborts on error.

Drop @errp and adapt the callers accordingly.

[dwg: Removed unused label to fix compile]
Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160309728447.2739814.12831204841251148202.stgit@bahia.lan>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 65226afd90abba32d06dd5699655d85b83a84a61
      
https://github.com/qemu/qemu/commit/65226afd90abba32d06dd5699655d85b83a84a61
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  spapr: Use appropriate getter for PC_DIMM_ADDR_PROP

The PC_DIMM_ADDR_PROP property is defined as:

    DEFINE_PROP_UINT64(PC_DIMM_ADDR_PROP, PCDIMMDevice, addr, 0),

Use object_property_get_uint() instead of object_property_get_int().

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160309729609.2739814.4996614957953215591.stgit@bahia.lan>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 581778dd4727df93e3fe810d721e44157f64b97f
      
https://github.com/qemu/qemu/commit/581778dd4727df93e3fe810d721e44157f64b97f
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  spapr: Use appropriate getter for PC_DIMM_SLOT_PROP

The PC_DIMM_SLOT_PROP property is defined as:

    DEFINE_PROP_INT32(PC_DIMM_SLOT_PROP, PCDIMMDevice, slot,
                      PC_DIMM_UNASSIGNED_SLOT),

Use object_property_get_int() instead of object_property_get_uint().
Since spapr_memory_plug() only gets called if pc_dimm_pre_plug()
succeeded, we expect to have a valid >= 0 slot number, either because
the user passed a valid slot number or because pc_dimm_get_free_slot()
picked one up for us.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160309730758.2739814.15821922745424652642.stgit@bahia.lan>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 271ced1d62e0c46089fab47c8560c4e550806d69
      
https://github.com/qemu/qemu/commit/271ced1d62e0c46089fab47c8560c4e550806d69
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  spapr: Pass &error_abort when getting some PC DIMM properties

Both PC_DIMM_SLOT_PROP and PC_DIMM_ADDR_PROP are defined in the
default property list of the PC DIMM device class:

    DEFINE_PROP_UINT64(PC_DIMM_ADDR_PROP, PCDIMMDevice, addr, 0),

    DEFINE_PROP_INT32(PC_DIMM_SLOT_PROP, PCDIMMDevice, slot,
                      PC_DIMM_UNASSIGNED_SLOT),

They should thus be always gettable for both PC DIMMs and NVDIMMs.
An error in getting them can only be the result of a programming
error. It doesn't make much sense to propagate the error in this
case. Abort instead.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160309732180.2739814.7243774674998010907.stgit@bahia.lan>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 6e837f98ba03bab8008b7c1a6c125298ce41de7a
      
https://github.com/qemu/qemu/commit/6e837f98ba03bab8008b7c1a6c125298ce41de7a
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_nvdimm.c
    M include/hw/ppc/spapr_nvdimm.h

  Log Message:
  -----------
  spapr: Simplify error handling in spapr_memory_plug()

As recommended in "qapi/error.h", add a bool return value to
spapr_add_lmbs() and spapr_add_nvdimm(), and use them instead
of local_err in spapr_memory_plug().

This allows to get rid of the error propagation overhead.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160309734178.2739814.3488437759887793902.stgit@bahia.lan>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: c3e051ed6d2a0337fa5172d27231a193f18f92c4
      
https://github.com/qemu/qemu/commit/c3e051ed6d2a0337fa5172d27231a193f18f92c4
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  spapr: Use error_append_hint() in spapr_reallocate_hpt()

Hints should be added with the dedicated error_append_hint() API
because we don't want to print them when using QMP. This requires
to insert ERRP_GUARD as explained in "qapi/error.h".

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160371604030.305923.17464161378167312662.stgit@bahia.lan>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 0a06e4d6267ca150d62fbc371afab2fbb5586cb8
      
https://github.com/qemu/qemu/commit/0a06e4d6267ca150d62fbc371afab2fbb5586cb8
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr.c
    M target/ppc/kvm.c
    M target/ppc/kvm_ppc.h

  Log Message:
  -----------
  target/ppc: Fix kvmppc_load_htab_chunk() error reporting

If kvmppc_load_htab_chunk() fails, its return value is propagated up
to vmstate_load(). It should thus be a negative errno, not -1 (which
maps to EPERM and would lure the user into thinking that the problem
is necessarily related to a lack of privilege).

Return the error reported by KVM or ENOSPC in case of short write.
While here, propagate the error message through an @errp argument
and have the caller to print it with error_report_err() instead
of relying on fprintf().

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160371604713.305923.5264900354159029580.stgit@bahia.lan>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: a4e3a7c02bec45b1054c5e4fe3234519498fb55a
      
https://github.com/qemu/qemu/commit/a4e3a7c02bec45b1054c5e4fe3234519498fb55a
  Author: Greg Kurz <groug@kaod.org>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M hw/ppc/spapr.c
    M include/hw/ppc/spapr.h

  Log Message:
  -----------
  spapr: Improve spapr_reallocate_hpt() error reporting

spapr_reallocate_hpt() has three users, two of which pass &error_fatal
and the third one, htab_load(), passes &local_err, uses it to detect
failures and simply propagates -EINVAL up to vmstate_load(), which will
cause QEMU to exit. It is thus confusing that spapr_reallocate_hpt()
doesn't return right away when an error is detected in some cases. Also,
the comment suggesting that the caller is welcome to try to carry on
seems like a remnant in this respect.

This can be improved:
- change spapr_reallocate_hpt() to always report a negative errno on
  failure, either as reported by KVM or -ENOSPC if the HPT is smaller
  than what was asked,
- use that to detect failures in htab_load() which is preferred over
  checking &local_err,
- propagate this negative errno to vmstate_load() because it is more
  accurate than propagating -EINVAL for all possible errors.

[dwg: Fix compile error due to omitted prelim patch]
Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <160371605460.305923.5890143959901241157.stgit@bahia.lan>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: 136fbf654dd5fa88a5057dcc43947536f3b418df
      
https://github.com/qemu/qemu/commit/136fbf654dd5fa88a5057dcc43947536f3b418df
  Author: zhaolichang <zhaolichang@huawei.com>
  Date:   2020-10-28 (Wed, 28 Oct 2020)

  Changed paths:
    M target/ppc/cpu.h
    M target/ppc/excp_helper.c
    M target/ppc/fpu_helper.c
    M target/ppc/internal.h
    M target/ppc/kvm.c
    M target/ppc/machine.c
    M target/ppc/mmu-hash64.c
    M target/ppc/mmu_helper.c
    M target/ppc/translate_init.c.inc

  Log Message:
  -----------
  ppc/: fix some comment spelling errors

I found that there are many spelling errors in the comments of qemu/target/ppc.
I used spellcheck to check the spelling errors and found some errors in the 
folder.

Signed-off-by: zhaolichang <zhaolichang@huawei.com>
Reviewed-by: David Edmondson <david.edmondson@oracle.com>
Message-Id: <20201009064449.2336-3-zhaolichang@huawei.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Greg Kurz <groug@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: a19d4bc452532a9402f90b77d2aaaed9fe1df046
      
https://github.com/qemu/qemu/commit/a19d4bc452532a9402f90b77d2aaaed9fe1df046
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2020-10-29 (Thu, 29 Oct 2020)

  Changed paths:
    M accel/tcg/user-exec-stub.c
    M hw/arm/virt.c
    M hw/i386/pc.c
    M hw/mem/pc-dimm.c
    M hw/net/spapr_llan.c
    M hw/ppc/spapr.c
    M hw/ppc/spapr_cpu_core.c
    M hw/ppc/spapr_drc.c
    M hw/ppc/spapr_events.c
    M hw/ppc/spapr_nvdimm.c
    M include/hw/mem/pc-dimm.h
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_nvdimm.h
    M target/ppc/cpu.h
    M target/ppc/excp_helper.c
    M target/ppc/fpu_helper.c
    M target/ppc/internal.h
    M target/ppc/kvm.c
    M target/ppc/kvm_ppc.h
    M target/ppc/machine.c
    M target/ppc/mmu-hash64.c
    M target/ppc/mmu_helper.c
    M target/ppc/translate_init.c.inc

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-5.2-20201028' into 
staging

ppc patch queue 2020-10-28

Here's the next pull request for ppc and spapr related patches, which
should be the last things for soft freeze.  Includes:

 * Numerous error handling cleanups from Greg Kurz
 * Cleanups to cpu realization and hotplug handling from Greg Kurz
 * A handful of other small fixes and cleanups

This does include a change to pc_dimm_plug() that isn't in my normal
areas of concern.  That's there as a a prerequisite for ppc specific
changes, and has an ack from Igor.

# gpg: Signature made Tue 27 Oct 2020 14:13:21 GMT
# gpg:                using RSA key 75F46586AE61A66CC44E87DC6C38CACA20D9B392
# gpg: Good signature from "David Gibson <david@gibson.dropbear.id.au>" [full]
# gpg:                 aka "David Gibson (Red Hat) <dgibson@redhat.com>" [full]
# gpg:                 aka "David Gibson (ozlabs.org) <dgibson@ozlabs.org>" 
[full]
# gpg:                 aka "David Gibson (kernel.org) <dwg@kernel.org>" 
[unknown]
# Primary key fingerprint: 75F4 6586 AE61 A66C C44E  87DC 6C38 CACA 20D9 B392

* remotes/dgibson/tags/ppc-for-5.2-20201028:
  ppc/: fix some comment spelling errors
  spapr: Improve spapr_reallocate_hpt() error reporting
  target/ppc: Fix kvmppc_load_htab_chunk() error reporting
  spapr: Use error_append_hint() in spapr_reallocate_hpt()
  spapr: Simplify error handling in spapr_memory_plug()
  spapr: Pass &error_abort when getting some PC DIMM properties
  spapr: Use appropriate getter for PC_DIMM_SLOT_PROP
  spapr: Use appropriate getter for PC_DIMM_ADDR_PROP
  pc-dimm: Drop @errp argument of pc_dimm_plug()
  spapr: Simplify spapr_cpu_core_realize() and spapr_cpu_core_unrealize()
  spapr: Make spapr_cpu_core_unrealize() idempotent
  spapr: Drop spapr_delete_vcpu() unused argument
  spapr: Unrealize vCPUs with qdev_unrealize()
  spapr: Fix leak of CPU machine specific data
  spapr: Move spapr_create_nvdimm_dr_connectors() to core machine code
  hw/net: move allocation to the heap due to very large stack frame
  ppc/spapr: re-assert IRQs during event-scan if there are pending
  spapr: Clarify why DR connectors aren't user creatable

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/802427bcdae1...a19d4bc45253



reply via email to

[Prev in Thread] Current Thread [Next in Thread]