On Tuesday 04 May 2010, Takuya Yoshikawa wrote: > > Although we can use *_le_bit() helpers to treat bitmaps le arranged, > having le bit offset calculation as a seperate macro gives us more freedom. > > For example, KVM has le arranged dirty bitmaps for VGA, live-migration > and they are used in user space too. To avoid bitmap copies between kernel > and user space, we want to update the bitmaps in user space directly. > To achive this, le bit offset with *_user() functions help us a lot. > > So let us use the le bit offset calculation part by defining it as a new > macro: generic_le_bit_offset() . Does this work correctly if your user space is 32 bits (i.e. unsigned long is different size in user space and kernel) in both big- and little-endian systems? I'm not sure about all the details, but I think you cannot in general share bitmaps between user space and kernel because of this. Arnd -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html