[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 17/47] accel/tcg: Rename tb_invalidate_phys_page_range and drop en
From: |
Richard Henderson |
Subject: |
[PULL 17/47] accel/tcg: Rename tb_invalidate_phys_page_range and drop end parameter |
Date: |
Wed, 26 Oct 2022 12:10:46 +1000 |
This function is is never called with a real range,
only for a single page. Drop the second parameter
and rename to tb_invalidate_phys_page.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
include/exec/translate-all.h | 2 +-
accel/tcg/tb-maint.c | 15 ++++++++-------
cpu.c | 4 ++--
3 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/include/exec/translate-all.h b/include/exec/translate-all.h
index 9f646389af..3e9cb91565 100644
--- a/include/exec/translate-all.h
+++ b/include/exec/translate-all.h
@@ -29,7 +29,7 @@ void page_collection_unlock(struct page_collection *set);
void tb_invalidate_phys_page_fast(struct page_collection *pages,
tb_page_addr_t start, int len,
uintptr_t retaddr);
-void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end);
+void tb_invalidate_phys_page(tb_page_addr_t addr);
void tb_check_watchpoint(CPUState *cpu, uintptr_t retaddr);
#ifdef CONFIG_USER_ONLY
diff --git a/accel/tcg/tb-maint.c b/accel/tcg/tb-maint.c
index 92170cbbc1..bac43774c0 100644
--- a/accel/tcg/tb-maint.c
+++ b/accel/tcg/tb-maint.c
@@ -565,25 +565,26 @@ tb_invalidate_phys_page_range__locked(struct
page_collection *pages,
}
/*
- * Invalidate all TBs which intersect with the target physical address range
- * [start;end[. NOTE: start and end must refer to the *same* physical page.
- * 'is_cpu_write_access' should be true if called from a real cpu write
- * access: the virtual CPU will exit the current TB if code is modified inside
- * this TB.
+ * Invalidate all TBs which intersect with the target physical
+ * address page @addr.
*
* Called with mmap_lock held for user-mode emulation
*/
-void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end)
+void tb_invalidate_phys_page(tb_page_addr_t addr)
{
struct page_collection *pages;
+ tb_page_addr_t start, end;
PageDesc *p;
assert_memory_lock();
- p = page_find(start >> TARGET_PAGE_BITS);
+ p = page_find(addr >> TARGET_PAGE_BITS);
if (p == NULL) {
return;
}
+
+ start = addr & TARGET_PAGE_MASK;
+ end = start + TARGET_PAGE_SIZE;
pages = page_collection_lock(start, end);
tb_invalidate_phys_page_range__locked(pages, p, start, end, 0);
page_collection_unlock(pages);
diff --git a/cpu.c b/cpu.c
index 14365e36f3..2a09b05205 100644
--- a/cpu.c
+++ b/cpu.c
@@ -277,7 +277,7 @@ void list_cpus(const char *optarg)
void tb_invalidate_phys_addr(target_ulong addr)
{
mmap_lock();
- tb_invalidate_phys_page_range(addr, addr + 1);
+ tb_invalidate_phys_page(addr);
mmap_unlock();
}
#else
@@ -298,7 +298,7 @@ void tb_invalidate_phys_addr(AddressSpace *as, hwaddr addr,
MemTxAttrs attrs)
return;
}
ram_addr = memory_region_get_ram_addr(mr) + addr;
- tb_invalidate_phys_page_range(ram_addr, ram_addr + 1);
+ tb_invalidate_phys_page(ram_addr);
}
#endif
--
2.34.1
- [PULL 08/47] accel/tcg: Make page_alloc_target_data allocation constant, (continued)
- [PULL 08/47] accel/tcg: Make page_alloc_target_data allocation constant, Richard Henderson, 2022/10/25
- [PULL 07/47] include/qemu/thread: Use qatomic_* functions, Richard Henderson, 2022/10/25
- [PULL 09/47] accel/tcg: Remove disabled debug in translate-all.c, Richard Henderson, 2022/10/25
- [PULL 10/47] accel/tcg: Split out PageDesc to internal.h, Richard Henderson, 2022/10/25
- [PULL 12/47] accel/tcg: Move assert_no_pages_locked to internal.h, Richard Henderson, 2022/10/25
- [PULL 11/47] accel/tcg: Split out tb-maint.c, Richard Henderson, 2022/10/25
- [PULL 13/47] accel/tcg: Drop cpu_get_tb_cpu_state from TARGET_HAS_PRECISE_SMC, Richard Henderson, 2022/10/25
- [PULL 14/47] accel/tcg: Remove duplicate store to tb->page_addr[], Richard Henderson, 2022/10/25
- [PULL 15/47] accel/tcg: Introduce tb_{set_}page_addr{0,1}, Richard Henderson, 2022/10/25
- [PULL 16/47] accel/tcg: Rename tb_invalidate_phys_page, Richard Henderson, 2022/10/25
- [PULL 17/47] accel/tcg: Rename tb_invalidate_phys_page_range and drop end parameter,
Richard Henderson <=
- [PULL 18/47] accel/tcg: Unify declarations of tb_invalidate_phys_range, Richard Henderson, 2022/10/25
- [PULL 19/47] accel/tcg: Use tb_invalidate_phys_page in page_set_flags, Richard Henderson, 2022/10/25
- [PULL 20/47] accel/tcg: Call tb_invalidate_phys_page for PAGE_RESET, Richard Henderson, 2022/10/25
- [PULL 21/47] accel/tcg: Use page_reset_target_data in page_set_flags, Richard Henderson, 2022/10/25
- [PULL 22/47] accel/tcg: Use tb_invalidate_phys_range in page_set_flags, Richard Henderson, 2022/10/25
- [PULL 23/47] accel/tcg: Move TARGET_PAGE_DATA_SIZE impl to user-exec.c, Richard Henderson, 2022/10/25
- [PULL 24/47] accel/tcg: Simplify page_get/alloc_target_data, Richard Henderson, 2022/10/25
- [PULL 25/47] accel/tcg: Add restore_state_to_opc to TCGCPUOps, Richard Henderson, 2022/10/25