[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/3] migration/postcopy: break the loop when the
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-devel] [PATCH 2/3] migration/postcopy: break the loop when there is no more page to discard |
Date: |
Fri, 28 Jun 2019 16:15:47 +0100 |
User-agent: |
Mutt/1.12.0 (2019-05-25) |
* Wei Yang (address@hidden) wrote:
> When one is equal or bigger then end, it means there is no page to
> discard. Just break the loop in this case instead of processing it.
>
> No functional change, just refactor it a little.
>
> Signed-off-by: Wei Yang <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>
> ---
> migration/ram.c | 26 +++++++++++++-------------
> 1 file changed, 13 insertions(+), 13 deletions(-)
>
> diff --git a/migration/ram.c b/migration/ram.c
> index b78169e811..b41b58ee54 100644
> --- a/migration/ram.c
> +++ b/migration/ram.c
> @@ -2776,23 +2776,23 @@ static int
> postcopy_send_discard_bm_ram(MigrationState *ms,
>
> for (current = 0; current < end; ) {
> unsigned long one = find_next_bit(unsentmap, end, current);
> + unsigned long zero, discard_length;
>
> - if (one < end) {
> - unsigned long zero = find_next_zero_bit(unsentmap, end, one + 1);
> - unsigned long discard_length;
> + if (one >= end) {
> + break;
> + }
>
> - if (zero >= end) {
> - discard_length = end - one;
> - } else {
> - discard_length = zero - one;
> - }
> - if (discard_length) {
> - postcopy_discard_send_range(ms, pds, one, discard_length);
> - }
> - current = one + discard_length;
> + zero = find_next_zero_bit(unsentmap, end, one + 1);
> +
> + if (zero >= end) {
> + discard_length = end - one;
> } else {
> - current = one;
> + discard_length = zero - one;
> + }
> + if (discard_length) {
> + postcopy_discard_send_range(ms, pds, one, discard_length);
> }
> + current = one + discard_length;
> }
>
> return 0;
> --
> 2.19.1
>
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK