On Sun, Jan 19, 2020 at 10:01:50AM +0100, Paolo Bonzini wrote: > On 09/01/20 15:57, Peter Xu wrote: > > -int __x86_set_memory_region(struct kvm *kvm, int id, gpa_t gpa, u32 size) > > +/* > > + * If `uaddr' is specified, `*uaddr' will be returned with the > > + * userspace address that was just allocated. `uaddr' is only > > + * meaningful if the function returns zero, and `uaddr' will only be > > + * valid when with either the slots_lock or with the SRCU read lock > > + * held. After we release the lock, the returned `uaddr' will be invalid. > > + */ > > In practice the address is still protected by the refcount, isn't it? > Only destroying the VM could invalidate it. Yes I think so. I wanted to make it clear that uaddr is temporary, however "will be invalid" could be be too strong... Thanks, -- Peter Xu