qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Mads Ynddal <mads@ynddal.dk>
To: qemu-devel@nongnu.org
Cc: John Snow <jsnow@redhat.com>, Mads Ynddal <mads@ynddal.dk>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	Mads Ynddal <m.ynddal@samsung.com>
Subject: [PATCH v4 00/14] simpletrace: refactor and general improvements
Date: Wed, 23 Aug 2023 10:54:15 +0200	[thread overview]
Message-ID: <20230823085429.20519-1-mads@ynddal.dk> (raw)

From: Mads Ynddal <m.ynddal@samsung.com>

I wanted to use simpletrace.py for an internal project, so I tried to update
and polish the code. Some of the commits resolve specific issues, while some
are more subjective.

I've tried to divide it into commits so we can discuss the
individual changes, and I'm ready to pull things out, if it isn't needed.

v4:
 * Added missing Analyzer2 to __all__
 * Rebased with master
v3:
 * Added __all__ with public interface
 * Added comment about magic numbers and structs from Stefan Hajnoczi
 * Reintroduced old interface for process, run and Analyzer
 * Added comment about Python 3.6 in ref. to getfullargspec
 * process now accepts events as file-like objects
 * Updated context-manager code for Analyzer
 * Moved logic of event processing to Analyzer class
 * Moved logic of process into _process function
 * Added new Analyzer2 class with kwarg event-processing
 * Reverted changes to process-call in scripts/analyse-locks-simpletrace.py
v2:
 * Added myself as maintainer of simpletrace.py
 * Improve docstring on `process`
 * Changed call to `process` in scripts/analyse-locks-simpletrace.py to reflect new argument types
 * Replaced `iteritems()` with `items()` in scripts/analyse-locks-simpletrace.py to support Python 3

Mads Ynddal (14):
  simpletrace: add __all__ to define public interface
  simpletrace: annotate magic constants from QEMU code
  simpletrace: improve parsing of sys.argv; fix files never closed.
  simpletrace: changed naming of edict and idtoname to improve
    readability
  simpletrace: update code for Python 3.11
  simpletrace: improved error handling on struct unpack
  simpletrace: define exception and add handling
  simpletrace: made Analyzer into context-manager
  simpletrace: refactor to separate responsibilities
  simpletrace: move logic of process into internal function
  simpletrace: move event processing to Analyzer class
  simpletrace: added simplified Analyzer2 class
  MAINTAINERS: add maintainer of simpletrace.py
  scripts/analyse-locks-simpletrace.py: changed iteritems() to items()

 MAINTAINERS                          |   6 +
 scripts/analyse-locks-simpletrace.py |   2 +-
 scripts/simpletrace-benchmark.zip    | Bin 0 -> 4809 bytes
 scripts/simpletrace.py               | 362 ++++++++++++++++++---------
 4 files changed, 247 insertions(+), 123 deletions(-)
 create mode 100644 scripts/simpletrace-benchmark.zip

-- 
2.38.1



             reply	other threads:[~2023-08-23  8:56 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20230823085439eucas1p2d351b168833b9206cee2bbc8af9df1ac@eucas1p2.samsung.com>
2023-08-23  8:54 ` Mads Ynddal [this message]
2023-08-23  8:54   ` [PATCH v4 01/14] simpletrace: add __all__ to define public interface Mads Ynddal
2023-09-14 21:06     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 02/14] simpletrace: annotate magic constants from QEMU code Mads Ynddal
2023-09-14 21:09     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 03/14] simpletrace: improve parsing of sys.argv; fix files never closed Mads Ynddal
2023-09-20 18:57     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 04/14] simpletrace: changed naming of edict and idtoname to improve readability Mads Ynddal
2023-09-20 19:46     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 05/14] simpletrace: update code for Python 3.11 Mads Ynddal
2023-09-05 11:30     ` Philippe Mathieu-Daudé
2023-08-23  8:54   ` [PATCH v4 06/14] simpletrace: improved error handling on struct unpack Mads Ynddal
2023-09-05 11:34     ` Philippe Mathieu-Daudé
2023-09-20 19:49     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 07/14] simpletrace: define exception and add handling Mads Ynddal
2023-09-20 20:08     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 08/14] simpletrace: made Analyzer into context-manager Mads Ynddal
2023-09-20 20:11     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 09/14] simpletrace: refactor to separate responsibilities Mads Ynddal
2023-09-20 20:16     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 10/14] simpletrace: move logic of process into internal function Mads Ynddal
2023-09-20 20:16     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 11/14] simpletrace: move event processing to Analyzer class Mads Ynddal
2023-09-05 11:37     ` Philippe Mathieu-Daudé
2023-09-20 20:18     ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 12/14] simpletrace: added simplified Analyzer2 class Mads Ynddal
2023-09-05 12:19     ` Mads Ynddal
2023-09-05 12:42     ` Daniel P. Berrangé
2023-09-06  8:32       ` Mads Ynddal
2023-09-06  8:57         ` Daniel P. Berrangé
2023-09-20 20:21           ` Stefan Hajnoczi
2023-09-20 20:28     ` Stefan Hajnoczi
2023-09-26 10:40       ` Mads Ynddal
2023-08-23  8:54   ` [PATCH v4 13/14] MAINTAINERS: add maintainer of simpletrace.py Mads Ynddal
2023-09-05 11:38     ` Philippe Mathieu-Daudé
2023-09-20 20:37     ` Stefan Hajnoczi
2023-09-26 10:26       ` Mads Ynddal
2023-09-26 13:45         ` Stefan Hajnoczi
2023-08-23  8:54   ` [PATCH v4 14/14] scripts/analyse-locks-simpletrace.py: changed iteritems() to items() Mads Ynddal
2023-09-05 11:39     ` Philippe Mathieu-Daudé
2023-09-20 20:38     ` Stefan Hajnoczi
2023-09-05 10:46   ` [PATCH v4 00/14] simpletrace: refactor and general improvements Mads Ynddal
2023-09-20 20:39   ` Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230823085429.20519-1-mads@ynddal.dk \
    --to=mads@ynddal.dk \
    --cc=crosa@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=m.ynddal@samsung.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).