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 L1 does not contain the wanted block. If a miss occur in L1, the block is "fetched" to L1, and then L2 is interrogated. This effectively mean that on a cache miss, we bring the data to all the cache hierarchy, which is quite reasonable.
Note: Some +80-column lines are left as is, since they're all 81~83 cols and I thought that it's so important to break them since breaking 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 emulation optional through args docs/tcg-plugins: add L2 arguments to cache docs contrib/plugins/cache.c | 318 ++++++++++++++++++++++++++----------- docs/devel/tcg-plugins.rst | 22 ++- 2 files changed, 244 insertions(+), 96 deletions(-) -- 2.25.1