<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/tests/plugin, branch master</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/tests/plugin?h=master</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/tests/plugin?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2022-02-09T12:08:42+00:00</updated>
<entry>
<title>tests/plugins: add instruction matching to libinsn.so</title>
<updated>2022-02-09T12:08:42+00:00</updated>
<author>
<name>Alex Bennée</name>
</author>
<published>2022-02-04T20:43:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=f6d1cd4d48e84fc8047f9094760e42b0980eccec'/>
<id>urn:sha1:f6d1cd4d48e84fc8047f9094760e42b0980eccec</id>
<content type='text'>
This adds simple instruction matching to the libinsn.so plugin which
is useful for examining the execution distance between instructions.
For example to track how often we flush in ARM due to TLB updates:

  -plugin ./tests/plugin/libinsn.so,match=tlbi

which leads to output like this:

  0xffffffc01019a918, 'tlbi vale1is, x1', 5702 hits, 31825 match hits, Δ+8112 since last match, 68859 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5703 hits, 56593 match hits, Δ+17712125 since last match, 33455 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5704 hits, 56594 match hits, Δ+12689 since last match, 33454 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5705 hits, 56595 match hits, Δ+12585 since last match, 33454 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5706 hits, 56596 match hits, Δ+10491 since last match, 33454 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5707 hits, 56597 match hits, Δ+4721 since last match, 33453 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5708 hits, 56598 match hits, Δ+10733 since last match, 33453 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5709 hits, 56599 match hits, Δ+61959 since last match, 33453 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5710 hits, 56600 match hits, Δ+55235 since last match, 33454 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5711 hits, 56601 match hits, Δ+54373 since last match, 33454 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5712 hits, 56602 match hits, Δ+2705 since last match, 33453 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5713 hits, 56603 match hits, Δ+17262 since last match, 33453 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5714 hits, 56604 match hits, Δ+17206 since last match, 33453 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5715 hits, 56605 match hits, Δ+28940 since last match, 33453 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5716 hits, 56606 match hits, Δ+7370 since last match, 33452 avg insns/match
  0xffffffc01019a918, 'tlbi vale1is, x1', 5717 hits, 56607 match hits, Δ+7066 since last match, 33452 avg insns/match

showing we do some sort of TLBI invalidation every 33 thousand
instructions.

Cc: Vasilev Oleg &lt;vasilev.oleg@huawei.com&gt;
Cc: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Cc: Emilio Cota &lt;cota@braap.org&gt;
Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;f4bug@amsat.org&gt;
Message-Id: &lt;20220204204335.1689602-25-alex.bennee@linaro.org&gt;
</content>
</entry>
<entry>
<title>tests/plugin: allow libinsn.so per-CPU counts</title>
<updated>2022-02-09T12:08:42+00:00</updated>
<author>
<name>Alex Bennée</name>
</author>
<published>2022-02-04T20:43:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=39be9dd30fff4bae81ba048d93a195eabe2635ef'/>
<id>urn:sha1:39be9dd30fff4bae81ba048d93a195eabe2635ef</id>
<content type='text'>
We won't go fully flexible but for most system emulation 8 vCPUs
resolution should be enough for anybody ;-)

Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;f4bug@amsat.org&gt;
Message-Id: &lt;20220204204335.1689602-24-alex.bennee@linaro.org&gt;
</content>
</entry>
<entry>
<title>tests/plugin/syscall.c: fix compiler warnings</title>
<updated>2021-11-29T15:13:22+00:00</updated>
<author>
<name>Juro Bystricky</name>
</author>
<published>2021-11-29T14:09:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=d5615bbf9103f01911df683cc3e4e85c49a92593'/>
<id>urn:sha1:d5615bbf9103f01911df683cc3e4e85c49a92593</id>
<content type='text'>
Fix compiler warnings. The warnings can result in a broken build.
This patch fixes warnings such as:

In file included from /usr/include/glib-2.0/glib.h:111,
                 from ../tests/plugin/syscall.c:13:
../tests/plugin/syscall.c: In function ‘print_entry’:
/usr/include/glib-2.0/glib/glib-autocleanups.h:28:3: error: ‘out’ may be
       used uninitialized in this function [-Werror=maybe-uninitialized]
   g_free (*pp);
   ^~~~~~~~~~~~
../tests/plugin/syscall.c:82:23: note: ‘out’ was declared here
     g_autofree gchar *out;
                       ^~~
In file included from /usr/include/glib-2.0/glib.h:111,
                 from ../tests/plugin/syscall.c:13:
../tests/plugin/syscall.c: In function ‘vcpu_syscall_ret’:
/usr/include/glib-2.0/glib/glib-autocleanups.h:28:3: error: ‘out’ may be
        used uninitialized in this function [-Werror=maybe-uninitialized]
   g_free (*pp);
   ^~~~~~~~~~~~
../tests/plugin/syscall.c:73:27: note: ‘out’ was declared here
         g_autofree gchar *out;
                           ^~~
cc1: all warnings being treated as errors

Signed-off-by: Juro Bystricky &lt;juro.bystricky@intel.com&gt;
Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Message-Id: &lt;20211128011551.2115468-1-juro.bystricky@intel.com&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Message-Id: &lt;20211129140932.4115115-9-alex.bennee@linaro.org&gt;
</content>
</entry>
<entry>
<title>tests/plugins: extend the insn plugin to track opcode sizes</title>
<updated>2021-11-04T10:32:01+00:00</updated>
<author>
<name>Alex Bennée</name>
</author>
<published>2021-10-26T10:22:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=e83f79b3faee1316a243b05bb768840d21cec6f4'/>
<id>urn:sha1:e83f79b3faee1316a243b05bb768840d21cec6f4</id>
<content type='text'>
This is mostly a convenience feature for identifying frontends that do
multiple repeat loads so I can test changes to the instruction
tracking interface.

Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Message-Id: &lt;20211026102234.3961636-20-alex.bennee@linaro.org&gt;
</content>
</entry>
<entry>
<title>tests/plugins/syscalls: adhere to new arg-passing scheme</title>
<updated>2021-09-02T10:29:34+00:00</updated>
<author>
<name>Mahmoud Mandour</name>
</author>
<published>2021-07-30T13:58:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=a694d739bbf87e9de4ab1b76e03722e7eca32a4d'/>
<id>urn:sha1:a694d739bbf87e9de4ab1b76e03722e7eca32a4d</id>
<content type='text'>
Signed-off-by: Mahmoud Mandour &lt;ma.mandourr@gmail.com&gt;
Reviewed-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Message-Id: &lt;20210730135817.17816-13-ma.mandourr@gmail.com&gt;
</content>
</entry>
<entry>
<title>tests/plugins/mem: introduce "track" arg and make args not positional</title>
<updated>2021-09-02T10:29:34+00:00</updated>
<author>
<name>Mahmoud Mandour</name>
</author>
<published>2021-07-30T13:58:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=5ae589faad33708c1db0024bb818a2421bd8444c'/>
<id>urn:sha1:5ae589faad33708c1db0024bb818a2421bd8444c</id>
<content type='text'>
This commit makes the plugin adhere to the new plugins arg-passing
scheme by expecting full-form boolean args instead of short-form
booleans. This necessitates that we introduce a new argument, here
"track", to accept "r", "w", or "rw".

Also, it makes arguments not positional and we only care about the last
value specified for a certain argument.

callback/inline args are now supplied separately as bool arguments so
that both can be enabled individually.

Signed-off-by: Mahmoud Mandour &lt;ma.mandourr@gmail.com&gt;
Reviewed-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Message-Id: &lt;20210730135817.17816-12-ma.mandourr@gmail.com&gt;
</content>
</entry>
<entry>
<title>tests/plugins/insn: made arg inline not positional and parse it as bool</title>
<updated>2021-09-02T10:29:34+00:00</updated>
<author>
<name>Mahmoud Mandour</name>
</author>
<published>2021-07-30T13:58:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=0163ce31794b5debcf2527b8156a78dabc45b802'/>
<id>urn:sha1:0163ce31794b5debcf2527b8156a78dabc45b802</id>
<content type='text'>
Made argument "inline" not positional, this has two benefits. First is
that we adhere to how QEMU passes args generally, by taking the last
value of an argument and drop the others. And the second is that this
sets up a framework for potentially adding new args easily.

Signed-off-by: Mahmoud Mandour &lt;ma.mandourr@gmail.com&gt;
Reviewed-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Message-Id: &lt;20210730135817.17816-11-ma.mandourr@gmail.com&gt;
[AJB: fix check-tcg tests calling arg=inline]
Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
</content>
</entry>
<entry>
<title>tests/plugins/bb: adapt to the new arg passing scheme</title>
<updated>2021-09-02T10:29:34+00:00</updated>
<author>
<name>Mahmoud Mandour</name>
</author>
<published>2021-07-30T13:58:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=30b95b44523dbe0f0a0ad2cd23232dbb0c1c6a69'/>
<id>urn:sha1:30b95b44523dbe0f0a0ad2cd23232dbb0c1c6a69</id>
<content type='text'>
Signed-off-by: Mahmoud Mandour &lt;ma.mandourr@gmail.com&gt;
Reviewed-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Message-Id: &lt;20210730135817.17816-10-ma.mandourr@gmail.com&gt;
</content>
</entry>
<entry>
<title>plugins/syscall: Added a table-like summary output</title>
<updated>2021-05-25T15:52:50+00:00</updated>
<author>
<name>Mahmoud Mandour</name>
</author>
<published>2021-05-20T17:43:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=a6851b49e3b0509168d74050d0e59fe0121b2898'/>
<id>urn:sha1:a6851b49e3b0509168d74050d0e59fe0121b2898</id>
<content type='text'>
Added a table-like output which contains the total number of calls
for each used syscall along with the number of errors that occurred.

Per-call tracing is still available through supplying the argument
``print`` to the plugin.

Signed-off-by: Mahmoud Mandour &lt;ma.mandourr@gmail.com&gt;
Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Message-Id: &lt;20210519032409.3041-1-ma.mandourr@gmail.com&gt;
Message-Id: &lt;20210520174303.12310-9-alex.bennee@linaro.org&gt;
</content>
</entry>
<entry>
<title>plugins: new syscalls plugin</title>
<updated>2021-03-17T07:17:46+00:00</updated>
<author>
<name>Matthias Weckbecker</name>
</author>
<published>2021-03-12T17:28:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=279d0a5b1e6b81f88f95b889de8356a331ea8380'/>
<id>urn:sha1:279d0a5b1e6b81f88f95b889de8356a331ea8380</id>
<content type='text'>
This commit adds a new syscalls plugin that displays the syscalls
as they are executed and returned. This plugin outputs the number
of the syscall as well as the syscall return value.

Works in *-user only.

Essentially, this commit restores:

  https://lists.gnu.org/archive/html/qemu-devel/2018-06/msg00846.html

by using the new QEMU plugin API.

Signed-off-by: Matthias Weckbecker &lt;matthias@weckbecker.name&gt;
Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Message-Id: &lt;20200812115816.4454-1-matthias@weckbecker.name&gt;
Message-Id: &lt;20210312172821.31647-2-alex.bennee@linaro.org&gt;
</content>
</entry>
</feed>
