* Wei Wang (wei.w.w...@intel.com) wrote: > On 08/07/2018 05:53 PM, Dr. David Alan Gilbert wrote: > > * Wei Wang (wei.w.w...@intel.com) wrote: > > > On 08/07/2018 03:39 PM, Peter Xu wrote: > > > > On Tue, Jul 31, 2018 at 06:01:18PM +0800, Wei Wang wrote: > > > > > When "nbits = 0", which means no bits to mask, this macro is expected > > > > > to > > > > > return 0, instead of 0xffffffff. This patch changes the macro to > > > > > return > > > > > 0 when there is no bit needs to be masked. > > > > > > > > > > Signed-off-by: Wei Wang <wei.w.w...@intel.com> > > > > > CC: Juan Quintela <quint...@redhat.com> > > > > > CC: Dr. David Alan Gilbert <dgilb...@redhat.com> > > > > > CC: Peter Xu <pet...@redhat.com> > > > > Reviewed-by: Peter Xu <pet...@redhat.com> > > > > > > > > Is there any existing path that can trigger this nbits==0? > > > Not sure about other bitmap APIs which call this macro. But it happens in > > > the patches we are working on, which use bitmap_count_one. > > > It would be good to have the macro itself handle this corner case, so that > > > callers won't need to worry about that. > > Given that I see you're having a similar discussion on the kernel list > > we should see how that pans out before making qemu changes. > > OK. > The situation is a little different in Linux, because all the callers there > have already taken the responsibilities to avoid the "nbits=0" corner case, > that's also the reason that they want to stick with the old way. Here in > QEMU, most callers (e.g. bitmap_count_one, bitmap_fill, bitmap_intersects) > haven't checked that, so fixing the macro itself might be a better choice > here.
Where we have macros or functions that have the same name as the kernel then we should keep them consistent with the kernel unless we have a VERY good reason to make them differ; that's especially true if the difference is a small subtle difference like this; otherwise it would be too easy for someone used to QEMU or the kernel to introduce a bad mistake in the other one because they think they're using the same thing. Dave > Best, > Wei -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK