]> www.infradead.org Git - users/dwmw2/qemu.git/commitdiff
scripts/cocci: Patch to remove unnecessary memory_region_set_readonly()
authorPhilippe Mathieu-Daudé <philmd@redhat.com>
Mon, 24 Feb 2020 18:55:35 +0000 (19:55 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 17 Mar 2020 14:18:48 +0000 (15:18 +0100)
Add a semantic patch to remove memory_region_set_readonly() calls
on ROM memory regions.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
scripts/coccinelle/memory-region-housekeeping.cocci

index 9cdde71bb1eaccf6926b03476e40553e195295c5..5e6b31d8ba28d53bc45a553f28913f32722a31eb 100644 (file)
@@ -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.