[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Xen-devel] [RFC PATCH V2 1/2] xen-pt: bind/unbind inte
From: |
Lan Tianyu |
Subject: |
Re: [Qemu-devel] [Xen-devel] [RFC PATCH V2 1/2] xen-pt: bind/unbind interrupt remapping format MSI |
Date: |
Tue, 23 May 2017 20:16:25 +0800 |
User-agent: |
Mozilla/5.0 (X11; Linux i686 on x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 |
On 2017年05月19日 20:04, Jan Beulich wrote:
>>>> On 19.05.17 at 13:16, <address@hidden> wrote:
>> On Thu, May 18, 2017 at 01:32:59AM -0400, Lan Tianyu wrote:
>>> --- a/include/hw/i386/apic-msidef.h
>>> +++ b/include/hw/i386/apic-msidef.h
>>> @@ -26,6 +26,7 @@
>>>
>>> #define MSI_ADDR_DEST_ID_SHIFT 12
>>> #define MSI_ADDR_DEST_IDX_SHIFT 4
>>> -#define MSI_ADDR_DEST_ID_MASK 0x00ffff0
>>> +#define MSI_ADDR_DEST_ID_MASK 0x000fff00
>> The value of MSI_ADDR_DEST_ID_MASK is changed here. I think the patch
>> should be:
>> +#define MSI_ADDR_DEST_ID_MASK 0x000ffff0
> Judging from other sources, rather the other way around - the
> mask needs to have further bits removed (should be 0x000ff000
> afaict). Xen sources confirm this, and while Linux has the value
> you suggest, that contradicts
Agree. Defining the mask as "0x000ff000" makes more sense.
Just check Qemu source code. Only apic_send_msi() and msi_dest_id() use
the mask
to get dest apic id. They mask MSI address field with
MSI_ADDR_DEST_ID_MASK and
then right-shift 12bit. The low 12bit won't be used.
Anthony, does this make sense?
--
Best regards
Tianyu Lan
Re: [Qemu-devel] [RFC PATCH V2 0/2] Qemu: Add Xen vIOMMU interrupt remapping function., no-reply, 2017/05/18