|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] x86/HVM: honor p2m_ram_ro in hvm_map_guest_frame_rw()
>>> On 24.07.15 at 12:26, <wei.liu2@xxxxxxxxxx> wrote:
> On Fri, Jul 24, 2015 at 03:41:26AM -0600, Jan Beulich wrote:
>> @@ -3618,7 +3618,12 @@ static void *__hvm_map_guest_frame(unsig
>> }
>>
>> if ( writable )
>
> I don't claim I know this piece of code, but checking the pointer but
> not the content looks suspicious.
>
>> - paging_mark_dirty(d, page_to_mfn(page));
>> + {
>> + if ( !p2m_is_discard_write(p2mt) )
>> + paging_mark_dirty(d, page_to_mfn(page));
>> + else
>> + *writable = 0;
>
> You then set *writable here, which makes it even more suspicious.
Why? A caller _wanting_ a writable mapping passes non-NULL as
the pointer argument (pre-initialized to point to a variable holding
TRUE aka 1). Upon return the variable will have got set to FALSE
aka 0 if the page shouldn't be written to.
Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |