On 01/05/2018 11:01 AM, Dr. David Alan Gilbert (git) wrote: > From: "Dr. David Alan Gilbert" <dgilb...@redhat.com> > > The dirty bitmaps are built from 'long'sand there is fast-path code
s/'long'sand/'long's, and/ > for synchronising the case where the RAMBlock is aligned to the start > of a long boundary. Align the allocation to this boundary > to cause the fast path to be used. > > Suggested-by: Paolo Bonzini <pbonz...@redhat.com> > Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com> > --- > exec.c | 5 +++++ > 1 file changed, 5 insertions(+) Reviewed-by: Eric Blake <ebl...@redhat.com> > > diff --git a/exec.c b/exec.c > index 7966570231..644603f05e 100644 > --- a/exec.c > +++ b/exec.c > @@ -1694,6 +1694,11 @@ static ram_addr_t find_ram_offset(ram_addr_t size) > } > } > > + /* Align blocks to start on a 'long' in the bitmap > + * which makes the bitmap sync'ing take the fast path. > + */ > + end = ROUND_UP(end, BITS_PER_LONG << TARGET_PAGE_BITS); > + > /* If it fits remember our place and remember the size > * of gap, but keep going so that we might find a smaller > * gap to fill so avoiding fragmentation. > -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature