diff options
| author | Anthony Liguori <aliguori@us.ibm.com> | 2011-02-16 08:47:07 -0600 |
|---|---|---|
| committer | Anthony Liguori <aliguori@us.ibm.com> | 2011-02-16 08:47:07 -0600 |
| commit | c5d69e6bbf37bf5e3882060764b15e018e6a5321 (patch) | |
| tree | e246e96bdfffbc5e07682c5a39ea7a65482a5935 /exec.c | |
| parent | 630ecca0da959e65acad1ee0bf3a631bbb7ee052 (diff) | |
| parent | 0ec329dab938e2d97d12a91f8ed15fec27b325e0 (diff) | |
| download | focaccia-qemu-c5d69e6bbf37bf5e3882060764b15e018e6a5321.tar.gz focaccia-qemu-c5d69e6bbf37bf5e3882060764b15e018e6a5321.zip | |
Merge remote branch 'qemu-kvm/uq/master' into staging
Diffstat (limited to 'exec.c')
| -rw-r--r-- | exec.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/exec.c b/exec.c index 1b70dc1b5e..d611100dc3 100644 --- a/exec.c +++ b/exec.c @@ -2078,6 +2078,36 @@ int cpu_physical_sync_dirty_bitmap(target_phys_addr_t start_addr, return ret; } +int cpu_physical_log_start(target_phys_addr_t start_addr, + ram_addr_t size) +{ + CPUPhysMemoryClient *client; + QLIST_FOREACH(client, &memory_client_list, list) { + if (client->log_start) { + int r = client->log_start(client, start_addr, size); + if (r < 0) { + return r; + } + } + } + return 0; +} + +int cpu_physical_log_stop(target_phys_addr_t start_addr, + ram_addr_t size) +{ + CPUPhysMemoryClient *client; + QLIST_FOREACH(client, &memory_client_list, list) { + if (client->log_stop) { + int r = client->log_stop(client, start_addr, size); + if (r < 0) { + return r; + } + } + } + return 0; +} + static inline void tlb_update_dirty(CPUTLBEntry *tlb_entry) { ram_addr_t ram_addr; |