[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 15/25] scripts/cocci: Patch to remove unnecessary memory_regio
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH v3 15/25] scripts/cocci: Patch to remove unnecessary memory_region_set_readonly() |
Date: |
Mon, 16 Mar 2020 19:49:56 +0100 |
Add a semantic patch to remove memory_region_set_readonly() calls
on ROM memory regions.
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
.../coccinelle/memory-region-housekeeping.cocci | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/scripts/coccinelle/memory-region-housekeeping.cocci
b/scripts/coccinelle/memory-region-housekeeping.cocci
index 9cdde71bb1..5e6b31d8ba 100644
--- a/scripts/coccinelle/memory-region-housekeeping.cocci
+++ b/scripts/coccinelle/memory-region-housekeeping.cocci
@@ -48,6 +48,21 @@ p << possible_memory_region_init_rom.p;
cocci.print_main("potential use of memory_region_init_rom*() in ", p)
+// Do not call memory_region_set_readonly() on ROM alias
+@@
+expression ROM, E1, E2, E3, E4;
+expression ALIAS, E5, E6, E7, E8;
+@@
+(
+ memory_region_init_rom(ROM, E1, E2, E3, E4);
+|
+ memory_region_init_rom_nomigrate(ROM, E1, E2, E3, E4);
+)
+ ...
+ memory_region_init_alias(ALIAS, E5, E6, ROM, E7, E8);
+- memory_region_set_readonly(ALIAS, true);
+
+
// Replace by-hand memory_region_init_ram_nomigrate/vmstate_register_ram
// code sequences with use of the new memory_region_init_ram function.
// Similarly for the _rom and _rom_device functions.
--
2.21.1
- [PATCH v3 04/25] scripts/cocci: Patch to replace memory_region_init_{ram, readonly -> rom}, (continued)
- [PATCH v3 04/25] scripts/cocci: Patch to replace memory_region_init_{ram, readonly -> rom}, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 05/25] hw/arm: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 07/25] hw/m68k: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 08/25] hw/net: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 09/25] hw/pci-host: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 10/25] hw/ppc: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 11/25] hw/riscv: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 12/25] hw/sh4: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 13/25] hw/sparc: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 14/25] scripts/cocci: Patch to detect potential use of memory_region_init_rom, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 15/25] scripts/cocci: Patch to remove unnecessary memory_region_set_readonly(),
Philippe Mathieu-Daudé <=
- [PATCH v3 16/25] scripts/cocci: Patch to let devices own their MemoryRegions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 17/25] hw/core: Let devices own the MemoryRegion they create, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 18/25] hw/display: Let devices own the MemoryRegion they create, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 19/25] hw/dma: Let devices own the MemoryRegion they create, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 20/25] hw/riscv: Let devices own the MemoryRegion they create, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 21/25] hw/char: Let devices own the MemoryRegion they create, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 22/25] hw/arm/stm32: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 24/25] hw/arm: Remove unnecessary memory_region_set_readonly() on ROM alias, Philippe Mathieu-Daudé, 2020/03/16
- [PATCH v3 23/25] hw/ppc/ppc405: Use memory_region_init_rom() with read-only regions, Philippe Mathieu-Daudé, 2020/03/16