2
0
Эх сурвалжийг харах

system/memory_mapping: make range overlap check more readable

use ranges_overlap() instead of open-coding the overlap check to improve
the readability of the code.

Signed-off-by: Yao Xingtao <yaoxt.fnst@fujitsu.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: David Hildenbrand <david@redhat.com>
Message-ID: <20240722040742.11513-10-yaoxt.fnst@fujitsu.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Yao Xingtao 1 жил өмнө
parent
commit
13c59a0e9e

+ 2 - 2
system/memory_mapping.c

@@ -12,6 +12,7 @@
  */
  */
 
 
 #include "qemu/osdep.h"
 #include "qemu/osdep.h"
+#include "qemu/range.h"
 #include "qapi/error.h"
 #include "qapi/error.h"
 
 
 #include "sysemu/memory_mapping.h"
 #include "sysemu/memory_mapping.h"
@@ -353,8 +354,7 @@ void memory_mapping_filter(MemoryMappingList *list, int64_t begin,
     MemoryMapping *cur, *next;
     MemoryMapping *cur, *next;
 
 
     QTAILQ_FOREACH_SAFE(cur, &list->head, next, next) {
     QTAILQ_FOREACH_SAFE(cur, &list->head, next, next) {
-        if (cur->phys_addr >= begin + length ||
-            cur->phys_addr + cur->length <= begin) {
+        if (!ranges_overlap(cur->phys_addr, cur->length, begin, length)) {
             QTAILQ_REMOVE(&list->head, cur, next);
             QTAILQ_REMOVE(&list->head, cur, next);
             g_free(cur);
             g_free(cur);
             list->num--;
             list->num--;