Messages in this thread | | | Date | Thu, 6 Dec 2012 21:59:49 -0200 | From | Marcelo Tosatti <> | Subject | Re: [RFC PATCH 5/6] kvm: Re-introduce memslots->nmemslots |
| |
On Thu, Dec 06, 2012 at 09:58:48PM -0200, Marcelo Tosatti wrote: > On Wed, Dec 05, 2012 at 08:51:37PM -0700, Alex Williamson wrote: > > > > id_to_memslot seems like a good place to catch all the users since > > > > that's the only way to get a slot from a slot id after the array is > > > > sorted. We need to check both is the slot in bounds (EINVAL), but also > > > > is it allocated (ENOENT). id_to_memslot could both of these if we > > > > wanted to switch it to ERR_PTR. Thanks, > > > > > > > > Alex > > > > > > There should never be a reference to a slot out of bounds by KVM itself > > > (BUG_ON). Only userspace can attempt a reference to such slot. > > > > If I understand correctly, you're saying this last chunk is unique > > because kvm_get_dirty_log() is an internal interface and the test should > > be restricted to callers from userspace interfaces, namely > > kvm_vm_ioctl_get_dirty_log(). That sounds reasonable; book3s_pr seems > > to be the only caller that relies on kvm_get_dirty_log() validating the > > slot. Thanks, > > > > Alex > > Yep - so you can move the check to such userspace interfaces, and bug on > on WARN otherwise (in id_to_memslot).
WARN_ON. The point is, if its not a valid condition, it should be explicitly so.
> Does that make sense?? >
| |