Re: [Xen-devel] [PATCH v2 2/2] x86/HVM: correct page dirty marking in hvm_map_guest_frame_rw()

2015-08-13 Thread Jan Beulich
On 12.08.15 at 19:24, andrew.coop...@citrix.com wrote: On 12/08/15 16:26, Jan Beulich wrote: On 12.08.15 at 17:13, andrew.coop...@citrix.com wrote: On 12/08/15 15:19, Jan Beulich wrote: @@ -422,6 +423,14 @@ static int paging_log_dirty_op(struct do if ( !resuming ) { +

Re: [Xen-devel] [PATCH v2 2/2] x86/HVM: correct page dirty marking in hvm_map_guest_frame_rw()

2015-08-12 Thread Andrew Cooper
On 12/08/15 15:19, Jan Beulich wrote: Rather than dirtying a page when establishing a (permanent) mapping, dirty it when the page gets unmapped, or - if still mapped - on the final iteration of a save operation. (Transient mappings continue to get dirtied upon getting mapped, to avoid the

Re: [Xen-devel] [PATCH v2 2/2] x86/HVM: correct page dirty marking in hvm_map_guest_frame_rw()

2015-08-12 Thread Jan Beulich
On 12.08.15 at 17:13, andrew.coop...@citrix.com wrote: On 12/08/15 15:19, Jan Beulich wrote: +if ( writable *writable ) +{ +struct hvm_write_map *track = xmalloc(struct hvm_write_map); + +if ( !track ) +{ +put_page(page); +return

[Xen-devel] [PATCH v2 2/2] x86/HVM: correct page dirty marking in hvm_map_guest_frame_rw()

2015-08-12 Thread Jan Beulich
Rather than dirtying a page when establishing a (permanent) mapping, dirty it when the page gets unmapped, or - if still mapped - on the final iteration of a save operation. (Transient mappings continue to get dirtied upon getting mapped, to avoid the overhead of tracking.) Signed-off-by: Jan

Re: [Xen-devel] [PATCH v2 2/2] x86/HVM: correct page dirty marking in hvm_map_guest_frame_rw()

2015-08-12 Thread Andrew Cooper
On 12/08/15 16:26, Jan Beulich wrote: On 12.08.15 at 17:13, andrew.coop...@citrix.com wrote: On 12/08/15 15:19, Jan Beulich wrote: +if ( writable *writable ) +{ +struct hvm_write_map *track = xmalloc(struct hvm_write_map); + +if ( !track ) +{ +