Re: [PATCH v6 12/12] KVM: indicate readonly access fault

From: Avi Kivity
Date: Wed Sep 12 2012 - 11:55:28 EST


On 09/12/2012 06:44 PM, Marcelo Tosatti wrote:
> On Wed, Sep 12, 2012 at 06:34:33PM +0300, Avi Kivity wrote:
>> On 09/11/2012 05:39 PM, Marcelo Tosatti wrote:
>> > On Tue, Sep 11, 2012 at 12:18:22PM +0300, Avi Kivity wrote:
>> >> > The same can happen with slot deletion, for example.
>> >> >
>> >> > Userspace (which performed the modification which can result in faults
>> >> > to non-existant/read-only/.../new-tag memslot), must handle the faults
>> >> > properly or avoid the possibility for reference to memslot information
>> >> > from the past.
>> >> >
>> >> > I think its worthwhile to add a note about this in the API
>> >> > documentation: "The user of this interface is responsible for handling
>> >> > references to stale memslot information, either by handling
>> >> > exit notifications which reference stale memslot information or not
>> >> > allowing these notifications to exist by stopping all vcpus in userspace
>> >> > before performing modifications to the memslots map".
>> >>
>> >> Or we can drop the new interface and rely on userspace to perform the
>> >> lookup under its own locking rules.
>> >>
>> >> It's slow, but writes to ROM or ROM/device are rare anyway.
>> >
>> > Lookup what information?
>>
>> Where to dispatch the write.
>>
>> In fact userspace has to do that anyway if it's a ROM/device. There's
>> no way userspace can guess that unless we pass in the slot number (which
>> isn't synchronized with anything).
>
> Alright, do you prefer the details of this exit to be worked out later,
> when necessary, then?
>
> That is, not merge this particular patch of the series?
>

Right. I think it is unneeded.


--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/