Re: [PATCH RFC v2 6/6] KVM: introduce a new API for getting dirty bitmaps

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On 04/23/2010 01:20 PM, Alexander Graf wrote:

I would say the reason is that if we did not convert the user-space pointer to
a "void *" kvm_get_dirty_log() would end up copying the dirty log to

(log->dirty_bitmap<<  32) | 0x00000000
Well yes, that was the problem. If we always set the __u64 value to the pointer we're safe though.

union {
   void *p;
   __u64 q;

void x(void *r)
   // breaks:
   p = r;

   // works:
   q = (ulong)r;

In that case it's better to avoid p altogether, since users will naturally assign to the pointer.

Using a 64-bit integer avoids the problem (though perhaps not sufficient for s390, Arnd?)

Do not meddle in the internals of kernels, for they are subtle and quick to panic.

To unsubscribe from this list: send the line "unsubscribe kvm-ia64" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at

[Index of Archives]     [Linux KVM Devel]     [Linux Virtualization]     [Big List of Linux Books]     [Linux SCSI]     [Yosemite Forum]

  Powered by Linux