qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] e69ba2: target/ppc: Initialize lazy_tlb_flush


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] e69ba2: target/ppc: Initialize lazy_tlb_flush correctly
Date: Tue, 10 Apr 2018 14:15:50 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: e69ba2b489d9cc6e976a29a58726d45361d85b9d
      
https://github.com/qemu/qemu/commit/e69ba2b489d9cc6e976a29a58726d45361d85b9d
  Author: David Gibson <address@hidden>
  Date:   2018-04-10 (Tue, 10 Apr 2018)

  Changed paths:
    M target/ppc/translate.c

  Log Message:
  -----------
  target/ppc: Initialize lazy_tlb_flush correctly

ppc_tr_init_disas_context() correctly sets lazy_tlb_flush to true on
certain CPU models.  However, it leaves it uninitialized, instead of
setting it to false on all others.

It wasn't caught before now because we didn't have examples in the tests
that exercised this path.  However it can now be caught using clang's
undefined behaviour sanitizer and the sam460ex board.

Suggested-by: Peter Maydell <address@hidden>
Signed-off-by: David Gibson <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>


  Commit: ddd835f32a18c087d3161213f47e89566ce05cc8
      
https://github.com/qemu/qemu/commit/ddd835f32a18c087d3161213f47e89566ce05cc8
  Author: Thomas Huth <address@hidden>
  Date:   2018-04-10 (Tue, 10 Apr 2018)

  Changed paths:
    M hw/misc/macio/macio.c

  Log Message:
  -----------
  hw/misc/macio: Fix crash when listing device properties of macio device

The macio-newworld device can currently be used to abort QEMU unexpectedly:

$ ppc-softmmu/qemu-system-ppc -S -M ref405ep,accel=qtest -qmp stdio
{"QMP": {"version": {"qemu": {"micro": 50, "minor": 11, "major": 2},
 "package": "build-all"}, "capabilities": []}}
{ 'execute': 'qmp_capabilities' }
{"return": {}}
{ 'execute': 'device-list-properties',
  'arguments': {'typename': 'macio-newworld'}}
Unexpected error in qemu_chr_fe_init() at chardev/char-fe.c:222:
Device 'serial0' is in use
Aborted (core dumped)

qdev properties should be set during realize(), not during instance_init(),
so move the related code there to fix this problem.

Signed-off-by: Thomas Huth <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Acked-by: Mark Cave-Ayland <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: efb7db250adad82c4bb302f0a80e4ae0c641f0d6
      
https://github.com/qemu/qemu/commit/efb7db250adad82c4bb302f0a80e4ae0c641f0d6
  Author: David Gibson <address@hidden>
  Date:   2018-04-10 (Tue, 10 Apr 2018)

  Changed paths:
    M target/ppc/machine.c

  Log Message:
  -----------
  target/ppc: Fix backwards migration of msr_mask

21b786f "PowerPC: Add TS bits into msr_mask" added the transaction states
to msr_mask for recent POWER CPUs to allow correct migration of machines
that are in certain interim transactional memory states.

This was correct, but unfortunately breaks backwards of pseries-2.7 and
earlier machine types which (stupidly) transferred the msr_mask in the
migration stream and failed if it wasn't equal on each end.

This works around the problem by masking out the new MSR bits in the
compatibility code to send the msr_mask on old machine types.

Signed-off-by: David Gibson <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Tested-by: Greg Kurz <address@hidden>
Tested-by: Lukáš Doktor <address@hidden>


  Commit: 127f03e4426a7a8c5c63e277e0cdd88af80d0c8f
      
https://github.com/qemu/qemu/commit/127f03e4426a7a8c5c63e277e0cdd88af80d0c8f
  Author: Alexey Kardashevskiy <address@hidden>
  Date:   2018-04-10 (Tue, 10 Apr 2018)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  spapr: Initialize reserved areas list in FDT in H_CAS handler

At the moment the device tree produced by the H_CAS handler has no
reserved map initialized at all which is not correct as at least one
empty record is required to be present as a marker of the end.
This does not cause problems now as the only consumer is SLOF which
does not look at the reserved map area.

However when DTC's "Improve libfdt's memory safety" changeset hits
the QEMU upstream, there will be errors reported and crashes observed.

This fixes the problem by adding an empty entry to the reserved map,
just like create_device_tree() does already.

Signed-off-by: Alexey Kardashevskiy <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: 99b336cdd906ba467a5fa0a1c4face3a9bde8d77
      
https://github.com/qemu/qemu/commit/99b336cdd906ba467a5fa0a1c4face3a9bde8d77
  Author: Thomas Huth <address@hidden>
  Date:   2018-04-10 (Tue, 10 Apr 2018)

  Changed paths:
    M tests/boot-serial-test.c

  Log Message:
  -----------
  tests/boot-serial: Test the sam460ex board

We've got a U-Boot firmware for this board in our repository, and
the firmware prints some output to the serial console, so we can
check this board in the boot-serial tester, too.

Signed-off-by: Thomas Huth <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: f8815532dcf145dfde8da42697556239bb95c849
      
https://github.com/qemu/qemu/commit/f8815532dcf145dfde8da42697556239bb95c849
  Author: BALATON Zoltan <address@hidden>
  Date:   2018-04-10 (Tue, 10 Apr 2018)

  Changed paths:
    M hw/ppc/ppc440_uc.c
    M hw/ppc/sam460ex.c

  Log Message:
  -----------
  sam460ex: Fix timer frequency and clock multipliers

We only emulate timer running at CPU frequency which is what most
guests expect so set the frequency to match real hardware. This also
allows setting clock multipliers which caused slowdown previously due
to wrong timer frequency.

Signed-off-by: BALATON Zoltan <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: 6b3913e0858488ef3358c1683605d6894a6cadb0
      
https://github.com/qemu/qemu/commit/6b3913e0858488ef3358c1683605d6894a6cadb0
  Author: BALATON Zoltan <address@hidden>
  Date:   2018-04-10 (Tue, 10 Apr 2018)

  Changed paths:
    M .gitmodules
    M roms/u-boot-sam460ex

  Log Message:
  -----------
  roms/u-boot-sam460ex: Change to qemu git mirror and update

Now that we have a mirror of this repo on git.qemu.org change the
submodule to use that and update it to latest commit which fixes a
dangling symlink and removes two big binaries that are not needed.

Signed-off-by: BALATON Zoltan <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: 69550301ecb3f0e5b9e2cc502aecb9411cdc5816
      
https://github.com/qemu/qemu/commit/69550301ecb3f0e5b9e2cc502aecb9411cdc5816
  Author: Peter Maydell <address@hidden>
  Date:   2018-04-10 (Tue, 10 Apr 2018)

  Changed paths:
    M .gitmodules
    M hw/misc/macio/macio.c
    M hw/ppc/ppc440_uc.c
    M hw/ppc/sam460ex.c
    M hw/ppc/spapr.c
    M roms/u-boot-sam460ex
    M target/ppc/machine.c
    M target/ppc/translate.c
    M tests/boot-serial-test.c

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

ppc patch queue 2018-04-10

Here's a rather late pull request with a handful of fixes for 2.12.
These have been blocked for some time, because I wasn't able to
complete my usual test set due to the SCSI problem fixed in 37c5174
"scsi-disk: Don't enlarge min_io_size to max_io_size".

Since we're in hard freeze, these are all bugfixes.  Most are also
regressions, although in one case it's only a "regression" because a
longstanding bug has been exposed by a new machine type (sam460ex) in
the testcases.  There are also a couple of sam460ex fixes that aren't
regressions since the board didn't exist before.  On the flipside
though, they're low risk because they only touch board specific code
for a board that doesn't exist in any released version.

# gpg: Signature made Tue 10 Apr 2018 08:13:52 BST
# gpg:                using RSA key 6C38CACA20D9B392
# 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:                 aka "David Gibson (kernel.org) <address@hidden>"
# Primary key fingerprint: 75F4 6586 AE61 A66C C44E  87DC 6C38 CACA 20D9 B392

* remotes/dgibson/tags/ppc-for-2.12-20180410:
  roms/u-boot-sam460ex: Change to qemu git mirror and update
  sam460ex: Fix timer frequency and clock multipliers
  tests/boot-serial: Test the sam460ex board
  spapr: Initialize reserved areas list in FDT in H_CAS handler
  target/ppc: Fix backwards migration of msr_mask
  hw/misc/macio: Fix crash when listing device properties of macio device
  target/ppc: Initialize lazy_tlb_flush correctly

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


Compare: https://github.com/qemu/qemu/compare/f41ee66df0ce...69550301ecb3

reply via email to

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