[lkml]   [2015]   [Mar]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH v4 0/7] mtrr, mm, x86: Enhance MTRR checks for huge I/O mapping
This patchset enhances MTRR checks for the kernel huge I/O mapping,
which was enabled by the patchset below:

The following functional changes are made in patch 7/7.
- Allow pud_set_huge() and pmd_set_huge() to create a huge page
mapping to a range covered by a single MTRR entry of any memory
- Log a pr_warn() message when a specified PMD map range spans more
than a single MTRR entry. Drivers should make a mapping request
aligned to a single MTRR entry when the range is covered by MTRRs.

Patch 1/7 addresses other review comments to the mapping funcs for
better code read-ability. Patch 2/7 - 6/7 are bug fixes and clean up
to mtrr_type_lookup().

The patchset is based on the -mm tree.
- Update the change logs of patchset. (Ingo Molnar)
- Add patch 3/7 to make the wrong address fix as a separate patch.
(Ingo Molnar)
- Add patch 5/7 to define MTRR_TYPE_INVALID. (Ingo Molnar)
- Update patch 6/7 to document MTRR fixed ranges. (Ingo Molnar)

- Add patch 3/5 to fix a bug in MTRR state checks.
- Update patch 4/5 to create separate functions for the fixed and
variable entries. (Ingo Molnar)

- Update change logs and comments per review comments.
(Ingo Molnar)
- Add patch 3/4 to clean up mtrr_type_lookup(). (Ingo Molnar)

Toshi Kani (7):
1/7 mm, x86: Document return values of mapping funcs
2/7 mtrr, x86: Fix MTRR lookup to handle inclusive entry
3/7 mtrr, x86: Remove a wrong address check in __mtrr_type_lookup()
4/7 mtrr, x86: Fix MTRR state checks in mtrr_type_lookup()
5/7 mtrr, x86: Define MTRR_TYPE_INVALID for mtrr_type_lookup()
6/7 mtrr, x86: Clean up mtrr_type_lookup()
7/7 mtrr, mm, x86: Enhance MTRR checks for KVA huge page mapping

arch/x86/Kconfig | 2 +-
arch/x86/include/asm/mtrr.h | 7 +-
arch/x86/include/uapi/asm/mtrr.h | 12 ++-
arch/x86/kernel/cpu/mtrr/generic.c | 192 ++++++++++++++++++++++++-------------
arch/x86/mm/pat.c | 4 +-
arch/x86/mm/pgtable.c | 53 +++++++---
6 files changed, 181 insertions(+), 89 deletions(-)

 \ /
  Last update: 2015-03-25 00:01    [W:0.208 / U:37.424 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site