Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1202592

Re: [PATCH 03/26] iommu/vt-d: Split up iommu->domains array

From Joerg Roedel <joro@8bytes.org>
Newsgroups linux.kernel
Subject Re: [PATCH 03/26] iommu/vt-d: Split up iommu->domains array
Date 2015-08-07 13:20 +0200
Message-ID <pUNQS-6fD-13@gated-at.bofh.it> (permalink)
References <pU8E1-57u-9@gated-at.bofh.it> <pU8NM-5jj-99@gated-at.bofh.it> <pUBZo-5LQ-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Thu, Aug 06, 2015 at 01:20:09PM -0600, Alex Williamson wrote:
> On Wed, 2015-08-05 at 17:18 +0200, Joerg Roedel wrote:
> >  static void set_iommu_domain(struct intel_iommu *iommu, u16 did,
> >  			     struct dmar_domain *domain)
> >  {
> > -	iommu->domains[did] = domain;
> > +	struct dmar_domain **domains;
> > +	int idx = did >> 8;
> > +
> > +	if (!iommu->domains[idx]) {
> > +		size_t size = 256 * sizeof(struct dmar_domain *);
> > +		iommu->domains[idx] = kzalloc(size, GFP_ATOMIC);
> > +	}
> > +
> > +	domains = iommu->domains[idx];
> > +	if (WARN_ON(!domains))
> > +		return;
> > +	else
> > +		domains[did & 0xff] = domain;
> >  }
> 
> I'm tempted to suggest using pages here since we're dealing with 2k
> second level arrays, but maybe caring about pointers per page just makes
> that ugly.

The benefit would be that we avoid the slab-overhead while allocating.
But since the VT-d driver is needed on platforms with different
page-sizes, the handling would be indeed more complicated because we
have to split the index at a different point then depending on the
architecture.


	Joerg

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

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 00/26] iommu/vt-d: Clean up device<->domain  attachment Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:30 +0200
  [PATCH 03/26] iommu/vt-d: Split up iommu->domains array Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:30 +0200
    Re: [PATCH 03/26] iommu/vt-d: Split up iommu->domains array Alex Williamson <alex.williamson@redhat.com> - 2015-08-07 00:40 +0200
      Re: [PATCH 03/26] iommu/vt-d: Split up iommu->domains array Joerg Roedel <joro@8bytes.org> - 2015-08-07 13:20 +0200
  [PATCH 14/26] iommu/vt-d: Move context-mapping  into dmar_insert_dev_info Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:40 +0200
  [PATCH 11/26] iommu/vt-d: Simplify io/tlb flushing in intel_iommu_unmap Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:40 +0200
  [PATCH 13/26] iommu/vt-d: Simplify domain_remove_dev_info() Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:40 +0200
  [PATCH 10/26] iommu/vt-d: Replace iommu_bmp with a refcount Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:40 +0200
    Re: [PATCH 10/26] iommu/vt-d: Replace iommu_bmp with a refcount Alex Williamson <alex.williamson@redhat.com> - 2015-08-06 21:30 +0200
      Re: [PATCH 10/26] iommu/vt-d: Replace iommu_bmp with a refcount Joerg Roedel <joro@8bytes.org> - 2015-08-07 13:20 +0200
  [PATCH 12/26] iommu/vt-d: Simplify domain_remove_one_dev_info() Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:40 +0200
  [PATCH 16/26] iommu/vt-d: Rename domain_remove_one_dev_info() Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:40 +0200
  [PATCH 17/26] iommu/vt-d: Rename iommu_detach_dependent_devices() Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:40 +0200
  [PATCH 21/26] iommu/vt-d: Only call domain_remove_one_dev_info to detach old domain Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:40 +0200
  [PATCH 23/26] iommu/vt-d: Remove dmar_global_lock from device_notifier Joerg Roedel <joro@8bytes.org> - 2015-08-05 17:40 +0200
  Re: [PATCH 00/26] iommu/vt-d: Clean up device<->domain  attachment Alex Williamson <alex.williamson@redhat.com> - 2015-08-06 23:10 +0200
    Re: [PATCH 00/26] iommu/vt-d: Clean up device<->domain  attachment Joerg Roedel <joro@8bytes.org> - 2015-08-07 13:30 +0200

csiph-web