xen: mapcache: Break out xen_invalidate_map_cache_single()
Break out xen_invalidate_map_cache_single(). No functional changes. Signed-off-by: Edgar E. Iglesias <edgar.iglesias@amd.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20240430164939.925307-10-edgar.iglesias@gmail.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
This commit is contained in:
parent
87b5a05a85
commit
946b4c9bc3
@ -513,17 +513,14 @@ void coroutine_mixed_fn xen_invalidate_map_cache_entry(uint8_t *buffer)
|
||||
}
|
||||
}
|
||||
|
||||
void xen_invalidate_map_cache(void)
|
||||
static void xen_invalidate_map_cache_single(MapCache *mc)
|
||||
{
|
||||
unsigned long i;
|
||||
MapCacheRev *reventry;
|
||||
|
||||
/* Flush pending AIO before destroying the mapcache */
|
||||
bdrv_drain_all();
|
||||
mapcache_lock(mc);
|
||||
|
||||
mapcache_lock(mapcache);
|
||||
|
||||
QTAILQ_FOREACH(reventry, &mapcache->locked_entries, next) {
|
||||
QTAILQ_FOREACH(reventry, &mc->locked_entries, next) {
|
||||
if (!reventry->dma) {
|
||||
continue;
|
||||
}
|
||||
@ -531,8 +528,8 @@ void xen_invalidate_map_cache(void)
|
||||
reventry->vaddr_req);
|
||||
}
|
||||
|
||||
for (i = 0; i < mapcache->nr_buckets; i++) {
|
||||
MapCacheEntry *entry = &mapcache->entry[i];
|
||||
for (i = 0; i < mc->nr_buckets; i++) {
|
||||
MapCacheEntry *entry = &mc->entry[i];
|
||||
|
||||
if (entry->vaddr_base == NULL) {
|
||||
continue;
|
||||
@ -553,9 +550,17 @@ void xen_invalidate_map_cache(void)
|
||||
entry->valid_mapping = NULL;
|
||||
}
|
||||
|
||||
mapcache->last_entry = NULL;
|
||||
mc->last_entry = NULL;
|
||||
|
||||
mapcache_unlock(mapcache);
|
||||
mapcache_unlock(mc);
|
||||
}
|
||||
|
||||
void xen_invalidate_map_cache(void)
|
||||
{
|
||||
/* Flush pending AIO before destroying the mapcache */
|
||||
bdrv_drain_all();
|
||||
|
||||
xen_invalidate_map_cache_single(mapcache);
|
||||
}
|
||||
|
||||
static uint8_t *xen_replace_cache_entry_unlocked(MapCache *mc,
|
||||
|
Loading…
Reference in New Issue
Block a user