On Tue, 28 Jul 2020 at 16:09, Eric Auger <eric.au...@redhat.com> wrote: > > At the moment each entry in the IOTLB corresponds to a page sized > mapping (4K, 16K or 64K), even if the page belongs to a mapped > block. In case of block mapping this unefficiently consumes IOTLB > entries. > > Change the value of the entry so that it reflects the actual > mapping it belongs to (block or page start address and size). > > Also the level/tg of the entry is encoded in the key. In subsequent > patches we will enable range invalidation. This latter is able > to provide the level/tg of the entry. > > Encoding the level/tg directly in the key will allow to invalidate > using g_hash_table_remove() when num_pages equals to 1. > > Signed-off-by: Eric Auger <eric.au...@redhat.com> > > --- > v3 -> v4: > - also use the tg field when computing the hash > - in the key equal function, compare the fields instead of > using memcmp() > - fixed a couple of indents > - added Peter's R-b
You say that, but you didn't :-) Reviewed-by: Peter Maydell <peter.mayd...@linaro.org> thanks -- PMM