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

Re: [Xen-devel] [PATCH V3] libxc: Have xc_translate_foreign_address() set errno properly



On 03/16/2016 11:00 AM, Konrad Rzeszutek Wilk wrote:
> On Wed, Mar 16, 2016 at 10:20:02AM +0200, Razvan Cojocaru wrote:
>> On 03/03/2016 03:58 PM, Razvan Cojocaru wrote:
>>> Currently it's possible for xc_translate_foreign_address() to fail
>>> and errno still be set to success. This patch fixes the issue.
>>> Based on the first half of Don Slutz' patch:
>>> http://lists.xen.org/archives/html/xen-devel/2014-03/msg03720.html
>>>
>>> Signed-off-by: Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx>
>>> Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx>
>>>
>>> ---
>>> Changes since V2:
>>>  - Fixed description text.
>>>  - Added Wei Liu's ack.
>>> ---
>>>  tools/libxc/xc_pagetab.c | 4 +++-
>>>  1 file changed, 3 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/tools/libxc/xc_pagetab.c b/tools/libxc/xc_pagetab.c
>>> index ec97890..92eebd6 100644
>>> --- a/tools/libxc/xc_pagetab.c
>>> +++ b/tools/libxc/xc_pagetab.c
>>> @@ -88,8 +88,10 @@ unsigned long xc_translate_foreign_address(xc_interface 
>>> *xch, uint32_t dom,
>>>              return 0;
>>>          memcpy(&pte, map + (paddr & (PAGE_SIZE - 1)), size);
>>>          munmap(map, PAGE_SIZE);
>>> -        if (!(pte & 1)) 
>>> +        if (!(pte & 1)) {
>>> +            errno = EADDRNOTAVAIL;
>>>              return 0;
>>> +        }
>>>          paddr = pte & 0x000ffffffffff000ull;
>>>          if (level == 2 && (pte & PTE_PSE)) {
>>>              mask = ((mask ^ ~-mask) >> 1); /* All bits below first set bit 
>>> */
>>>
>>
>> Should I change something in this patch? It's been roughly two weeks
>> since the previous message with no commit to staging and no additional
>> comments, could I have missed a review?
> 
> Applied.

Thank you!


Cheers,
Razvan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.