| 
    
 [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 09/15] xen/passthrough: iommu: Introduce arch specific code
 Hi Andrew,
On 02/24/2014 11:10 AM, Andrew Cooper wrote:
> On 24/02/14 10:44, Jan Beulich wrote:
>>>>> On 23.02.14 at 23:16, Julien Grall <julien.grall@xxxxxxxxxx> wrote:
>>> --- a/xen/include/xen/hvm/iommu.h
>>> +++ b/xen/include/xen/hvm/iommu.h
>>> @@ -23,32 +23,8 @@
>>>  #include <xen/iommu.h>
>>>  #include <asm/hvm/iommu.h>
>>>  
>>> -struct g2m_ioport {
>>> -    struct list_head list;
>>> -    unsigned int gport;
>>> -    unsigned int mport;
>>> -    unsigned int np;
>>> -};
>>> -
>>> -struct mapped_rmrr {
>>> -    struct list_head list;
>>> -    u64 base;
>>> -    u64 end;
>>> -};
>>> -
>>>  struct hvm_iommu {
>>> -    u64 pgd_maddr;                 /* io page directory machine address */
>>> -    spinlock_t mapping_lock;       /* io page table lock */
>>> -    int agaw;     /* adjusted guest address width, 0 is level 2 30-bit */
>>> -    struct list_head g2m_ioport_list;  /* guest to machine ioport mapping 
>>> */
>>> -    u64 iommu_bitmap;              /* bitmap of iommu(s) that the domain 
>>> uses */
>>> -    struct list_head mapped_rmrrs;
>>> -
>>> -    /* amd iommu support */
>>> -    int domain_id;
>> At the very least this field doesn't look all that architecture specific,
>> even if it might only be used on x86/AMD right now.
> 
> Furthermore, it can be found using container_of()
Every AMD function starts with:
  hd = domain_hvm_iommu(d)
And then use hd->arch.domain_id in the code.
x86/AMD iommu can directly use d->domain_id, as it's already done in
some place. No need to use container_of() :).
I will send a patch to remove domain_id in the structure.
Cheers,
-- 
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
 
  | 
  
![]()  | 
            
         Lists.xenproject.org is hosted with RackSpace, monitoring our  |