diff mbox

[RFC,04/29] migration/ram: ramblock_recv_bitmap_test_byte_offset

Message ID 20170628190047.26159-5-dgilbert@redhat.com
State New
Headers show

Commit Message

Dr. David Alan Gilbert June 28, 2017, 7 p.m. UTC
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

Utility for testing the map when you already know the offset
in the RAMBlock.

Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
---
 migration/ram.c | 5 +++++
 migration/ram.h | 1 +
 2 files changed, 6 insertions(+)
diff mbox

Patch

diff --git a/migration/ram.c b/migration/ram.c
index 3daa69b2c3..6dcb9e8b43 100644
--- a/migration/ram.c
+++ b/migration/ram.c
@@ -165,6 +165,11 @@  int ramblock_recv_bitmap_test(void *host_addr, RAMBlock *rb)
                     rb->receivedmap);
 }
 
+bool ramblock_recv_bitmap_test_byte_offset(uint64_t byte_offset, RAMBlock *rb)
+{
+    return test_bit(byte_offset >> TARGET_PAGE_BITS, rb->receivedmap);
+}
+
 void ramblock_recv_bitmap_set(void *host_addr, RAMBlock *rb)
 {
     set_bit_atomic(ramblock_recv_bitmap_offset(host_addr, rb), rb->receivedmap);
diff --git a/migration/ram.h b/migration/ram.h
index 98d68df03d..0fcf85d904 100644
--- a/migration/ram.h
+++ b/migration/ram.h
@@ -55,6 +55,7 @@  void ram_handle_compressed(void *host, uint8_t ch, uint64_t size);
 
 void ramblock_recv_map_init(void);
 int ramblock_recv_bitmap_test(void *host_addr, RAMBlock *rb);
+bool ramblock_recv_bitmap_test_byte_offset(uint64_t byte_offset, RAMBlock *rb);
 void ramblock_recv_bitmap_set(void *host_addr, RAMBlock *rb);
 void ramblock_recv_bitmap_clear(void *host_addr, RAMBlock *rb);