Re: [Qemu-devel] [PATCH 1/3] migration/postcopy: the valid condition is one less then end
On Fri, Jun 28, 2019 at 04:09:50PM +0100, Dr. David Alan Gilbert wrote: >* Wei Yang (richardw.y...@linux.intel.com) wrote: >> If one equals end, it means we have gone through the whole bitmap. >> >> Use a more restrict check to skip a unnecessary condition. >> >> Signed-off-by: Wei Yang > >Yes, I don't think that'll break, since I think the find_next_zero_bit >will also return end, and then discard_length would be 0; still I think >it's a correct fix. Yep, you are exactly right. > >Reviewed-by: Dr. David Alan Gilbert > >> --- >> migration/ram.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/migration/ram.c b/migration/ram.c >> index 908517fc2b..b78169e811 100644 >> --- a/migration/ram.c >> +++ b/migration/ram.c >> @@ -2777,7 +2777,7 @@ static int postcopy_send_discard_bm_ram(MigrationState >> *ms, >> for (current = 0; current < end; ) { >> unsigned long one = find_next_bit(unsentmap, end, current); >> >> -if (one <= end) { >> +if (one < end) { >> unsigned long zero = find_next_zero_bit(unsentmap, end, one + >> 1); >> unsigned long discard_length; >> >> -- >> 2.19.1 >> >-- >Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK -- Wei Yang Help you, Help me
Re: [Qemu-devel] [PATCH 1/3] migration/postcopy: the valid condition is one less then end
* Wei Yang (richardw.y...@linux.intel.com) wrote: > If one equals end, it means we have gone through the whole bitmap. > > Use a more restrict check to skip a unnecessary condition. > > Signed-off-by: Wei Yang Yes, I don't think that'll break, since I think the find_next_zero_bit will also return end, and then discard_length would be 0; still I think it's a correct fix. Reviewed-by: Dr. David Alan Gilbert > --- > migration/ram.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/migration/ram.c b/migration/ram.c > index 908517fc2b..b78169e811 100644 > --- a/migration/ram.c > +++ b/migration/ram.c > @@ -2777,7 +2777,7 @@ static int postcopy_send_discard_bm_ram(MigrationState > *ms, > for (current = 0; current < end; ) { > unsigned long one = find_next_bit(unsentmap, end, current); > > -if (one <= end) { > +if (one < end) { > unsigned long zero = find_next_zero_bit(unsentmap, end, one + 1); > unsigned long discard_length; > > -- > 2.19.1 > -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK
[Qemu-devel] [PATCH 1/3] migration/postcopy: the valid condition is one less then end
If one equals end, it means we have gone through the whole bitmap. Use a more restrict check to skip a unnecessary condition. Signed-off-by: Wei Yang --- migration/ram.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/migration/ram.c b/migration/ram.c index 908517fc2b..b78169e811 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -2777,7 +2777,7 @@ static int postcopy_send_discard_bm_ram(MigrationState *ms, for (current = 0; current < end; ) { unsigned long one = find_next_bit(unsentmap, end, current); -if (one <= end) { +if (one < end) { unsigned long zero = find_next_zero_bit(unsentmap, end, one + 1); unsigned long discard_length; -- 2.19.1