Ping :-)
On Tue, Aug 10, 2021 at 3:48 PM Mahmoud Mandour
wrote:
> Hello,
>
> This series implements a simple L2 unified per-core cache emulation, the L2
> cache is not enabled by default and is only enabled on specifying so using
> the
> plugin arguments. L2 cache is only a
Some plugins were prefixed with `.c`, some were not. Since the name is
essentially the full-name of the plugin file, it's logical to include
the extension.
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs
CC Stefan Hajnoczi and Thomas Huth
On Mon, Aug 9, 2021 at 6:46 PM Mahmoud Mandour
wrote:
> This post introduces the new TCG plugin `cache` that's used for cache
> modelling. This plugin is a part of my GSoC 2021 participation.
>
> Signed-off-by: Mahmoud Mandour
> ---
>
>
On Tue, Aug 10, 2021 at 3:48 PM Mahmoud Mandour
wrote:
> Hello,
>
> This series implements a simple L2 unified per-core cache emulation, the L2
> cache is not enabled by default and is only enabled on specifying so using
> the
> plugin arguments. L2 cache is only accessed if L
This way of handling args is more lenient and sets a better framework to
parse boolean command line arguments.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 57 ++---
1 file changed, 30 insertions(+), 27 deletions(-)
diff --git a/contrib
to maintain the number of L2 misses per
instruction.
The default cache parameters of L2 caches is:
2MB cache size
16-way associativity
64-byte blocks
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 256 +++-
1 file changed, 175 insertions
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index a1e03ca882..a255e26e25 100644
--- a/contrib/plugins/cache.c
+++ b/contrib/plugins/cache.c
@@ -614,6 +614,9 @@ static void
to match other plugins.
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 22 +++---
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index fcc460bf7b..ee3fab75bd 100644
--- a/docs/devel/tcg
By default L2 is not enabled and is enabled by either using the
newly-introduced "l2" boolean argument, or by setting any of the L2
cache parameters using args. On specifying "l2=on", the default cache
configuration is used.
Signed-off-by: Mahmoud Mandour
---
contrib/
ing a line usually looks
ugly when not sufficiently long(?) LMK if I need to fix this :)
Mahmoud Mandour (5):
plugins/cache: freed heap-allocated mutexes
plugins/cache: implement unified L2 cache emulation
plugins/cache: split command line arguments into name and value
plugins/cache: make L2
This post introduces the new TCG plugin `cache` that's used for cache
modelling. This plugin is a part of my GSoC 2021 participation.
Signed-off-by: Mahmoud Mandour
---
v2 -> v3:
Added a prologue briefly explaining the importance of caching.
Explained the multi-threaded linux-u
On Tue, Aug 3, 2021 at 11:10 PM Alex Bennée wrote:
>
> Mahmoud Mandour writes:
>
> > Hello,
> >
> > This series introduce multicore cache modelling in
> contrib/plugins/cache.c
> >
> > Multi-core cache modelling is handled such that for ful
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/execlog.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib/plugins/execlog.c b/contrib/plugins/execlog.c
index 2de9f0d7d4..a5275dcc15 100644
--- a/contrib/plugins/execlog.c
+++ b/contrib/plugins/execlog.c
@@ -67,7
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 13 -
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index 7e54f12837..863828809d 100644
--- a/docs/devel/tcg-plugins.rst
+++ b/docs/devel/tcg
cores, they'll thrash
each other
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 176 ++--
1 file changed, 132 insertions(+), 44 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 066ea6d8ec..a1e03ca882 100644
her.
2. Used atomic increment to access hashtable entries instead of locking.
3. Renamed mtx to hashtable_lock to reflect its job more explicitly.
4. Dropped the usage of CoreStats, embedded stats in the cache structure.
4. append_stats_line now takes the stats explicitly.
Mahm
Signed-off-by: Mahmoud Mandour
---
v4 -> v5:
1. Mentioned that short-form booleans are still usable but not preferable.
docs/system/deprecated.rst | 10 ++
1 file changed, 10 insertions(+)
diff --git a/docs/system/deprecated.rst b/docs/system/deprecated.rst
index e2e0090
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 13 -
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index 7e54f12837..863828809d 100644
--- a/docs/devel/tcg-plugins.rst
+++ b/docs/devel/tcg
cores, they'll thrash
each other
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 154 +++-
1 file changed, 119 insertions(+), 35 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 066ea6d8ec..971569cc9d 100644
ent master.
2. Dropped the patches that were already merged.
Mahmoud Mandour (2):
plugins/cache: supported multicore cache modelling
docs/devel/tcg-plugins: added cores arg to cache plugin
contrib/plugins/cache.c| 154 -
docs/devel/tcg-plugins.rst |
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-b
Signed-off-by: Mahmoud Mandour
---
docs/system/deprecated.rst | 7 +++
1 file changed, 7 insertions(+)
diff --git a/docs/system/deprecated.rst b/docs/system/deprecated.rst
index e2e0090878..7ae6f1f727 100644
--- a/docs/system/deprecated.rst
+++ b/docs/system/deprecated.rst
@@ -126,6 +126,13
Signed-off-by: Mahmoud Mandour
Reviewed-by: Alex Bennée
---
tests/plugin/bb.c | 15 +++
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c
index de09bdde4e..7d470a1011 100644
--- a/tests/plugin/bb.c
+++ b/tests/plugin/bb.c
@@ -104,10
Signed-off-by: Mahmoud Mandour
Reviewed-by: Alex Bennée
---
tests/plugin/syscall.c | 23 ---
1 file changed, 16 insertions(+), 7 deletions(-)
diff --git a/tests/plugin/syscall.c b/tests/plugin/syscall.c
index 6dd71092e1..484b48de49 100644
--- a/tests/plugin/syscall.c
+++ b
Signed-off-by: Mahmoud Mandour
Reviewed-by: Alex Bennée
---
docs/devel/tcg-plugins.rst | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index 9377bc51d8..7b1a3921b6 100644
--- a/docs/devel/tcg
rguments 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
Reviewed-by: Alex Bennée
---
tests/plugin/mem.c | 47 +
ch" argument.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/hwprofile.c | 39 +
docs/devel/tcg-plugins.rst | 8
2 files changed, 31 insertions(+), 16 deletions(-)
diff --git a/contrib/plugins/hwprofile.c b/contrib/plugins/hwprofile.c
index
Correctly parsing plugin argument since they now must be provided as
full-form boolean parameters, e.g.:
-plugin ./contrib/plugins/libhowvec.so,verbose=on,inline=on
Also, introduced the argument "count" that accepts one opt to count
individually at a time.
Signed-off-by: Mahmo
Signed-off-by: Mahmoud Mandour
Reviewed-by: Alex Bennée
---
contrib/plugins/hotblocks.c | 14 --
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/contrib/plugins/hotblocks.c b/contrib/plugins/hotblocks.c
index 4b08340143..062200a7a4 100644
--- a/contrib/plugins
This call will help boolean argument parsing since arguments are now
passed to plugins as a name and value.
Signed-off-by: Mahmoud Mandour
---
include/qemu/qemu-plugin.h | 13 +
plugins/api.c | 5 +
2 files changed, 18 insertions(+)
diff --git a/include/qemu/qemu
Signed-off-by: Mahmoud Mandour
Reviewed-by: Alex Bennée
---
contrib/plugins/lockstep.c | 31 ++-
docs/devel/tcg-plugins.rst | 2 +-
2 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index
Since plugin arguments now expect boolean arguments, a plugin argument
name "sortby" now expects a value of "read", "write", or "address".
"io" arg is now expected to be passed as a full-form boolean parameter,
i.e. "io=on|true|yes|off|false
plugin_name,argname=argvalue`
For now, passing arguments through "arg=" is still supports but outputs
a deprecation warning.
Also, this commit makes boolean arguments passed to plugins in the
`argname=on|off` form instead of the deprecated short-boolean form.
Signed-off-by: Mahmoud M
hes.
v2 -> v3:
1. Protected calling `qapi_bool_parse` by ensuring name & value are
not NULL.
2. Updated the docs for the hotpages plugin to include its arguments
3. Typo in tests/plugins/mem (hadrr -> haddr)
4. Reword the deprecation entry in deprecated.rst
Mahmoud M
On Thu, Jul 22, 2021 at 9:12 AM Mahmoud Mandour
wrote:
> Hello,
>
> This series removes passing arguments to plugins through "arg=" since
> it's redundant and reduces readability especially when the argument
> itself is composed of a name and a value.
>
> Also,
Signed-off-by: Mahmoud Mandour
---
docs/system/deprecated.rst | 7 +++
1 file changed, 7 insertions(+)
diff --git a/docs/system/deprecated.rst b/docs/system/deprecated.rst
index e2e0090878..7ae6f1f727 100644
--- a/docs/system/deprecated.rst
+++ b/docs/system/deprecated.rst
@@ -126,6 +126,13
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-b
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index 9377bc51d8..7b1a3921b6 100644
--- a/docs/devel/tcg-plugins.rst
+++ b/docs/devel/tcg
Correctly parsing plugin argument since they now must be provided as
full-form boolean parameters, e.g.:
-plugin ./contrib/plugins/libhowvec.so,verbose=on,inline=on
Also, introduced the argument "count" that accepts one opt to count
individually at a time.
Signed-off-by: Mahmo
Signed-off-by: Mahmoud Mandour
---
tests/plugin/bb.c | 15 +++
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c
index de09bdde4e..7d470a1011 100644
--- a/tests/plugin/bb.c
+++ b/tests/plugin/bb.c
@@ -104,10 +104,17
Since plugin arguments now expect boolean arguments, a plugin argument
name "sortby" now expects a value of "read", "write", or "address".
"io" arg is now expected to be passed as a full-form boolean parameter,
i.e. "io=on|true|yes|off|
ch" argument.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/hwprofile.c | 39 +
docs/devel/tcg-plugins.rst | 8
2 files changed, 31 insertions(+), 16 deletions(-)
diff --git a/contrib/plugins/hwprofile.c b/contrib/plugins/hwprofile.c
index
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/lockstep.c | 31 ++-
docs/devel/tcg-plugins.rst | 2 +-
2 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index 7fd35eb669..a41ffe83fa 100644
Signed-off-by: Mahmoud Mandour
---
tests/plugin/syscall.c | 23 ---
1 file changed, 16 insertions(+), 7 deletions(-)
diff --git a/tests/plugin/syscall.c b/tests/plugin/syscall.c
index 6dd71092e1..484b48de49 100644
--- a/tests/plugin/syscall.c
+++ b/tests/plugin/syscall.c
plugin_name,argname=argvalue`
For now, passing arguments through "arg=" is still supports but outputs
a deprecation warning.
Also, this commit makes boolean arguments passed to plugins in the
`argname=on|off` form instead of the deprecated short-boolean form.
Signed-off-by: Mahmoud Mandou
This call will help boolean argument parsing since arguments are now
passed to plugins as a name and value.
Signed-off-by: Mahmoud Mandour
---
include/qemu/qemu-plugin.h | 13 +
plugins/api.c | 5 +
2 files changed, 18 insertions(+)
diff --git a/include/qemu/qemu
rguments 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
---
tests/plugin/mem.c | 47 ++
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/hotblocks.c | 14 --
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/contrib/plugins/hotblocks.c b/contrib/plugins/hotblocks.c
index 4b08340143..062200a7a4 100644
--- a/contrib/plugins/hotblocks.c
+++ b/contrib/plugins
eed review:
plugins/api: added a boolean parsing plugin api
docs/deprecated: deprecate passing plugin args through `arg=`
v2 -> v3:
1. Protected calling `qapi_bool_parse` by ensuring name & value are
not NULL.
2. Updated the docs for the hotpages plugin to include its
cores, they'll thrash
each other
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 154 +++-
1 file changed, 119 insertions(+), 35 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 695fb969dc..496d6e7d49 100644
It's not necessary to lock the address translation portion of the
vcpu_mem_access callback.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 4a71602639
ormance data as a post-processing step.
3. Refactored appending core data to it's own function
Mahmoud Mandour (5):
plugins/cache: Fixed a bug with destroying FIFO metadata
plugins/cache: limited the scope of a mutex lock
plugins/cache: Supported multicore cache modelling
docs/devel/tcg-pl
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 496d6e7d49..cc9020b2d5 100644
--- a/contrib/plugins/cache.c
+++ b/contrib/plugins/cache.c
@@ -535,7 +535,7
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 13 -
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index 595b8e0ea4..370c11373f 100644
--- a/docs/devel/tcg-plugins.rst
+++ b/docs/devel/tcg
This manifests itself when associativity degree is greater than the
number of sets and FIFO is used, otherwise it's also a memory leak
whenever FIFO was used.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 496d6e7d49..cc9020b2d5 100644
--- a/contrib/plugins/cache.c
+++ b/contrib/plugins/cache.c
@@ -535,7 +535,7
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 13 -
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index 595b8e0ea4..370c11373f 100644
--- a/docs/devel/tcg-plugins.rst
+++ b/docs/devel/tcg
ere)
2. Summed cache performance data as a post-processing step.
3. Refactored appending core data to it's own function
Mahmoud Mandour (5):
plugins/cache: Fixed a bug with destroying FIFO metadata
plugins/cache: limited the scope of a mutex lock
plugins/cache: Supported multicore ca
cores, they'll thrash
each other
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 154 +++-
1 file changed, 119 insertions(+), 35 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 695fb969dc..496d6e7d49 100644
It's not necessary to lock the address translation portion of the
vcpu_mem_access callback.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 4a71602639
This manifests itself when associativity degree is greater than the
number of sets and FIFO is used, otherwise it's also a memory leak
whenever FIFO was used.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib
reat to me and I cannot reproduce the race with it installed in.
With calling `qemu_plugin_disable_mem_helpers`:
Reviewed-by: Mahmoud Mandour
---
> include/qemu/plugin.h | 12
> include/qemu/qemu-plugin.h | 13 +
> bsd-user/syscall.c | 6 +++---
>
On Mon, Jul 19, 2021 at 1:08 PM Alex Bennée wrote:
>
> Mahmoud Mandour writes:
>
> > On Mon, Jul 19, 2021 at 11:48 AM Alex Bennée
> wrote:
> >
> > Mahmoud Mandour writes:
> >
> > > Since callbacks may be interleaved because of multithreaded exe
On Mon, Jul 19, 2021 at 11:48 AM Alex Bennée wrote:
>
> Mahmoud Mandour writes:
>
> > Since callbacks may be interleaved because of multithreaded execution,
> > we should not make assumptions about `plugin_exit` either. The problem
> > with `plugin_exit` is that it f
On Sat, Jul 17, 2021, 15:31 Alex Bennée wrote:
>
> Mahmoud Mandour writes:
>
> > Hello,
> >
> > This series removes passing arguments to plugins through "arg=" since
> > it's redundant and reduces readability especially when the argument
> > i
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/lockstep.c | 31 ++-
docs/devel/tcg-plugins.rst | 2 +-
2 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index 7fd35eb669..a41ffe83fa 100644
Signed-off-by: Mahmoud Mandour
---
docs/system/deprecated.rst | 6 ++
1 file changed, 6 insertions(+)
diff --git a/docs/system/deprecated.rst b/docs/system/deprecated.rst
index e2e0090878..aaf0ee5777 100644
--- a/docs/system/deprecated.rst
+++ b/docs/system/deprecated.rst
@@ -126,6 +126,12
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/hotblocks.c | 14 --
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/contrib/plugins/hotblocks.c b/contrib/plugins/hotblocks.c
index 4b08340143..062200a7a4 100644
--- a/contrib/plugins/hotblocks.c
+++ b/contrib/plugins
Signed-off-by: Mahmoud Mandour
---
tests/plugin/bb.c | 15 +++
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c
index de09bdde4e..7d470a1011 100644
--- a/tests/plugin/bb.c
+++ b/tests/plugin/bb.c
@@ -104,10 +104,17
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index 4ab9dc4bb1..be1256d50c 100644
--- a/docs/devel/tcg-plugins.rst
+++ b/docs/devel/tcg
Correctly parsing plugin argument since they now must be provided as
full-form boolean parameters, e.g.:
-plugin ./contrib/plugins/libhowvec.so,verbose=on,inline=on
Also, introduced the argument "count" that accepts one opt to count
individually at a time.
Signed-off-by: Mahmo
rguments 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
---
tests/plugin/mem.c | 47 ++
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-b
Since plugin arguments now expect boolean arguments, a plugin argument
name "sortby" now expects a value of "read", "write", or "address".
"io" arg is now expected to be passed as a full-form boolean parameter,
i.e. "io=on|true|yes|off|
This call will help boolean argument parsing since arguments are now
passed to plugins as a name and value.
Signed-off-by: Mahmoud Mandour
---
include/qemu/qemu-plugin.h | 13 +
plugins/api.c | 5 +
2 files changed, 18 insertions(+)
diff --git a/include/qemu/qemu
Signed-off-by: Mahmoud Mandour
---
tests/plugin/syscall.c | 23 ---
1 file changed, 16 insertions(+), 7 deletions(-)
diff --git a/tests/plugin/syscall.c b/tests/plugin/syscall.c
index 6dd71092e1..484b48de49 100644
--- a/tests/plugin/syscall.c
+++ b/tests/plugin/syscall.c
arguements in howvec
Based-on: <20210714172151.8494-1-ma.mando...@gmail.com>
However, the dependency is so light and it should only be in the patch
docs/tcg-plugins: new passing parameters scheme for cache docs
where it depends on
docs/devel/tcg-plugins: added cores arg to cache pl
ch" argument.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/hwprofile.c | 39 +
docs/devel/tcg-plugins.rst | 8
2 files changed, 31 insertions(+), 16 deletions(-)
diff --git a/contrib/plugins/hwprofile.c b/contrib/plugins/hwprofile.c
index
plugin_name,argname=argvalue`
For now, passing arguments through "arg=" is still supports but outputs
a deprecation warning.
Also, this commit makes boolean arguments passed to plugins in the
`argname=on|off` form instead of the deprecated short-boolean form.
Signed-off-by: Mahmoud Mandou
On Fri, Jul 16, 2021 at 10:04 AM Mahmoud Mandour
wrote:
> Hello,
>
> This series removes passing arguments to plugins through "arg=" since
> it's redundant and reduces readability especially when the argument
> itself is composed of a name and a value.
>
> Also,
Correctly parsing plugin argument since they now must be provided as
full-form boolean parameters, e.g.:
-plugin ./contrib/plugins/libhowvec.so,verbose=on,inline=on
Also, introduced the argument "count" that accepts one opt to count
individually at a time.
Signed-off-by: Mahmo
ch" argument.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/hwprofile.c | 39 +
docs/devel/tcg-plugins.rst | 8
2 files changed, 31 insertions(+), 16 deletions(-)
diff --git a/contrib/plugins/hwprofile.c b/contrib/plugins/hwprofile.c
index
Signed-off-by: Mahmoud Mandour
---
docs/system/deprecated.rst | 6 ++
1 file changed, 6 insertions(+)
diff --git a/docs/system/deprecated.rst b/docs/system/deprecated.rst
index e2e0090878..aaf0ee5777 100644
--- a/docs/system/deprecated.rst
+++ b/docs/system/deprecated.rst
@@ -126,6 +126,12
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/lockstep.c | 31 ++-
docs/devel/tcg-plugins.rst | 2 +-
2 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index 7fd35eb669..a41ffe83fa 100644
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index 4ab9dc4bb1..be1256d50c 100644
--- a/docs/devel/tcg-plugins.rst
+++ b/docs/devel/tcg
Since plugin arguments now expect boolean arguments, a plugin argument
name "sortby" now expects a value of "read", "write", or "address".
"io" arg is now expected to be passed as a full-form boolean parameter,
i.e. "io=on|true|yes|off|
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/hotblocks.c | 14 --
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/contrib/plugins/hotblocks.c b/contrib/plugins/hotblocks.c
index 4b08340143..062200a7a4 100644
--- a/contrib/plugins/hotblocks.c
+++ b/contrib/plugins
This call will help boolean argument parsing since arguments are now
passed to plugins as a name and value.
Signed-off-by: Mahmoud Mandour
---
include/qemu/qemu-plugin.h | 13 +
plugins/api.c | 5 +
2 files changed, 18 insertions(+)
diff --git a/include/qemu/qemu
"arg" and it's a boolean parameter. (will be passed to plugin
as "arg=on")
The docs are updated accordingly and a deprecation notice is put in the
deprecated.rst file.
Mahmoud Mandour (9):
plugins: allow plugin arguments to be passed directly
plugins/api: add
plugin_name,argname=argvalue`
For now, passing arguments through "arg=" is still supports but outputs
a deprecation warning.
Also, this commit makes boolean arguments passed to plugins in the
`argname=on|off` form instead of the deprecated short-boolean form.
Signed-off-by: Mahmoud Mandou
On Wed, Jul 14, 2021 at 8:28 PM Alex Bennée wrote:
> It makes sense to put our various interns in a group so we can see the
> overall impact of GSoC and Outreachy on the project.
>
> Signed-off-by: Alex Bennée
> Cc: Ahmed Karaman
> Cc: Mahmoud Mandour
> Cc: César
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 60f7be208b..f82a8310dc 100644
--- a/contrib/plugins/cache.c
+++ b/contrib/plugins/cache.c
@@ -541,7 +541,7
cores, they'll thrash
each other
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 156 ++--
1 file changed, 117 insertions(+), 39 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index a452aba01c..60f7be208b 100644
Signed-off-by: Mahmoud Mandour
---
docs/devel/tcg-plugins.rst | 13 -
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index 595b8e0ea4..370c11373f 100644
--- a/docs/devel/tcg-plugins.rst
+++ b/docs/devel/tcg
It's not necessary to lock the address translation portion of the
vcpu_mem_access callback.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 4a71602639
are freed, and if so,
immediately exit.
It's okay to immediately exit and don't account for those callbacks
since they won't be accounted for anyway since `plugin_exit` is already
called once and reported the statistics.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 31
This manifests itself when associativity degree is greater than the
number of sets and FIFO is used, otherwise it's also a memory leak
whenever FIFO was used.
Signed-off-by: Mahmoud Mandour
---
contrib/plugins/cache.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib
that
callbacks can check whether plugin_exit has been called already or not.
Also, raising the levels of warnings (by the time this is sent, it's not
yet upstreamed but it's in the process of getting merged) induced some
warnings, this is fixed in its own patch.
Mahmoud Mandour (6):
plugins/cache: Fixed
Signed-off-by: Mahmoud Mandour
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 5f55404f2f..1c4970c88b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2966,6 +2966,7 @@ F: include/tcg/
TCG Plugins
M: Alex Bennée
+R: Mahmoud Mandour
S
Signed-off-by: Mahmoud Mandour
---
v4 -> v5:
Fixed the illustrated command since it has path problems...
docs/devel/tcg-plugins.rst | 59 ++
1 file changed, 59 insertions(+)
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
in
1 - 100 of 217 matches
Mail list logo