qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 3d4f25: ppc: Huge page detection mechanism fi


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 3d4f25: ppc: Huge page detection mechanism fixes - Episode...
Date: Tue, 26 Jul 2016 05:00:06 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 3d4f2534834cd9f9bbb3dd145fa61fd2ac0dd535
      
https://github.com/qemu/qemu/commit/3d4f2534834cd9f9bbb3dd145fa61fd2ac0dd535
  Author: Thomas Huth <address@hidden>
  Date:   2016-07-25 (Mon, 25 Jul 2016)

  Changed paths:
    M target-ppc/kvm.c

  Log Message:
  -----------
  ppc: Huge page detection mechanism fixes - Episode III

After already fixing two issues with the huge page detection mechanism
(see commit 159d2e39a860 and 86b50f2e1bef), Greg Kurz noticed another
case that caused the guest to crash where QEMU announces huge pages
though they should not be available for the guest:

qemu-system-ppc64 -enable-kvm ... -mem-path /dev/hugepages \
 -m 1G,slots=4,maxmem=32G
 -object memory-backend-ram,policy=default,size=1G,id=mem-mem1 \
 -device pc-dimm,id=dimm-mem1,memdev=mem-mem1 -smp 2 \
 -numa node,nodeid=0 -numa node,nodeid=1

That means if there is a global mem-path option, we still have
to look at the memory-backend objects that have been specified
additionally and return their minimum page size if that value
is smaller than the page size of the main memory.

Reported-by: Greg Kurz <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Tested-by: Greg Kurz <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: c573fc03da65e35bf44bce0448ea12801e3631ac
      
https://github.com/qemu/qemu/commit/c573fc03da65e35bf44bce0448ea12801e3631ac
  Author: Thomas Huth <address@hidden>
  Date:   2016-07-25 (Mon, 25 Jul 2016)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  hw/ppc/spapr: Make sure to close the htab_fd when migration is canceled

When canceling a migration process, we currently do not close the
HTAB migration file descriptor since htab_save_complete() is never
called in that case. So we leave the migration process with a
dangling htab_fd value around, and this causes any further migration
attempts to fail. To fix this issue, simply make sure that the
htab_fd is closed during the migration cleanup stage. And since the
cleanup() function is also called when migration succeeds, we can
also remove the call to close_htab_fd() from the htab_save_complete()
function.

Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=1354341
Signed-off-by: Thomas Huth <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: cf472f48d57a533cc46ee651159abcbe0b362df0
      
https://github.com/qemu/qemu/commit/cf472f48d57a533cc46ee651159abcbe0b362df0
  Author: address@hidden <address@hidden>
  Date:   2016-07-25 (Mon, 25 Jul 2016)

  Changed paths:
    M hw/nvram/spapr_nvram.c

  Log Message:
  -----------
  spapr: fix spapr-nvram migration

When spapr-nvram is backed by a file using pflash interface,
migration fails on the destination guest with assert:

    bdrv_co_pwritev: Assertion `!(bs->open_flags & 0x0800)' failed.

This avoids the problem by delaying the pflash update until after
the device loads complete.

This fix is similar to the one for the pflash_cfi01 migration:

    90c647d Fix pflash migration

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: 2fff4bad40abe5781d21c5e134161a1bd13c43cd
      
https://github.com/qemu/qemu/commit/2fff4bad40abe5781d21c5e134161a1bd13c43cd
  Author: Michael Walle <address@hidden>
  Date:   2016-07-25 (Mon, 25 Jul 2016)

  Changed paths:
    M target-ppc/translate_init.c

  Log Message:
  -----------
  target-ppc: add PPC_MFTB flag to e500mc and e5500

According to the e500mc and e5500 core reference manual they have support
for the mftb instruction.

Signed-off-by: Michael Walle <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: 12bf2d33fe520f9cfd09f7bf9d46ae3202c3cb49
      
https://github.com/qemu/qemu/commit/12bf2d33fe520f9cfd09f7bf9d46ae3202c3cb49
  Author: Greg Kurz <address@hidden>
  Date:   2016-07-25 (Mon, 25 Jul 2016)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_cpu_core.c

  Log Message:
  -----------
  spapr: disintricate core-id from DT semantics

The goal of this patch is to have a stable core-id which does not depend
on any DT related semantics, which involve non-obvious computations on
modern PowerPC server cpus.

With this patch, the DT core id is computed on-demand as:
  (core-id / smp_threads) * smt

where smt is the number of threads per core in the host.

This formula should be consolidated in a helper since it is needed in
several places.

Other uses for core-id includes: compute a stable cpu_index (which
allows random order hotplug/unplug without breaking migration) and
NUMA.

Signed-off-by: Greg Kurz <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: f49ee630d73729ecaeecf4b38a8df11bc613914d
      
https://github.com/qemu/qemu/commit/f49ee630d73729ecaeecf4b38a8df11bc613914d
  Author: Peter Maydell <address@hidden>
  Date:   2016-07-26 (Tue, 26 Jul 2016)

  Changed paths:
    M hw/nvram/spapr_nvram.c
    M hw/ppc/spapr.c
    M hw/ppc/spapr_cpu_core.c
    M target-ppc/kvm.c
    M target-ppc/translate_init.c

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

ppc patch queue 2016-07-26

Here's the current batch of ppc and spapr related patches intended for
qemu-2.7.  Given the late stage in 2.7 development, these are all
bugfixes with one exception:

The "spapr: disintricate core-id from DT semantics" changes the way
ids are assigned in the new core-based hotplug infrastructure.  This
isn't strictly a bugfix, but we've determined that the current way of
assigning core-ids will cause considerable grief with future plans for
cpu hotplug.  Therefore it's better to fix this now, late in 2.7,
before we have a released version with the problematic numbering.

# gpg: Signature made Tue 26 Jul 2016 04:04:57 BST
# gpg:                using RSA key 0x6C38CACA20D9B392
# gpg: Good signature from "David Gibson <address@hidden>"
# gpg:                 aka "David Gibson (Red Hat) <address@hidden>"
# gpg:                 aka "David Gibson (ozlabs.org) <address@hidden>"
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 75F4 6586 AE61 A66C C44E  87DC 6C38 CACA 20D9 B392

* remotes/dgibson/tags/ppc-for-2.7-20160726:
  spapr: disintricate core-id from DT semantics
  target-ppc: add PPC_MFTB flag to e500mc and e5500
  spapr: fix spapr-nvram migration
  hw/ppc/spapr: Make sure to close the htab_fd when migration is canceled
  ppc: Huge page detection mechanism fixes - Episode III

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/a467bb994014...f49ee630d737

reply via email to

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