qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 8037fa: scripts/qemugdb/mtree.py: fix up mtre


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 8037fa: scripts/qemugdb/mtree.py: fix up mtree dump
Date: Mon, 10 Apr 2017 08:15:10 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 8037fa55ace19e1f328d03e2cefa78d5f3d81310
      
https://github.com/qemu/qemu/commit/8037fa55ace19e1f328d03e2cefa78d5f3d81310
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-07 (Fri, 07 Apr 2017)

  Changed paths:
    M scripts/qemugdb/mtree.py

  Log Message:
  -----------
  scripts/qemugdb/mtree.py: fix up mtree dump

Since QEMU has been able to build with native Int128 support this was
broken as it attempts to fish values out of the non-existent
structure. Also the alias print was trying to make a %x out of
gdb.ValueType directly which didn't seem to work.

Signed-off-by: Alex Bennée <address@hidden>


  Commit: 8695350357abc38a4f915ba6cb62e796bbbaf111
      
https://github.com/qemu/qemu/commit/8695350357abc38a4f915ba6cb62e796bbbaf111
  Author: Nikunj A Dadhania <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpus: fix wrong define name

While the configure script generates TARGET_SUPPORTS_MTTCG define, one
of the define is cpus.c is checking wrong name: TARGET_SUPPORT_MTTCG

Signed-off-by: Nikunj A Dadhania <address@hidden>
Signed-off-by: Alex Bennée <address@hidden>


  Commit: b4e79a502ff2ac06a21c45f598870de807eb5d20
      
https://github.com/qemu/qemu/commit/b4e79a502ff2ac06a21c45f598870de807eb5d20
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M target/i386/misc_helper.c

  Log Message:
  -----------
  target/i386/misc_helper: wrap BQL around another IRQ generator

Anything that calls into HW emulation must be protected by the BQL.

Signed-off-by: Alex Bennée <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Acked-by: Eduardo Habkost <address@hidden>


  Commit: bf51c7206facff628df24c5499ace9c97c503962
      
https://github.com/qemu/qemu/commit/bf51c7206facff628df24c5499ace9c97c503962
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpus: remove icount handling from qemu_tcg_cpu_thread_fn

We should never be running in multi-threaded mode with icount enabled.
There is no point calling handle_icount_deadline here so remove it and
assert !use_icount.

Signed-off-by: Alex Bennée <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>


  Commit: 243c5f77f6734776a45d50612b0f3ca2f2f6448e
      
https://github.com/qemu/qemu/commit/243c5f77f6734776a45d50612b0f3ca2f2f6448e
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpus: check cpu->running in cpu_get_icount_raw()

The lifetime of current_cpu is now the lifetime of the vCPU thread.
However get_icount_raw() can apply a fudge factor if called while code
is running to take into account the current executed instruction
count.

To ensure this is always the case we also check cpu->running.

Signed-off-by: Alex Bennée <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>


  Commit: 05248382251a58a14da60a640d29f570524174d3
      
https://github.com/qemu/qemu/commit/05248382251a58a14da60a640d29f570524174d3
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpus: move icount preparation out of tcg_exec_cpu

As icount is only supported for single-threaded execution due to the
requirement for determinism let's remove it from the common
tcg_exec_cpu path.

Also remove the additional fiddling which shouldn't be required as the
icount counters should all be rectified as you enter the loop.

Signed-off-by: Alex Bennée <address@hidden>


  Commit: e4cd96571f00e290e93dcc65a6d2b616b159dea6
      
https://github.com/qemu/qemu/commit/e4cd96571f00e290e93dcc65a6d2b616b159dea6
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M cpus.c
    M include/qom/cpu.h

  Log Message:
  -----------
  cpus: don't credit executed instructions before they have run

Outside of the vCPU thread icount time will only be tracked against
timers_state.qemu_icount. We no longer credit cycles until they have
completed the run. Inside the vCPU thread we adjust for passage of
time by looking at how many have run so far. This is only valid inside
the vCPU thread while it is running.

Signed-off-by: Alex Bennée <address@hidden>


  Commit: 512d3c807177b5cfff6b5a4925d71ae1b5521093
      
https://github.com/qemu/qemu/commit/512d3c807177b5cfff6b5a4925d71ae1b5521093
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M cpus.c
    M include/qemu/timer.h

  Log Message:
  -----------
  cpus: introduce cpu_update_icount helper

By holding off updates to timer_state.qemu_icount we can run into
trouble when the non-vCPU thread needs to know the time. This helper
ensures we atomically update timers_state.qemu_icount based on what
has been currently executed.

Signed-off-by: Alex Bennée <address@hidden>


  Commit: eda5f7c6a147c8eb927a6198ec48fe677cb079b3
      
https://github.com/qemu/qemu/commit/eda5f7c6a147c8eb927a6198ec48fe677cb079b3
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M cpu-exec.c
    M cpus.c

  Log Message:
  -----------
  cpu-exec: update icount after each TB_EXIT

There is no particular reason we shouldn't update the global system
icount time as we exit each TranslationBlock run. This ensures the
main-loop doesn't have to wait until we exit to the outer loop for
executed instructions to be credited to timer_state.

The prepare_icount_for_run function is slightly tweaked to match the
logic we run in cpu_loop_exec_tb.

Based on Paolo's original suggestion.

Signed-off-by: Alex Bennée <address@hidden>


  Commit: 1d05906b95e7f2a35be2392506f9af8f89ff39a5
      
https://github.com/qemu/qemu/commit/1d05906b95e7f2a35be2392506f9af8f89ff39a5
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpus: call cpu_update_icount on read

This ensures each time the vCPU thread reads the icount we update the
master timer_state.qemu_icount field. This way as long as updates are
in BQL protected sections (which they should be) the main-loop can
never come to update the log and find time has gone backwards.

Signed-off-by: Alex Bennée <address@hidden>


  Commit: 982263ce714ffcc4c7c41a7b255bd29e093912fe
      
https://github.com/qemu/qemu/commit/982263ce714ffcc4c7c41a7b255bd29e093912fe
  Author: Alex Bennée <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M replay/replay-internal.c
    M replay/replay.c

  Log Message:
  -----------
  replay: assert time only goes forward

If we find ourselves trying to add an event to the log where time has
gone backwards it is because a vCPU event has occurred and the
main-loop is not yet aware of time moving forward. This should not
happen and if it does its better to fail early than generate a log
that will have weird behaviour.

Signed-off-by: Alex Bennée <address@hidden>


  Commit: 0a49bfa1abaa7c7bea4505bef885a61fc910d055
      
https://github.com/qemu/qemu/commit/0a49bfa1abaa7c7bea4505bef885a61fc910d055
  Author: Peter Maydell <address@hidden>
  Date:   2017-04-10 (Mon, 10 Apr 2017)

  Changed paths:
    M cpu-exec.c
    M cpus.c
    M include/qemu/timer.h
    M include/qom/cpu.h
    M replay/replay-internal.c
    M replay/replay.c
    M scripts/qemugdb/mtree.py
    M target/i386/misc_helper.c

  Log Message:
  -----------
  Merge remote-tracking branch 
'remotes/stsquad/tags/pull-mttcg-fixups-for-rc2-100417-1' into staging

Final icount and misc MTTCG fixes for 2.9

Minor differences from:
  Message-Id: <address@hidden>

  - dropped new feature patches
  - last minute typo fix from Nikunj A Dadhania <address@hidden>

# gpg: Signature made Mon 10 Apr 2017 11:38:10 BST
# gpg:                using RSA key 0xFBD0DB095A9E2A44
# gpg: Good signature from "Alex Bennée (Master Work Key) <address@hidden>"
# Primary key fingerprint: 6685 AE99 E751 67BC AFC8  DF35 FBD0 DB09 5A9E 2A44

* remotes/stsquad/tags/pull-mttcg-fixups-for-rc2-100417-1:
  replay: assert time only goes forward
  cpus: call cpu_update_icount on read
  cpu-exec: update icount after each TB_EXIT
  cpus: introduce cpu_update_icount helper
  cpus: don't credit executed instructions before they have run
  cpus: move icount preparation out of tcg_exec_cpu
  cpus: check cpu->running in cpu_get_icount_raw()
  cpus: remove icount handling from qemu_tcg_cpu_thread_fn
  target/i386/misc_helper: wrap BQL around another IRQ generator
  cpus: fix wrong define name
  scripts/qemugdb/mtree.py: fix up mtree dump

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


Compare: https://github.com/qemu/qemu/compare/ad04d8cb2f8b...0a49bfa1abaa

reply via email to

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