[RFC 1/3 v3] mm: iommu: An API to unify IOMMU, CPU and device memory management

Russell King - ARM Linux linux at arm.linux.org.uk
Wed Jul 21 03:28:37 EDT 2010


On Wed, Jul 21, 2010 at 11:19:58AM +0530, Shilimkar, Santosh wrote:
> > -----Original Message-----
> > From: linux-arm-kernel-bounces at lists.infradead.org [mailto:linux-arm-
> > kernel-bounces at lists.infradead.org] On Behalf Of Russell King - ARM Linux
> > Sent: Wednesday, July 21, 2010 4:00 AM
> > To: stepanm at codeaurora.org
> > Cc: linux-arch at vger.kernel.org; dwalker at codeaurora.org; mel at csn.ul.ie;
> > linux-arm-msm at vger.kernel.org; linux-kernel at vger.kernel.org; FUJITA
> > Tomonori; linux-mm at kvack.org; andi at firstfloor.org; Zach Pfeffer; Michael
> > Bohan; Tim HRM; linux-omap at vger.kernel.org; linux-arm-
> > kernel at lists.infradead.org; ebiederm at xmission.com
> > Subject: Re: [RFC 1/3 v3] mm: iommu: An API to unify IOMMU, CPU and device
> > memory management

*************************************************************************
> > This is difficult to achieve without remapping kernel memory using L2
> > page tables, so we can unmap pages on 4K page granularity.  That's
> > going to increase TLB overhead and result in lower system performance
> > as there'll be a greater number of MMU misses.
*************************************************************************

> > However, one obvious case would be to use highmem-only pages for
> > remapping - but you then have to ensure that those pages are never
> > kmapped in any way, because those mappings will fall into the same
> > unpredictable category that we're already trying to avoid.  This
> > may be possible, but you'll have to ensure that most of the system
> > RAM is in highmem - which poses other problems (eg, if lowmem gets
> > low.)
>
> Why can't we consider an option of removing the old mappings when 
> we need to create new ones with different attributes as suggested
> by Catalin on similar thread previously. This will avoid the duplicate
> mapping with different attributes issue on newer ARMs.

See the first paragraph which I've highlighted above.



More information about the linux-arm-kernel mailing list