[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1431714237-880-1-git-send-email-toshi.kani@hp.com>
Date: Fri, 15 May 2015 12:23:51 -0600
From: Toshi Kani <toshi.kani@...com>
To: bp@...en8.de, akpm@...ux-foundation.org, hpa@...or.com,
tglx@...utronix.de, mingo@...hat.com
Cc: linux-mm@...ck.org, x86@...nel.org, linux-kernel@...r.kernel.org,
dave.hansen@...el.com, Elliott@...com, pebolle@...cali.nl,
mcgrof@...e.com
Subject: [PATCH v5 0/6] mtrr, mm, x86: Enhance MTRR checks for huge I/O mapping
This patchset enhances MTRR checks for the kernel huge I/O mapping.
The following functional changes are made in patch 6/6.
- Allow pud_set_huge() and pmd_set_huge() to create a huge page mapping
when the range is covered by a single MTRR entry of any memory type.
- Log a pr_warn_once() 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/6 simplifies the condition of HAVE_ARCH_HUGE_VMAP in Kconfig.
Patch 2/6 - 5/6 are bug fix and clean up to mtrr_type_lookup().
The patchset is based on the tip tree.
---
v5:
- Separate Kconfig change and reordered/squashed the patchset. (Borislav
Petkov)
- Update logs, comments and functional structures. (Borislav Petkov)
- Move MTRR_STATE_MTRR_XXX definitions to kernel asm/mtrr.h. (Borislav
Petkov)
- Change mtrr_type_lookup() not to set 'uniform' in case of MTRR_TYPE_INVALID.
(Borislav Petkov)
- Remove a patch accepted in the tip free from the series.
v4:
- 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)
v3:
- 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)
v2:
- Update change logs and comments per review comments.
(Ingo Molnar)
- Add patch 3/4 to clean up mtrr_type_lookup(). (Ingo Molnar)
---
Toshi Kani (6):
1/6 mm, x86: Simplify conditions of HAVE_ARCH_HUGE_VMAP
2/6 mtrr, x86: Fix MTRR lookup to handle inclusive entry
3/6 mtrr, x86: Fix MTRR state checks in mtrr_type_lookup()
4/6 mtrr, x86: Define MTRR_TYPE_INVALID for mtrr_type_lookup()
5/6 mtrr, x86: Clean up mtrr_type_lookup()
6/6 mtrr, mm, x86: Enhance MTRR checks for KVA huge page mapping
---
arch/x86/Kconfig | 2 +-
arch/x86/include/asm/mtrr.h | 10 +-
arch/x86/include/uapi/asm/mtrr.h | 8 +-
arch/x86/kernel/cpu/mtrr/cleanup.c | 3 +-
arch/x86/kernel/cpu/mtrr/generic.c | 200 ++++++++++++++++++++++++-------------
arch/x86/mm/pat.c | 4 +-
arch/x86/mm/pgtable.c | 59 ++++++++---
7 files changed, 194 insertions(+), 92 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists