ACPI: Page based coalescing of I/O remappings optimization
authorMyron Stowe <myron.stowe@hp.com>
Thu, 21 Oct 2010 20:24:14 +0000 (14:24 -0600)
committerLen Brown <len.brown@intel.com>
Mon, 25 Oct 2010 03:31:43 +0000 (23:31 -0400)
This patch optimizes ACPI MMIO remappings by keeping track of the
remappings on a PAGE_SIZE granularity.

When an ioremap() occurs, the underlying infrastructure works on a 'page'
based granularity.  As such, an ioremap() request for 1 byte for example,
will end up mapping in an entire (PAGE_SIZE) page.  Huang Ying took
advantage of this in commit 15651291a2f8c11e7e6a42d8bfde7a213ff13262 by
checking if subsequent ioremap() requests reside within any of the list's
existing remappings still in place, and if so, incrementing a reference
count on the existing mapping as opposed to performing another ioremap().

Signed-off-by: Myron Stowe <myron.stowe@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>

No differences found