All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 00/47] mtrr/x86/drivers: bury MTRR
@ 2015-03-20 23:17 ` Luis R. Rodriguez
  0 siblings, 0 replies; 710+ messages in thread
From: Luis R. Rodriguez @ 2015-03-20 23:17 UTC (permalink / raw)
  To: luto, mingo, tglx, hpa, jgross, JBeulich, bp, suresh.b.siddha,
	venkatesh.pallipadi, airlied
  Cc: linux-kernel, linux-fbdev, x86, xen-devel, Luis R. Rodriguez

From: "Luis R. Rodriguez" <mcgrof@suse.com>

When a system has PAT support enabled you don't need to be
using MTRRs. Andy had added arch_phys_wc_add() long ago to
help with this but not all drivers were converted over. We
have to take care to only convert drivers where we know that
the proper ioremap_wc() API has been used. Doing this requires
a bit of work on verifying the driver split out the ioremap'd
areas -- and if not doing that ourselves. Verifying a driver
uses the same areas can be hard but with a bit of love Coccinelle
can help with that.

We're motivated to change drivers for a few reasons:

1) Take advantage of PAT when available

2) Help with the goal of eventually using _PAGE_CACHE_UC over
   _PAGE_CACHE_UC_MINUS on x86 on ioremap_nocache() (de33c442e)

3) Bury MTRR code away from drivers as it is architecture specific

While working on the conversion I noticed a few things.

a) Run time disabling of MTRR

Some systems can technically have both PAT and MTRR enabled
and even if they support it, a system may end up not enabling MTRR.
There are a few reasons why this can happen but the code right now
doesn't address this well. This leads to another point: PAT code
right now is not a first class citizen on x86 -- pat_init() depends
on MTRR code so we can't actually enable PAT without building MTRR.
Doing this requires quite a bit more work so let this serve as
a starting point for conversation if we want to address that.

b) Driver work and required ioremap split

In order to take advantage of PAT device drivers that were using
MTRR must make sure that the area that was using MTRR is ioremap'd
separately. Fortunately a lot of drivers already do this, but there's
quite a bit of drivers that require some love to get that happen.
This leaves us needing to expose an last resort API to annotate this
and also avoid a regression on performance for systems that may have
PAT but can't yet move away from using MTRR. To find the drivers that
need love check out __arch_phys_wc_add(). For a good example driver
where the work was done refer to the atyfb driver fixes.

c) Missing APIs for write-combining

There's a few API calls missing to take advantage of write-combining,
this series add those.

d) Further framebuffer driver MTRR usage simplication

We can simplify MTRR usage by having the framebuffer core
add the MTRR by passing a flag when register_framebuffer()
is called, this could for instance be done on very few drivers
where the smem_len and smem_start are both used for the ioremap_wc()
and also for the arch_phys_wc_add(). Coccinelle can be easily used
to do a transformation here. I didn't do that here given that it
does not work for all device drivers *and* DRM drivers already
have something similar. Lastly this technically could also be done
on some other generic helper --- but figured its best we review that
here. One reason to *not* do this is that tons of framebuffer drivers
have mtrr options exposed -- we'd need to generalize those and provide
a port ... or deal with the fact that we are going to remove all that.

Luis R. Rodriguez (47):
  x86: mtrr: annotate mtrr_type_lookup() is only implemented on
    generic_mtrr_ops
  x86: mtrr: generalize run time disabling of MTRR
  devres: add devm_ioremap_wc()
  pci: add pci_ioremap_wc_bar()
  pci: add pci_iomap_wc() variants
  mtrr: add __arch_phys_wc_add()
  video: fbdev: atyfb: move framebuffer length fudging to helper
  video: fbdev: atyfb: clarify ioremap() base and length used
  vidoe: fbdev: atyfb: remove and fix MTRR MMIO "hole" work around
  video: fbdev: atyfb: use arch_phys_wc_add() and ioremap_wc()
  IB/qib: add acounting for MTRR
  IB/qib: use arch_phys_wc_add()
  IB/ipath: add counting for MTRR
  IB/ipath: use __arch_phys_wc_add()
  [media] media: ivtv: use __arch_phys_wc_add()
  fusion: use __arch_phys_wc_add()
  video: fbdev: vesafb: only support MTRR_TYPE_WRCOMB
  vidoe: fbdev: vesafb: add missing mtrr_del() for added MTRR
  video: fbdev: vesafb: use arch_phys_wc_add()
  mtrr: avoid ifdef'ery with phys_wc_to_mtrr_index()
  ethernet: myri10ge: use arch_phys_wc_add()
  staging: sm750fb: use arch_phys_wc_add() and ioremap_wc()
  staging: xgifb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: arkfb: use arch_phys_wc_add() and pci_iomap_wc()
  video: fbdev: radeonfb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: gbefb: add missing mtrr_del() calls
  video: fbdev: gbefb: use arch_phys_wc_add() and devm_ioremap_wc()
  video: fbdev: intelfb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: matrox: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: neofb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: s3fb: use arch_phys_wc_add() and pci_iomap_wc()
  video: fbdev: nvidia: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: savagefb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: sisfb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: aty: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: i810: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: i740fb: use arch_phys_wc_add() and pci_ioremap_wc_bar()
  video: fbdev: kyrofb: use arch_phys_wc_add() and pci_ioremap_wc_bar()
  video: fbdev: pm2fb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: pm3fb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: rivafb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: tdfxfb: use arch_phys_wc_add() and ioremap_wc()
  video: fbdev: vt8623fb: use arch_phys_wc_add() and pci_iomap_wc()
  video: fbdev: atmel_lcdfb: use ioremap_wc() for framebuffer
  video: fbdev: geode gxfb: use ioremap_wc() for framebuffer
  video: fbdev: gxt4500: use pci_ioremap_wc_bar() for framebuffer
  mtrr: bury MTRR - unexport mtrr_add() and mtrr_del()

 Documentation/driver-model/devres.txt            |  1 +
 arch/x86/include/asm/io.h                        |  6 ++
 arch/x86/include/asm/mtrr.h                      |  7 +-
 arch/x86/kernel/cpu/mtrr/cleanup.c               |  2 +-
 arch/x86/kernel/cpu/mtrr/generic.c               |  7 +-
 arch/x86/kernel/cpu/mtrr/if.c                    |  3 +
 arch/x86/kernel/cpu/mtrr/main.c                  | 73 +++++++++++++------
 drivers/gpu/drm/drm_ioctl.c                      | 14 +---
 drivers/infiniband/hw/ipath/ipath_driver.c       |  7 +-
 drivers/infiniband/hw/ipath/ipath_kernel.h       |  4 +-
 drivers/infiniband/hw/ipath/ipath_wc_x86_64.c    | 47 +++++--------
 drivers/infiniband/hw/qib/qib_wc_x86_64.c        | 31 ++------
 drivers/media/pci/ivtv/ivtvfb.c                  | 51 ++++----------
 drivers/message/fusion/mptbase.c                 | 19 ++---
 drivers/message/fusion/mptbase.h                 |  2 +-
 drivers/net/ethernet/myricom/myri10ge/myri10ge.c | 36 +++-------
 drivers/pci/pci.c                                | 14 ++++
 drivers/staging/sm750fb/sm750.c                  | 34 ++-------
 drivers/staging/sm750fb/sm750.h                  |  3 -
 drivers/staging/sm750fb/sm750_hw.c               |  3 +-
 drivers/staging/xgifb/XGI_main_26.c              | 27 ++-----
 drivers/video/fbdev/arkfb.c                      | 36 ++--------
 drivers/video/fbdev/atmel_lcdfb.c                |  3 +-
 drivers/video/fbdev/aty/aty128fb.c               | 36 ++--------
 drivers/video/fbdev/aty/atyfb.h                  |  5 +-
 drivers/video/fbdev/aty/atyfb_base.c             | 90 ++++++++----------------
 drivers/video/fbdev/aty/radeon_base.c            | 29 ++------
 drivers/video/fbdev/aty/radeonfb.h               |  2 +-
 drivers/video/fbdev/gbefb.c                      | 18 +++--
 drivers/video/fbdev/geode/gxfb_core.c            |  3 +-
 drivers/video/fbdev/gxt4500.c                    |  2 +-
 drivers/video/fbdev/i740fb.c                     | 35 ++-------
 drivers/video/fbdev/i810/i810.h                  |  3 +-
 drivers/video/fbdev/i810/i810_main.c             | 11 +--
 drivers/video/fbdev/i810/i810_main.h             | 26 -------
 drivers/video/fbdev/intelfb/intelfb.h            |  4 +-
 drivers/video/fbdev/intelfb/intelfbdrv.c         | 38 ++--------
 drivers/video/fbdev/kyro/fbdev.c                 | 33 +++------
 drivers/video/fbdev/matrox/matroxfb_base.c       | 36 ++++------
 drivers/video/fbdev/matrox/matroxfb_base.h       | 27 +------
 drivers/video/fbdev/neofb.c                      | 26 ++-----
 drivers/video/fbdev/nvidia/nv_type.h             |  7 +-
 drivers/video/fbdev/nvidia/nvidia.c              | 37 ++--------
 drivers/video/fbdev/pm2fb.c                      | 31 ++------
 drivers/video/fbdev/pm3fb.c                      | 30 ++------
 drivers/video/fbdev/riva/fbdev.c                 | 39 ++--------
 drivers/video/fbdev/riva/rivafb.h                |  4 +-
 drivers/video/fbdev/s3fb.c                       | 35 ++-------
 drivers/video/fbdev/savage/savagefb.h            |  4 +-
 drivers/video/fbdev/savage/savagefb_driver.c     | 17 +----
 drivers/video/fbdev/sis/sis.h                    |  2 +-
 drivers/video/fbdev/sis/sis_main.c               | 27 ++-----
 drivers/video/fbdev/tdfxfb.c                     | 41 ++---------
 drivers/video/fbdev/vesafb.c                     | 77 +++++++-------------
 drivers/video/fbdev/vt8623fb.c                   | 31 ++------
 include/asm-generic/pci_iomap.h                  | 14 ++++
 include/linux/io.h                               | 12 ++++
 include/linux/pci.h                              |  1 +
 include/video/kyro.h                             |  4 +-
 include/video/neomagic.h                         |  5 +-
 include/video/tdfx.h                             |  2 +-
 lib/devres.c                                     | 29 ++++++++
 lib/pci_iomap.c                                  | 61 ++++++++++++++++
 63 files changed, 463 insertions(+), 901 deletions(-)

-- 
2.3.2.209.gd67f9d5.dirty


^ permalink raw reply	[flat|nested] 710+ messages in thread
* [PATCH v4 0/7] mtrr, mm, x86: Enhance MTRR checks for huge I/O mapping
@ 2015-03-24 22:08 ` Toshi Kani
  0 siblings, 0 replies; 710+ messages in thread
From: Toshi Kani @ 2015-03-24 22:08 UTC (permalink / raw)
  To: akpm, hpa, tglx, mingo
  Cc: linux-mm, x86, linux-kernel, dave.hansen, Elliott, pebolle

This patchset enhances MTRR checks for the kernel huge I/O mapping,
which was enabled by the patchset below:
  https://lkml.org/lkml/2015/3/3/589

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
   type.
 - 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.
---
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 (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(-)


^ permalink raw reply	[flat|nested] 710+ messages in thread
* [PATCH] x86/kaslr: Fix typo in documentation
@ 2015-04-14 11:35 Miroslav Benes
  2015-04-14 11:37 ` Borislav Petkov
  0 siblings, 1 reply; 710+ messages in thread
From: Miroslav Benes @ 2015-04-14 11:35 UTC (permalink / raw)
  To: bp, corbet
  Cc: mingo, hpa, tglx, jkosina, x86, linux-kernel, linux-doc, Miroslav Benes

Documentation/x86/boot.txt labels the bit in boot_params.hdr.loadflags
as ALSR_FLAG while it should be KASLR_FLAG.

Signed-off-by: Miroslav Benes <mbenes@suse.cz>
---
 Documentation/x86/boot.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Documentation/x86/boot.txt b/Documentation/x86/boot.txt
index 88b8589..69e1397 100644
--- a/Documentation/x86/boot.txt
+++ b/Documentation/x86/boot.txt
@@ -406,7 +406,7 @@ Protocol:	2.00+
 	- If 0, the protected-mode code is loaded at 0x10000.
 	- If 1, the protected-mode code is loaded at 0x100000.
 
-  Bit 1 (kernel internal): ALSR_FLAG
+  Bit 1 (kernel internal): KASLR_FLAG
 	- Used internally by the compressed kernel to communicate
 	  KASLR status to kernel proper.
 	  If 1, KASLR enabled.
-- 
2.1.4


^ permalink raw reply related	[flat|nested] 710+ messages in thread
* [PATCH v4] mtrr: avoid ifdef'ery with phys_wc_to_mtrr_index()
@ 2015-04-22 17:12 ` Luis R. Rodriguez
  0 siblings, 0 replies; 710+ messages in thread
From: Luis R. Rodriguez @ 2015-04-22 17:12 UTC (permalink / raw)
  To: mingo, tglx, hpa, plagnioj, tomi.valkeinen
  Cc: linux-fbdev, luto, mst, linux-kernel, Luis R. Rodriguez,
	Toshi Kani, Ingo Molnar, Will Deacon, Thierry Reding,
	Andrew Morton, Dave Hansen, Greg Kroah-Hartman, Catalin Marinas,
	Abhilash Kesavan, Matthias Brugger, Cristian Stoica, dri-devel,
	Suresh Siddha, Linus Torvalds, Juergen Gross, Daniel Vetter,
	Dave Airlie, Antonino Daplas, Ville Syrjälä,
	Mel Gorman, Vlastimil Babka, Borislav Petkov, Davidlohr Bueso,
	x86

From: "Luis R. Rodriguez" <mcgrof@suse.com>

There is only one user but since we're going to bury
MTRR next out of access to drivers expose this last
piece of API to drivers in a general fashion only
needing io.h for access to helpers.

Cc: Toshi Kani <toshi.kani@hp.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Thierry Reding <treding@nvidia.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Abhilash Kesavan <a.kesavan@samsung.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Cristian Stoica <cristian.stoica@freescale.com>
Cc: dri-devel@lists.freedesktop.org
Cc: Suresh Siddha <sbsiddha@gmail.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Juergen Gross <jgross@suse.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Dave Airlie <airlied@redhat.com>
Cc: Antonino Daplas <adaplas@gmail.com>
Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Ville Syrjälä <syrjala@sci.fi>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Borislav Petkov <bp@suse.de>
Cc: Davidlohr Bueso <dbueso@suse.de>
Cc: x86@kernel.org
Cc: linux-fbdev@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
---

This v4 adds a missing #endif.

 arch/x86/include/asm/io.h       |  3 +++
 arch/x86/include/asm/mtrr.h     |  5 -----
 arch/x86/kernel/cpu/mtrr/main.c |  6 +++---
 drivers/gpu/drm/drm_ioctl.c     | 14 +-------------
 include/linux/io.h              |  7 +++++++
 5 files changed, 14 insertions(+), 21 deletions(-)

diff --git a/arch/x86/include/asm/io.h b/arch/x86/include/asm/io.h
index 4afc05f..a2b9740 100644
--- a/arch/x86/include/asm/io.h
+++ b/arch/x86/include/asm/io.h
@@ -339,6 +339,9 @@ extern bool xen_biovec_phys_mergeable(const struct bio_vec *vec1,
 #define IO_SPACE_LIMIT 0xffff
 
 #ifdef CONFIG_MTRR
+extern int __must_check arch_phys_wc_index(int handle);
+#define arch_phys_wc_index arch_phys_wc_index
+
 extern int __must_check arch_phys_wc_add(unsigned long base,
 					 unsigned long size);
 extern void arch_phys_wc_del(int handle);
diff --git a/arch/x86/include/asm/mtrr.h b/arch/x86/include/asm/mtrr.h
index da8dff1..27e3dc0 100644
--- a/arch/x86/include/asm/mtrr.h
+++ b/arch/x86/include/asm/mtrr.h
@@ -48,7 +48,6 @@ extern void mtrr_aps_init(void);
 extern void mtrr_bp_restore(void);
 extern int mtrr_trim_uncached_memory(unsigned long end_pfn);
 extern int amd_special_default_mtrr(void);
-extern int phys_wc_to_mtrr_index(int handle);
 #  else
 static inline u8 mtrr_type_lookup(u64 addr, u64 end, u8 *uniform)
 {
@@ -85,10 +84,6 @@ static inline int mtrr_trim_uncached_memory(unsigned long end_pfn)
 static inline void mtrr_centaur_report_mcr(int mcr, u32 lo, u32 hi)
 {
 }
-static inline int phys_wc_to_mtrr_index(int handle)
-{
-	return -1;
-}
 
 #define mtrr_ap_init() do {} while (0)
 #define mtrr_bp_init() do {} while (0)
diff --git a/arch/x86/kernel/cpu/mtrr/main.c b/arch/x86/kernel/cpu/mtrr/main.c
index 12abdbe..d8c106c 100644
--- a/arch/x86/kernel/cpu/mtrr/main.c
+++ b/arch/x86/kernel/cpu/mtrr/main.c
@@ -580,7 +580,7 @@ void arch_phys_wc_del(int handle)
 EXPORT_SYMBOL(arch_phys_wc_del);
 
 /*
- * phys_wc_to_mtrr_index - translates arch_phys_wc_add's return value
+ * arch_phys_wc_index - translates arch_phys_wc_add's return value
  * @handle: Return value from arch_phys_wc_add
  *
  * This will turn the return value from arch_phys_wc_add into an mtrr
@@ -590,14 +590,14 @@ EXPORT_SYMBOL(arch_phys_wc_del);
  * in printk line.  Alas there is an illegitimate use in some ancient
  * drm ioctls.
  */
-int phys_wc_to_mtrr_index(int handle)
+int arch_phys_wc_index(int handle)
 {
 	if (handle < MTRR_TO_PHYS_WC_OFFSET)
 		return -1;
 	else
 		return handle - MTRR_TO_PHYS_WC_OFFSET;
 }
-EXPORT_SYMBOL_GPL(phys_wc_to_mtrr_index);
+EXPORT_SYMBOL_GPL(arch_phys_wc_index);
 
 /*
  * HACK ALERT!
diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
index 266dcd6..0a95782 100644
--- a/drivers/gpu/drm/drm_ioctl.c
+++ b/drivers/gpu/drm/drm_ioctl.c
@@ -36,9 +36,6 @@
 
 #include <linux/pci.h>
 #include <linux/export.h>
-#ifdef CONFIG_X86
-#include <asm/mtrr.h>
-#endif
 
 static int drm_version(struct drm_device *dev, void *data,
 		       struct drm_file *file_priv);
@@ -197,16 +194,7 @@ static int drm_getmap(struct drm_device *dev, void *data,
 	map->type = r_list->map->type;
 	map->flags = r_list->map->flags;
 	map->handle = (void *)(unsigned long) r_list->user_token;
-
-#ifdef CONFIG_X86
-	/*
-	 * There appears to be exactly one user of the mtrr index: dritest.
-	 * It's easy enough to keep it working on non-PAT systems.
-	 */
-	map->mtrr = phys_wc_to_mtrr_index(r_list->map->mtrr);
-#else
-	map->mtrr = -1;
-#endif
+	map->mtrr = arch_phys_wc_index(r_list->map->mtrr);
 
 	mutex_unlock(&dev->struct_mutex);
 
diff --git a/include/linux/io.h b/include/linux/io.h
index 986f2bf..04cce4d 100644
--- a/include/linux/io.h
+++ b/include/linux/io.h
@@ -111,6 +111,13 @@ static inline void arch_phys_wc_del(int handle)
 }
 
 #define arch_phys_wc_add arch_phys_wc_add
+#ifndef arch_phys_wc_index
+static inline int arch_phys_wc_index(int handle)
+{
+	return -1;
+}
+#define arch_phys_wc_index arch_phys_wc_index
+#endif
 #endif
 
 #endif /* _LINUX_IO_H */
-- 
2.3.2.209.gd67f9d5.dirty


^ permalink raw reply related	[flat|nested] 710+ messages in thread
* [PATCH] x86: improve algorithm in clflush_cache_range
@ 2015-04-28 22:13 Ross Zwisler
  2015-04-29 10:28 ` Borislav Petkov
  0 siblings, 1 reply; 710+ messages in thread
From: Ross Zwisler @ 2015-04-28 22:13 UTC (permalink / raw)
  To: linux-kernel
  Cc: Ross Zwisler, H. Peter Anvin, Thomas Gleixner, Ingo Molnar, x86,
	Borislav Petkov

The current algorithm used in clflush_cache_range() can cause the last
cache line of the buffer to be flushed twice.  Fix that algorithm so
that each cache line will only be flushed once.

Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Reported-by: H. Peter Anvin <hpa@zytor.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: x86@kernel.org
Cc: Borislav Petkov <bp@suse.de>
---
 arch/x86/mm/pageattr.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c
index 89af288ec674..338e507f95b8 100644
--- a/arch/x86/mm/pageattr.c
+++ b/arch/x86/mm/pageattr.c
@@ -129,16 +129,15 @@ within(unsigned long addr, unsigned long start, unsigned long end)
  */
 void clflush_cache_range(void *vaddr, unsigned int size)
 {
-	void *vend = vaddr + size - 1;
+	unsigned long clflush_mask = boot_cpu_data.x86_clflush_size - 1;
+	char *vend = (char *)vaddr + size;
+	char *p;
 
 	mb();
 
-	for (; vaddr < vend; vaddr += boot_cpu_data.x86_clflush_size)
-		clflushopt(vaddr);
-	/*
-	 * Flush any possible final partial cacheline:
-	 */
-	clflushopt(vend);
+	for (p = (char *)((unsigned long)vaddr & ~clflush_mask);
+	     p < vend; p += boot_cpu_data.x86_clflush_size)
+		clflushopt(p);
 
 	mb();
 }
-- 
1.9.3


^ permalink raw reply related	[flat|nested] 710+ messages in thread
* [PATCH v2] x86: Add kerneldoc for pcommit_sfence()
@ 2015-04-28 22:46 Ross Zwisler
  2015-04-29 14:23 ` Borislav Petkov
  0 siblings, 1 reply; 710+ messages in thread
From: Ross Zwisler @ 2015-04-28 22:46 UTC (permalink / raw)
  To: linux-kernel
  Cc: Ross Zwisler, H Peter Anvin, Ingo Molnar, Thomas Gleixner,
	Borislav Petkov

Add kerneldoc comments for pcommit_sfence() describing the purpose of
the pcommit instruction and demonstrating the usage of that instruction.

Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Cc: H Peter Anvin <h.peter.anvin@intel.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Borislav Petkov <bp@alien8.de>
---
 arch/x86/include/asm/special_insns.h | 37 ++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/arch/x86/include/asm/special_insns.h b/arch/x86/include/asm/special_insns.h
index aeb4666e0c0a..c9f2ebec33ac 100644
--- a/arch/x86/include/asm/special_insns.h
+++ b/arch/x86/include/asm/special_insns.h
@@ -215,6 +215,43 @@ static inline void clwb(volatile void *__p)
 		: [pax] "a" (p));
 }
 
+/**
+ * pcommit_sfence() - persistent commit and fence
+ *
+ * The PCOMMIT instruction ensures that data that has been flushed from the
+ * processor's cache hierarchy with CLWB, CLFLUSHOPT or CLFLUSH is accepted to
+ * memory and is durable on the DIMM.  The primary use case for this is
+ * persistent memory.
+ *
+ * This function shows how to properly use CLWB/CLFLUSHOPT/CLFLUSH and PCOMMIT
+ * with appropriate fencing:
+ *
+ * void flush_and_commit_buffer(void *vaddr, unsigned int size)
+ * {
+ *         unsigned long clflush_mask = boot_cpu_data.x86_clflush_size - 1;
+ *         void *vend = vaddr + size;
+ *         void *p;
+ *
+ *         for (p = (void *)((unsigned long)vaddr & ~clflush_mask);
+ *              p < vend; p += boot_cpu_data.x86_clflush_size)
+ *                 clwb(p);
+ *
+ *         // SFENCE to order CLWB/CLFLUSHOPT/CLFLUSH cache flushes
+ *         // MFENCE via mb() also works
+ *         wmb();
+ *
+ *         // PCOMMIT and the required SFENCE for ordering
+ *         pcommit_sfence();
+ * }
+ *
+ * After this function completes the data pointed to by 'vaddr' has been
+ * accepted to memory and will be durable if the 'vaddr' points to persistent
+ * memory.
+ *
+ * PCOMMIT must always be ordered by an MFENCE or SFENCE, so to help simplify
+ * things we include both the PCOMMIT and the required SFENCE in the
+ * alternatives generated by pcommit_sfence().
+ */
 static inline void pcommit_sfence(void)
 {
 	alternative(ASM_NOP7,
-- 
1.9.3


^ permalink raw reply related	[flat|nested] 710+ messages in thread
* [PATCH v4 0/6] x86: document and address MTRR corner cases
@ 2015-04-29 21:44 Luis R. Rodriguez
  2015-04-29 21:44   ` Luis R. Rodriguez
                   ` (6 more replies)
  0 siblings, 7 replies; 710+ messages in thread
From: Luis R. Rodriguez @ 2015-04-29 21:44 UTC (permalink / raw)
  To: mingo, tglx, hpa, bp, plagnioj, tomi.valkeinen, daniel.vetter, airlied
  Cc: dledford, awalls, syrjala, luto, mst, cocci, linux-kernel,
	Luis R. Rodriguez

From: "Luis R. Rodriguez" <mcgrof@suse.com>

This series addresses one commend fix on the table for mtrr_add()
effect on the PAT case when UC- is used. Other than that it is
the same as v4.

Luis R. Rodriguez (6):
  x86: add ioremap_uc() - force strong UC, PCD=1, PWT=1
  x86: document WC MTRR effects on PAT / non-PAT pages
  video: fbdev: atyfb: move framebuffer length fudging to helper
  video: fbdev: atyfb: clarify ioremap() base and length used
  video: fbdev: atyfb: replace MTRR UC hole with strong UC
  video: fbdev: atyfb: use arch_phys_wc_add() and ioremap_wc()

 Documentation/x86/mtrr.txt           | 18 +++++--
 Documentation/x86/pat.txt            | 40 ++++++++++++++-
 arch/x86/include/asm/io.h            |  1 +
 arch/x86/kernel/cpu/mtrr/main.c      |  3 ++
 arch/x86/mm/ioremap.c                | 36 ++++++++++++-
 arch/x86/mm/pageattr.c               |  3 ++
 drivers/video/fbdev/aty/atyfb.h      |  5 +-
 drivers/video/fbdev/aty/atyfb_base.c | 98 ++++++++++++++----------------------
 include/asm-generic/io.h             |  8 +++
 9 files changed, 143 insertions(+), 69 deletions(-)

-- 
2.3.2.209.gd67f9d5.dirty


^ permalink raw reply	[flat|nested] 710+ messages in thread
* [PATCH v5 0/6] x86: address drivers that do not work with PAT
@ 2015-04-30 20:25 Luis R. Rodriguez
  2015-04-30 20:25 ` [PATCH v5 1/6] x86/mm/pat: use pr_info() and friends Luis R. Rodriguez
                   ` (5 more replies)
  0 siblings, 6 replies; 710+ messages in thread
From: Luis R. Rodriguez @ 2015-04-30 20:25 UTC (permalink / raw)
  To: bp, mingo, tglx, hpa, plagnioj, tomi.valkeinen, daniel.vetter, airlied
  Cc: dledford, awalls, syrjala, luto, mst, cocci, linux-kernel,
	Luis R. Rodriguez

From: "Luis R. Rodriguez" <mcgrof@suse.com>

This v5 drops the addition of new early_param_*() helpers
and their use on pat_enabled as we are sticking with
__read_mostly, and as per review this should be selectively
used only on well established hot paths. pat_enabled turns
out to be a common hot path, so we want to keep that. This
v5 also changes the pr_info() patch slightly to address the
feedback. The other patches do not change at all.

Luis R. Rodriguez (6):
  x86/mm/pat: use pr_info() and friends
  x86/mm/pat: redefine pat_enabled
  arch/x86/mm/pat: export pat_enabled()
  ivtv: use arch_phys_wc_add() and require PAT disabled
  IB/ipath: add counting for MTRR
  IB/ipath: use arch_phys_wc_add() and require PAT disabled

 arch/x86/include/asm/pat.h                    |  7 +--
 arch/x86/kernel/cpu/mtrr/main.c               |  2 +-
 arch/x86/mm/iomap_32.c                        |  2 +-
 arch/x86/mm/ioremap.c                         |  4 +-
 arch/x86/mm/pageattr.c                        |  2 +-
 arch/x86/mm/pat.c                             | 75 +++++++++++++--------------
 arch/x86/mm/pat_internal.h                    |  2 +-
 arch/x86/mm/pat_rbtree.c                      |  5 +-
 arch/x86/pci/i386.c                           |  6 +--
 drivers/infiniband/hw/ipath/Kconfig           |  3 ++
 drivers/infiniband/hw/ipath/ipath_driver.c    | 18 +++++--
 drivers/infiniband/hw/ipath/ipath_kernel.h    |  4 +-
 drivers/infiniband/hw/ipath/ipath_wc_x86_64.c | 43 ++++-----------
 drivers/media/pci/ivtv/Kconfig                |  3 ++
 drivers/media/pci/ivtv/ivtvfb.c               | 58 ++++++++-------------
 15 files changed, 103 insertions(+), 131 deletions(-)

-- 
2.3.2.209.gd67f9d5.dirty


^ permalink raw reply	[flat|nested] 710+ messages in thread
* Re: tools: Consolidate types.h
@ 2015-05-06 16:54 Oleg Nesterov
  2015-05-06 17:17 ` Borislav Petkov
  0 siblings, 1 reply; 710+ messages in thread
From: Oleg Nesterov @ 2015-05-06 16:54 UTC (permalink / raw)
  To: Borislav Petkov, Rusty Russell, Jiri Olsa; +Cc: linux-kernel

Hi,

I can't build the kernel after "git pull",

	In file included from /usr/include/asm/types.h:4,
			 from ./tools/include/linux/types.h:9,
			 from ./include/uapi/linux/elf.h:4,
			 from arch/x86/vdso/vdso2c.c:66:
	./include/uapi/asm-generic/int-ll64.h:11:29: error: asm/bitsperlong.h: No such file or directory

I am not 100% sure but it seems that this was broken by
d944c4eebcf4c0d5e5d9728fec110cbf0047ad7f "tools: Consolidate types.h"

Don't we need the patch below? Or should I finally update my (very old)
distro which doesn't have /usr/include/asm/bitsperlong.h ?

Oleg.


diff --git a/arch/x86/vdso/Makefile b/arch/x86/vdso/Makefile
index 275a3a8..e970320 100644
--- a/arch/x86/vdso/Makefile
+++ b/arch/x86/vdso/Makefile
@@ -51,7 +51,7 @@ VDSO_LDFLAGS_vdso.lds = -m64 -Wl,-soname=linux-vdso.so.1 \
 $(obj)/vdso64.so.dbg: $(src)/vdso.lds $(vobjs) FORCE
 	$(call if_changed,vdso)
 
-HOST_EXTRACFLAGS += -I$(srctree)/tools/include -I$(srctree)/include/uapi
+HOST_EXTRACFLAGS += -I$(srctree)/tools/include -I$(srctree)/include/uapi -I$(srctree)/arch/x86/include/uapi
 hostprogs-y			+= vdso2c
 
 quiet_cmd_vdso2c = VDSO2C  $@


^ permalink raw reply related	[flat|nested] 710+ messages in thread
* [0/8] tip queue 2015-05-11
@ 2015-05-11  8:15 Borislav Petkov
  2015-05-11  8:15 ` [PATCH] x86/alternatives: Switch AMD F15h and later to the P6 NOPs Borislav Petkov
                   ` (7 more replies)
  0 siblings, 8 replies; 710+ messages in thread
From: Borislav Petkov @ 2015-05-11  8:15 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: LKML

From: Borislav Petkov <bp@suse.de>

Hi Ingo,

8 patches this time.

2015-05-11/
├── cleanups
│   └── 0001-x86-kaslr-Fix-typo-in-KASLR_FLAG-documentation.patch
├── cpu
│   └── 0001-x86-alternatives-Switch-AMD-F15h-and-later-to-the-P6.patch
├── microcode
│   └── 0001-x86-cpu-microcode-Zap-changelog.patch
├── mm
│   ├── 0001-x86-mm-Do-not-flush-last-cacheline-twice-in-clflush_.patch
│   ├── 0002-x86-mm-Add-kerneldoc-comments-for-pcommit_sfence.patch
│   ├── 0003-x86-MTRR-Remove-wrong-address-check-in-__mtrr_type_l.patch
│   └── 0004-x86-mm-Add-ioremap_uc-helper-to-map-memory-uncacheab.patch
└── urgent
    └── 0001-x86-vdso-Add-arch-x86-include-uapi-include-path-to-H.patch

^ permalink raw reply	[flat|nested] 710+ messages in thread
* [PATCH v5 0/6] mtrr, mm, x86: Enhance MTRR checks for huge I/O mapping
@ 2015-05-15 18:23 ` Toshi Kani
  0 siblings, 0 replies; 710+ messages in thread
From: Toshi Kani @ 2015-05-15 18:23 UTC (permalink / raw)
  To: bp, akpm, hpa, tglx, mingo
  Cc: linux-mm, x86, linux-kernel, dave.hansen, Elliott, pebolle, mcgrof

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(-)


^ permalink raw reply	[flat|nested] 710+ messages in thread
* [PATCH v4 0/3] Compile-time stack frame pointer validation
@ 2015-05-18 16:34 Josh Poimboeuf
  2015-05-18 16:34 ` [PATCH v4 1/3] x86, stackvalidate: " Josh Poimboeuf
                   ` (3 more replies)
  0 siblings, 4 replies; 710+ messages in thread
From: Josh Poimboeuf @ 2015-05-18 16:34 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin
  Cc: Michal Marek, Peter Zijlstra, x86, live-patching, linux-kernel

In discussions around the live kernel patching consistency model RFC
[1], Peter and Ingo correctly pointed out that stack traces aren't
reliable.  And as Ingo said, there's no "strong force" which ensures we
can rely on them.

So I've been thinking about how to fix that.  My goal is to eventually
make stack traces reliable.  Or at the very least, to be able to detect
at runtime when a given stack trace *might* be unreliable.  But improved
stack traces would broadly benefit the entire kernel, regardless of the
outcome of the live kernel patching consistency model discussions.

This patch set is just the first in a series of proposed stack trace
reliability improvements.  Future proposals will include runtime stack
reliability checking, as well as compile-time and runtime DWARF
validations.

As far as I can tell, there are two main obstacles which prevent frame
pointer based stack traces from being reliable:

1) Missing frame pointer logic: currently, most assembly functions don't
   set up the frame pointer.

2) Interrupts: if a function is interrupted before it can save and set
   up the frame pointer, its caller won't show up in the stack trace.

This patch set aims to remove the first obstacle by enforcing that all
asm functions honor CONFIG_FRAME_POINTER.  This is done with a new
stackvalidate host tool which is automatically run for every compiled .S
file and which validates that every asm function does the proper frame
pointer setup.

Also, to make sure somebody didn't forget to annotate their callable asm
code as a function, flag an error for any return instructions which are
hiding outside of a function.  In almost all cases, return instructions
are part of callable functions and should be annotated as such so that
we can validate their frame pointer usage.  A whitelist mechanism exists
for those few return instructions which are not actually in callable
code.

It currently only supports x86_64.  It *almost* supports x86_32, but the
stackvalidate code doesn't yet know how to deal with 32-bit REL
relocations for the return whitelists.  I tried to make the code generic
so that support for other architectures can be plugged in pretty easily.

As a first step, all reported non-compliances result in warnings.  Right
now I'm seeing 200+ warnings.  Once we get them all cleaned up, we can
change the warnings to build errors so the asm code can stay clean.

The patches are based on linux-next.  Patch 1 adds the stackvalidate
host tool.  Patch 2 is a cleanup which makes the push/pop CFI macros
arch-independent, in preparation for patch 3.  Patch 3 adds some helper
macros for asm functions so that they can comply with stackvalidate.

[1] http://lkml.kernel.org/r/cover.1423499826.git.jpoimboe@redhat.com

v4:
- Changed the default to CONFIG_STACK_VALIDATION=n, until all the asm
  code can get cleaned up.
- Fixed a stackvalidate error path exit code issue found by Michal
  Marek.

v3:
- Added a patch to make the push/pop CFI macros arch-independent, as
  suggested by H. Peter Anvin

v2:
- Fixed memory leaks reported by Petr Mladek

Josh Poimboeuf (3):
  x86, stackvalidate: Compile-time stack frame pointer validation
  x86: Make push/pop CFI macros arch-independent
  x86, stackvalidate: Add asm frame pointer setup macros

 MAINTAINERS                           |   6 +
 arch/Kconfig                          |   3 +
 arch/x86/Kconfig                      |   1 +
 arch/x86/Makefile                     |   6 +-
 arch/x86/ia32/ia32entry.S             |  60 +++---
 arch/x86/include/asm/calling.h        |  28 +--
 arch/x86/include/asm/dwarf2.h         |  92 ++++-----
 arch/x86/include/asm/frame.h          |   4 +-
 arch/x86/include/asm/func.h           |  82 ++++++++
 arch/x86/kernel/entry_32.S            | 214 ++++++++++-----------
 arch/x86/kernel/entry_64.S            |  96 +++++-----
 arch/x86/lib/atomic64_386_32.S        |   4 +-
 arch/x86/lib/atomic64_cx8_32.S        |  40 ++--
 arch/x86/lib/checksum_32.S            |  42 ++--
 arch/x86/lib/cmpxchg16b_emu.S         |   6 +-
 arch/x86/lib/cmpxchg8b_emu.S          |   6 +-
 arch/x86/lib/msr-reg.S                |  34 ++--
 arch/x86/lib/rwsem.S                  |  40 ++--
 arch/x86/lib/thunk_32.S               |  12 +-
 arch/x86/lib/thunk_64.S               |  36 ++--
 lib/Kconfig.debug                     |  11 ++
 scripts/Makefile                      |   1 +
 scripts/Makefile.build                |  22 ++-
 scripts/stackvalidate/Makefile        |  17 ++
 scripts/stackvalidate/arch-x86.c      | 134 +++++++++++++
 scripts/stackvalidate/arch.h          |  10 +
 scripts/stackvalidate/elf.c           | 352 ++++++++++++++++++++++++++++++++++
 scripts/stackvalidate/elf.h           |  56 ++++++
 scripts/stackvalidate/list.h          | 217 +++++++++++++++++++++
 scripts/stackvalidate/stackvalidate.c | 226 ++++++++++++++++++++++
 30 files changed, 1484 insertions(+), 374 deletions(-)
 create mode 100644 arch/x86/include/asm/func.h
 create mode 100644 scripts/stackvalidate/Makefile
 create mode 100644 scripts/stackvalidate/arch-x86.c
 create mode 100644 scripts/stackvalidate/arch.h
 create mode 100644 scripts/stackvalidate/elf.c
 create mode 100644 scripts/stackvalidate/elf.h
 create mode 100644 scripts/stackvalidate/list.h
 create mode 100644 scripts/stackvalidate/stackvalidate.c

-- 
2.1.0


^ permalink raw reply	[flat|nested] 710+ messages in thread
* [RFC PATCH 0/4] x86, mwaitt: introduce AMD mwaitt support
@ 2015-05-19  8:01 Huang Rui
  2015-05-19  8:01 ` [RFC PATCH 1/4] x86, mwaitt: add monitorx and mwaitx instruction Huang Rui
                   ` (4 more replies)
  0 siblings, 5 replies; 710+ messages in thread
From: Huang Rui @ 2015-05-19  8:01 UTC (permalink / raw)
  To: Borislav Petkov, Len Brown, Rafael J. Wysocki, Thomas Gleixner
  Cc: x86, linux-kernel, Fengguang Wu, Aaron Lu, Tony Li, Huang Rui

Hi,

This patch set introduces a new instruction support on AMD Carrizo (Family
15h, Model 60h-6fh). It adds mwaitx idle function with a configurable
timer. The user can configure the idle method and timer value via the idle
kernel parameter.

Some discussions of the background, please see:
http://marc.info/?l=linux-kernel&m=143202042530498&w=2
http://marc.info/?l=linux-kernel&m=143161327003541&w=2

They are rebased on tip/sched/core.

Thanks,
Rui

Huang Rui (4):
  x86, mwaitt: add monitorx and mwaitx instruction
  x86, mwaitt: introduce mwaitx idle with a configurable timer
  x86, mwaitt: add document to describe mwaitx
  x86, mwait: fix redundant comment

 Documentation/kernel-parameters.txt | 10 ++++-
 arch/x86/include/asm/cpufeature.h   |  1 +
 arch/x86/include/asm/mwait.h        | 27 +++++++++++++
 arch/x86/include/asm/processor.h    |  2 +-
 arch/x86/kernel/process.c           | 81 ++++++++++++++++++++++++++++++++++++-
 5 files changed, 118 insertions(+), 3 deletions(-)

-- 
2.1.0


^ permalink raw reply	[flat|nested] 710+ messages in thread
* [PATCH] x86, cpuinfo x86_model_id whitespace cleanup
@ 2015-05-19 15:43 Prarit Bhargava
  2015-05-19 16:56 ` Borislav Petkov
                   ` (3 more replies)
  0 siblings, 4 replies; 710+ messages in thread
From: Prarit Bhargava @ 2015-05-19 15:43 UTC (permalink / raw)
  To: linux-kernel
  Cc: Prarit Bhargava, Thomas Gleixner, Ingo Molnar, H. Peter Anvin,
	x86, Andy Lutomirski, Borislav Petkov, Denys Vlasenko,
	Dave Hansen, Igor Mammedov, Fenghua Yu, Brian Gerst

When comparing 'model name' fields in /proc/cpuinfo it was noticed that
a simple test comparing the model name fields was failing.  After some
quick investigation it was noticed that the model name fields were actually
different -- processor 0's model name field had trailing white space removed,
while the other processors did not.

Another way of seeing this behaviour is to convert spaces into underscores
in the output of /proc/cpuinfo,

[thetango@prarit ~]# grep "^model name" /proc/cpuinfo | uniq -c | sed 's/\ /_/g'
______1_model_name      :_AMD_Opteron(TM)_Processor_6272
_____63_model_name      :_AMD_Opteron(TM)_Processor_6272_________________

which shows two different model name fields even though they should be the
same.

This occurs because the kernel calls strim() on cpu 0's x86_model_id field
to output a pretty message to the console in print_cpu_info(), and as a
result truncates the whitespace at the end of the x86_model_id field.

The x86_model_id field should be the same for the same processors.  This
patch uses string functions to remove both leading and trailing whitespace
in the x86_model_id field.  As a result the print_cpu_info() output looks
like

smpboot: CPU0: AMD Opteron(TM) Processor 6272 (fam: 15, model: 01, stepping: 02)

and the x86_model_id field is correct on all processors on AMD platforms

[thetango@prarit ~]# grep "^model name" /proc/cpuinfo | uniq -c | sed 's/\ /_/g'
_____64_model_name      :_AMD_Opteron(TM)_Processor_6272

and the functionality is correct on an Intel box:

[thetango@prarit2]# grep "^model name" /proc/cpuinfo | uniq -c | sed 's/\ /_/g'
____144_model_name      :_Intel(R)_Xeon(R)_CPU_E7-8890_v3_@_2.50GHz

Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: x86@kernel.org
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Igor Mammedov <imammedo@redhat.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: Brian Gerst <brgerst@gmail.com>
---
 arch/x86/kernel/cpu/common.c |   17 ++++-------------
 1 file changed, 4 insertions(+), 13 deletions(-)

diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index a62cf04..9405c1e 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -419,7 +419,6 @@ static const struct cpu_dev *cpu_devs[X86_VENDOR_NUM] = {};
 static void get_model_name(struct cpuinfo_x86 *c)
 {
 	unsigned int *v;
-	char *p, *q;
 
 	if (c->extended_cpuid_level < 0x80000004)
 		return;
@@ -431,18 +430,10 @@ static void get_model_name(struct cpuinfo_x86 *c)
 	c->x86_model_id[48] = 0;
 
 	/*
-	 * Intel chips right-justify this string for some dumb reason;
-	 * undo that brain damage:
+	 * Remove leading whitespace on Intel processors and trailing
+	 * whitespace on AMD processors.
 	 */
-	p = q = &c->x86_model_id[0];
-	while (*p == ' ')
-		p++;
-	if (p != q) {
-		while (*p)
-			*q++ = *p++;
-		while (q <= &c->x86_model_id[48])
-			*q++ = '\0';	/* Zero-pad the rest */
-	}
+	strlcpy(c->x86_model_id, strim(c->x86_model_id), 48);
 }
 
 void cpu_detect_cache_sizes(struct cpuinfo_x86 *c)
@@ -1122,7 +1113,7 @@ void print_cpu_info(struct cpuinfo_x86 *c)
 		printk(KERN_CONT "%s ", vendor);
 
 	if (c->x86_model_id[0])
-		printk(KERN_CONT "%s", strim(c->x86_model_id));
+		printk(KERN_CONT "%s", c->x86_model_id);
 	else
 		printk(KERN_CONT "%d86", c->x86);
 
-- 
1.7.9.3


^ permalink raw reply related	[flat|nested] 710+ messages in thread
* [PATCH] mce: fix fail to set 'monarchtimeout' via boot option
@ 2015-05-20 11:22 Xie XiuQi
  2015-05-20 17:43 ` Borislav Petkov
  0 siblings, 1 reply; 710+ messages in thread
From: Xie XiuQi @ 2015-05-20 11:22 UTC (permalink / raw)
  To: tony.luck, bp, tglx, mingo, hpa; +Cc: x86, linux-edac, linux-kernel

I use "mce=1,10000000" in cmdline to change the monarch timeout, but
it does not work.

The cause is that get_option() has parsed the ',' already, we need
not to check the ',' again.

--
get_option(): read an int from an option string;
if available accept a subsequent comma as well.

Return values:
0 - no int in string
1 - int found, no subsequent comma
2 - int found including a subsequent comma
3 - hyphen found to denote a range

Cc: <stable@vger.kernel.org>	# 2.6.32+
Signed-off-by: Xie XiuQi <xiexiuqi@huawei.com>
---
 arch/x86/kernel/cpu/mcheck/mce.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
index 2a2bb91..46ca8e7 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
@@ -2020,11 +2020,8 @@ static int __init mcheck_enable(char *str)
 	else if (!strcmp(str, "bios_cmci_threshold"))
 		cfg->bios_cmci_threshold = true;
 	else if (isdigit(str[0])) {
-		get_option(&str, &(cfg->tolerant));
-		if (*str == ',') {
-			++str;
+		if (get_option(&str, &(cfg->tolerant) == 2)
 			get_option(&str, &(cfg->monarch_timeout));
-		}
 	} else {
 		pr_info("mce argument %s ignored. Please use /sys\n", str);
 		return 0;
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 710+ messages in thread
* [PATCH 00/18] tip queue 2015-05-26
@ 2015-05-26  8:28 Borislav Petkov
  2015-05-26  8:28 ` [PATCH 01/18] x86/kconfig: Simplify conditions for HAVE_ARCH_HUGE_VMAP Borislav Petkov
                   ` (17 more replies)
  0 siblings, 18 replies; 710+ messages in thread
From: Borislav Petkov @ 2015-05-26  8:28 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: X86-ML, LKML

From: Borislav Petkov <bp@suse.de>

Hi Ingo,

some more stuff this week. None of it is urgent material, the bigger
chunk is MTRR/PAT cleanups.

Borislav Petkov (3):
  x86/documentation: Move kernel-stacks doc one level up
  x86/documentation: Remove STACKFAULT_STACK bulletpoint
  x86/documentation: Adapt Ingo's explanation on printing backtraces

Huang Rui (1):
  x86/process: Drop repeated word from comment

Luis R. Rodriguez (6):
  x86/mm/pat: Convert to pr_* usage
  x86: Document Write Combining MTRR type effects on PAT / non-PAT pages
  x86/mtrr: Avoid ifdeffery with phys_wc_to_mtrr_index()
  x86/mtrr: Generalize runtime disabling of MTRRs
  x86/mm/pat: Wrap pat_enabled
  x86/mm/pat: Export pat_enabled()

Prarit Bhargava (1):
  x86/cpu: Strip any /proc/cpuinfo model name field whitespace

Toshi Kani (6):
  x86/kconfig: Simplify conditions for HAVE_ARCH_HUGE_VMAP
  x86/mtrr: Fix MTRR lookup to handle an inclusive entry
  x86/mtrr: Fix MTRR state checks in mtrr_type_lookup()
  x86/mtrr: Use symbolic define as a retval for disabled MTRRs
  x86/mtrr: Clean up mtrr_type_lookup()
  x86/mm: Enhance MTRR checks in kernel mapping helpers

Xie XiuQi (1):
  x86/mce: Fix monarch timeout setting through the mce= cmdline option


^ permalink raw reply	[flat|nested] 710+ messages in thread

end of thread, other threads:[~2015-08-01 17:03 UTC | newest]

Thread overview: 710+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-20 23:17 [PATCH v1 00/47] mtrr/x86/drivers: bury MTRR Luis R. Rodriguez
2015-03-20 23:17 ` Luis R. Rodriguez
2015-03-20 23:17 ` [PATCH v1 01/47] x86: mtrr: annotate mtrr_type_lookup() is only implemented on generic_mtrr_ops Luis R. Rodriguez
2015-03-20 23:17   ` Luis R. Rodriguez
2015-03-20 23:17 ` [PATCH v1 02/47] x86: mtrr: generalize run time disabling of MTRR Luis R. Rodriguez
2015-03-20 23:17   ` Luis R. Rodriguez
2015-03-25 19:59   ` Konrad Rzeszutek Wilk
2015-03-25 19:59     ` Konrad Rzeszutek Wilk
2015-03-26  4:38     ` Juergen Gross
2015-03-26  4:38       ` Juergen Gross
2015-03-26 23:35     ` Luis R. Rodriguez
2015-03-26 23:35       ` Luis R. Rodriguez
2015-04-02 20:13       ` Bjorn Helgaas
2015-04-02 20:13         ` Bjorn Helgaas
2015-04-02 20:13         ` Bjorn Helgaas
2015-04-02 20:20         ` Luis R. Rodriguez
2015-04-02 20:20           ` Luis R. Rodriguez
2015-04-02 20:20           ` Luis R. Rodriguez
2015-04-02 20:28           ` Bjorn Helgaas
2015-04-02 20:28             ` Bjorn Helgaas
2015-04-02 20:28             ` Bjorn Helgaas
2015-04-02 21:02             ` Luis R. Rodriguez
2015-04-02 21:02               ` Luis R. Rodriguez
2015-04-02 21:02               ` Luis R. Rodriguez
2015-04-02 22:09               ` Bjorn Helgaas
2015-04-02 22:09                 ` Bjorn Helgaas
2015-04-02 22:09                 ` Bjorn Helgaas
2015-04-02 22:12                 ` [Xen-devel] " Luis R. Rodriguez
2015-04-02 22:12                   ` Luis R. Rodriguez
2015-04-02 22:12                   ` Luis R. Rodriguez
2015-03-27 20:40   ` Toshi Kani
2015-03-27 20:40     ` Toshi Kani
2015-03-27 23:56     ` Luis R. Rodriguez
2015-03-27 23:56       ` Luis R. Rodriguez
2015-04-02 21:49       ` Luis R. Rodriguez
2015-04-02 21:49         ` Luis R. Rodriguez
2015-04-02 23:52         ` Toshi Kani
2015-04-02 23:52           ` Toshi Kani
2015-04-03  1:08           ` Luis R. Rodriguez
2015-04-03  1:08             ` Luis R. Rodriguez
2015-03-20 23:17 ` [PATCH v1 03/47] devres: add devm_ioremap_wc() Luis R. Rodriguez
2015-03-20 23:17 ` Luis R. Rodriguez
2015-03-20 23:17   ` Luis R. Rodriguez
2015-03-20 23:49   ` Andy Lutomirski
2015-03-20 23:49     ` Andy Lutomirski
2015-03-25 19:50     ` Luis R. Rodriguez
2015-03-25 19:50       ` Luis R. Rodriguez
2015-03-25 19:50     ` Luis R. Rodriguez
2015-03-20 23:49   ` Andy Lutomirski
2015-03-20 23:17 ` [PATCH v1 04/47] pci: add pci_ioremap_wc_bar() Luis R. Rodriguez
2015-03-20 23:17   ` Luis R. Rodriguez
2015-03-20 23:50   ` Andy Lutomirski
2015-03-20 23:50   ` Andy Lutomirski
2015-03-20 23:50     ` Andy Lutomirski
2015-03-25 20:06     ` Luis R. Rodriguez
2015-03-25 20:06     ` Luis R. Rodriguez
2015-03-25 20:06       ` Luis R. Rodriguez
2015-03-25 20:03   ` Konrad Rzeszutek Wilk
2015-03-25 20:03   ` [Xen-devel] " Konrad Rzeszutek Wilk
2015-03-25 20:03     ` Konrad Rzeszutek Wilk
2015-03-25 20:39     ` Luis R. Rodriguez
2015-03-25 20:39       ` Luis R. Rodriguez
2015-03-25 20:39     ` Luis R. Rodriguez
2015-03-20 23:17 ` Luis R. Rodriguez
2015-03-20 23:17 ` [PATCH v1 05/47] pci: add pci_iomap_wc() variants Luis R. Rodriguez
2015-03-20 23:17   ` Luis R. Rodriguez
2015-03-23 17:20   ` Bjorn Helgaas
2015-03-23 17:20     ` Bjorn Helgaas
2015-03-23 17:20     ` Bjorn Helgaas
2015-03-26  3:00     ` Luis R. Rodriguez
2015-03-26  3:00     ` Luis R. Rodriguez
2015-03-26  3:00       ` Luis R. Rodriguez
2015-04-21 17:52       ` Luis R. Rodriguez
2015-04-21 18:46         ` Michael S. Tsirkin
2015-04-21 18:46         ` Michael S. Tsirkin
2015-04-21 17:52       ` Luis R. Rodriguez
2015-03-27 19:18     ` Toshi Kani
2015-03-27 19:18       ` Toshi Kani
2015-03-27 19:18       ` Toshi Kani
2015-04-21 19:25     ` Michael S. Tsirkin
2015-04-21 19:25       ` Michael S. Tsirkin
2015-04-21 19:25       ` Michael S. Tsirkin
2015-04-21 19:27       ` Luis R. Rodriguez
2015-04-21 19:27         ` Luis R. Rodriguez
2015-04-21 19:27         ` Luis R. Rodriguez
2015-03-25 20:07   ` Konrad Rzeszutek Wilk
2015-03-25 20:07     ` Konrad Rzeszutek Wilk
2015-03-25 20:07     ` Konrad Rzeszutek Wilk
2015-03-27 18:40     ` Luis R. Rodriguez
2015-03-27 18:40       ` Luis R. Rodriguez
2015-03-27 18:40       ` Luis R. Rodriguez
2015-03-20 23:17 ` [PATCH v1 06/47] mtrr: add __arch_phys_wc_add() Luis R. Rodriguez
2015-03-20 23:17   ` Luis R. Rodriguez
2015-03-20 23:48   ` Andy Lutomirski
2015-03-20 23:48   ` Andy Lutomirski
2015-03-20 23:48     ` Andy Lutomirski
2015-03-27 19:53     ` Luis R. Rodriguez
2015-03-27 19:53     ` Luis R. Rodriguez
2015-03-27 19:53       ` Luis R. Rodriguez
2015-03-27 19:58       ` Andy Lutomirski
2015-03-27 19:58       ` Andy Lutomirski
2015-03-27 19:58         ` Andy Lutomirski
2015-03-27 20:30         ` Luis R. Rodriguez
2015-03-27 20:30         ` Luis R. Rodriguez
2015-03-27 20:30           ` Luis R. Rodriguez
2015-03-27 21:23           ` Andy Lutomirski
2015-03-27 21:23             ` Andy Lutomirski
2015-03-27 23:04             ` Luis R. Rodriguez
2015-03-27 23:04             ` Luis R. Rodriguez
2015-03-27 23:04               ` Luis R. Rodriguez
2015-03-27 23:10               ` Andy Lutomirski
2015-03-27 23:10                 ` Andy Lutomirski
2015-03-27 23:33                 ` Luis R. Rodriguez
2015-03-27 23:33                   ` Luis R. Rodriguez
2015-03-27 23:33                 ` Luis R. Rodriguez
2015-03-27 23:10               ` Andy Lutomirski
2015-03-27 21:23           ` Andy Lutomirski
2015-04-02 20:21   ` Bjorn Helgaas
2015-04-02 20:21     ` Bjorn Helgaas
2015-04-02 20:55     ` Luis R. Rodriguez
2015-04-02 20:55       ` Luis R. Rodriguez
2015-04-02 22:35       ` Bjorn Helgaas
2015-04-02 22:35         ` Bjorn Helgaas
2015-04-02 22:54         ` Luis R. Rodriguez
2015-04-02 22:54           ` Luis R. Rodriguez
2015-04-02 22:54         ` Luis R. Rodriguez
2015-04-02 22:35       ` Bjorn Helgaas
2015-04-02 20:55     ` Luis R. Rodriguez
2015-04-02 20:21   ` Bjorn Helgaas
2015-03-20 23:17 ` Luis R. Rodriguez
2015-03-20 23:17 ` [PATCH v1 07/47] video: fbdev: atyfb: move framebuffer length fudging to helper Luis R. Rodriguez
2015-03-20 23:17   ` Luis R. Rodriguez
2015-03-20 23:17 ` Luis R. Rodriguez
2015-03-20 23:17 ` [PATCH v1 08/47] video: fbdev: atyfb: clarify ioremap() base and length used Luis R. Rodriguez
2015-03-20 23:17   ` Luis R. Rodriguez
2015-03-20 23:17 ` Luis R. Rodriguez
2015-03-20 23:17 ` [PATCH v1 09/47] vidoe: fbdev: atyfb: remove and fix MTRR MMIO "hole" work around Luis R. Rodriguez
2015-03-20 23:17   ` Luis R. Rodriguez
2015-03-20 23:52   ` Andy Lutomirski
2015-03-20 23:52     ` Andy Lutomirski
2015-03-27 20:12     ` Luis R. Rodriguez
2015-03-27 20:12     ` Luis R. Rodriguez
2015-03-27 20:12       ` Luis R. Rodriguez
2015-03-27 21:21       ` Andy Lutomirski
2015-03-27 21:21       ` Andy Lutomirski
2015-03-27 21:21         ` Andy Lutomirski
2015-03-27 23:31         ` Luis R. Rodriguez
2015-03-27 23:31           ` Luis R. Rodriguez
2015-03-27 23:31         ` Luis R. Rodriguez
2015-03-20 23:52   ` Andy Lutomirski
2015-03-21  9:15   ` Ville Syrjälä
2015-03-21  9:15   ` Ville Syrjälä
2015-03-21  9:15     ` Ville Syrjälä
2015-03-27  8:37     ` Ville Syrjälä
2015-03-27  8:37     ` Ville Syrjälä
2015-03-27  8:37       ` Ville Syrjälä
2015-03-27 19:38       ` Luis R. Rodriguez
2015-03-27 19:38         ` Luis R. Rodriguez
2015-03-27 19:38       ` Luis R. Rodriguez
2015-03-27 19:38     ` Luis R. Rodriguez
2015-03-27 19:38     ` Luis R. Rodriguez
2015-03-27 19:38       ` Luis R. Rodriguez
2015-03-27 19:43       ` Andy Lutomirski
2015-03-27 19:43       ` Andy Lutomirski
2015-03-27 19:43         ` Andy Lutomirski
2015-03-27 19:57         ` Luis R. Rodriguez
2015-03-27 19:57         ` Luis R. Rodriguez
2015-03-27 19:57           ` Luis R. Rodriguez
2015-03-27 21:56           ` Ville Syrjälä
2015-03-27 21:56             ` Ville Syrjälä
2015-03-27 22:02             ` Andy Lutomirski
2015-03-27 22:02             ` Andy Lutomirski
2015-03-27 22:02               ` Andy Lutomirski
2015-03-28  0:28               ` Luis R. Rodriguez
2015-03-28  0:28               ` Luis R. Rodriguez
2015-03-28  0:28                 ` Luis R. Rodriguez
2015-03-28 12:23                 ` Ville Syrjälä
2015-03-28 12:23                   ` Ville Syrjälä
2015-04-01 23:52                   ` Luis R. Rodriguez
2015-04-01 23:52                   ` Luis R. Rodriguez
2015-04-01 23:52                     ` Luis R. Rodriguez
2015-04-02  0:04                     ` Andy Lutomirski
2015-04-02  0:04                     ` Andy Lutomirski
2015-04-02  0:04                       ` Andy Lutomirski
2015-04-02 19:45                       ` Luis R. Rodriguez
2015-04-02 19:45                         ` Luis R. Rodriguez
2015-04-02 19:50                         ` Andy Lutomirski
2015-04-02 19:50                         ` Andy Lutomirski
2015-04-02 19:50                           ` Andy Lutomirski
2015-04-02 19:45                       ` Luis R. Rodriguez
2015-03-28 12:23                 ` Ville Syrjälä
2015-03-28  0:21             ` Luis R. Rodriguez
2015-03-28  0:21             ` Luis R. Rodriguez
2015-03-28  0:21               ` Luis R. Rodriguez
2015-03-27 21:56           ` Ville Syrjälä
2015-03-20 23:17 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 10/47] video: fbdev: atyfb: use arch_phys_wc_add() and ioremap_wc() Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 11/47] IB/qib: add acounting for MTRR Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 12/47] IB/qib: use arch_phys_wc_add() Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 13/47] IB/ipath: add counting for MTRR Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 14/47] IB/ipath: use __arch_phys_wc_add() Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 15/47] [media] media: ivtv: " Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 16/47] fusion: " Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 17/47] video: fbdev: vesafb: only support MTRR_TYPE_WRCOMB Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 18/47] vidoe: fbdev: vesafb: add missing mtrr_del() for added MTRR Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 19/47] video: fbdev: vesafb: use arch_phys_wc_add() Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 20/47] mtrr: avoid ifdef'ery with phys_wc_to_mtrr_index() Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 21/47] ethernet: myri10ge: use arch_phys_wc_add() Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-21  7:08   ` Hyong-Youb Kim
2015-03-21  7:08   ` Hyong-Youb Kim
2015-03-21  7:08     ` Hyong-Youb Kim
2015-03-27 20:36     ` Luis R. Rodriguez
2015-03-27 20:36     ` Luis R. Rodriguez
2015-03-27 20:36       ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 22/47] staging: sm750fb: use arch_phys_wc_add() and ioremap_wc() Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 23/47] staging: xgifb: " Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-04-30 17:40   ` Luis R. Rodriguez
2015-04-30 17:40   ` Luis R. Rodriguez
2015-04-30 17:40     ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 24/47] video: fbdev: arkfb: use arch_phys_wc_add() and pci_iomap_wc() Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 25/47] video: fbdev: radeonfb: use arch_phys_wc_add() and ioremap_wc() Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 26/47] video: fbdev: gbefb: add missing mtrr_del() calls Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 27/47] video: fbdev: gbefb: use arch_phys_wc_add() and devm_ioremap_wc() Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 28/47] video: fbdev: intelfb: use arch_phys_wc_add() and ioremap_wc() Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 29/47] video: fbdev: matrox: " Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 30/47] video: fbdev: neofb: " Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 31/47] video: fbdev: s3fb: use arch_phys_wc_add() and pci_iomap_wc() Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 32/47] video: fbdev: nvidia: use arch_phys_wc_add() and ioremap_wc() Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 33/47] video: fbdev: savagefb: " Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 34/47] video: fbdev: sisfb: " Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 35/47] video: fbdev: aty: " Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 36/47] video: fbdev: i810: " Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 37/47] video: fbdev: i740fb: use arch_phys_wc_add() and pci_ioremap_wc_bar() Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 38/47] video: fbdev: kyrofb: " Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 39/47] video: fbdev: pm2fb: use arch_phys_wc_add() and ioremap_wc() Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 40/47] video: fbdev: pm3fb: " Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 41/47] video: fbdev: rivafb: " Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 42/47] video: fbdev: tdfxfb: " Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 43/47] video: fbdev: vt8623fb: use arch_phys_wc_add() and pci_iomap_wc() Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 44/47] video: fbdev: atmel_lcdfb: use ioremap_wc() for framebuffer Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 45/47] video: fbdev: geode gxfb: " Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 46/47] video: fbdev: gxt4500: use pci_ioremap_wc_bar() " Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18 ` [PATCH v1 47/47] mtrr: bury MTRR - unexport mtrr_add() and mtrr_del() Luis R. Rodriguez
2015-03-20 23:18 ` Luis R. Rodriguez
2015-03-20 23:18   ` Luis R. Rodriguez
2015-03-21  1:08 ` [PATCH v1 00/47] mtrr/x86/drivers: bury MTRR Andy Lutomirski
2015-03-21  1:08 ` Andy Lutomirski
2015-03-21  1:08   ` Andy Lutomirski
2015-03-24 22:08 [PATCH v4 0/7] mtrr, mm, x86: Enhance MTRR checks for huge I/O mapping Toshi Kani
2015-03-24 22:08 ` Toshi Kani
2015-03-24 22:08 ` [PATCH v4 1/7] mm, x86: Document return values of mapping funcs Toshi Kani
2015-03-24 22:08   ` Toshi Kani
2015-05-05 11:19   ` Borislav Petkov
2015-05-05 11:19     ` Borislav Petkov
2015-05-05 13:46     ` Toshi Kani
2015-05-05 13:46       ` Toshi Kani
2015-05-05 14:19       ` Borislav Petkov
2015-05-05 14:19         ` Borislav Petkov
2015-05-05 14:14         ` Toshi Kani
2015-05-05 14:14           ` Toshi Kani
2015-03-24 22:08 ` [PATCH v4 2/7] mtrr, x86: Fix MTRR lookup to handle inclusive entry Toshi Kani
2015-03-24 22:08   ` Toshi Kani
2015-05-05 17:11   ` Borislav Petkov
2015-05-05 17:11     ` Borislav Petkov
2015-05-05 17:32     ` Toshi Kani
2015-05-05 17:32       ` Toshi Kani
2015-05-05 18:39       ` Borislav Petkov
2015-05-05 18:39         ` Borislav Petkov
2015-05-05 19:31         ` Toshi Kani
2015-05-05 19:31           ` Toshi Kani
2015-05-05 20:09           ` Borislav Petkov
2015-05-05 20:09             ` Borislav Petkov
2015-05-05 20:06             ` Toshi Kani
2015-05-05 20:06               ` Toshi Kani
2015-03-24 22:08 ` [PATCH v4 3/7] mtrr, x86: Remove a wrong address check in __mtrr_type_lookup() Toshi Kani
2015-03-24 22:08   ` Toshi Kani
2015-05-06 10:46   ` Borislav Petkov
2015-05-06 10:46     ` Borislav Petkov
2015-03-24 22:08 ` [PATCH v4 4/7] mtrr, x86: Fix MTRR state checks in mtrr_type_lookup() Toshi Kani
2015-03-24 22:08   ` Toshi Kani
2015-05-06 11:47   ` Borislav Petkov
2015-05-06 11:47     ` Borislav Petkov
2015-05-06 15:23     ` Toshi Kani
2015-05-06 15:23       ` Toshi Kani
2015-05-06 22:39       ` Borislav Petkov
2015-05-06 22:39         ` Borislav Petkov
2015-05-06 23:08         ` Toshi Kani
2015-05-06 23:08           ` Toshi Kani
2015-03-24 22:08 ` [PATCH v4 5/7] mtrr, x86: Define MTRR_TYPE_INVALID for mtrr_type_lookup() Toshi Kani
2015-03-24 22:08   ` Toshi Kani
2015-03-24 22:08 ` [PATCH v4 6/7] mtrr, x86: Clean up mtrr_type_lookup() Toshi Kani
2015-03-24 22:08   ` Toshi Kani
2015-05-06 13:41   ` Borislav Petkov
2015-05-06 13:41     ` Borislav Petkov
2015-05-06 16:00     ` Toshi Kani
2015-05-06 16:00       ` Toshi Kani
2015-05-06 22:49       ` Borislav Petkov
2015-05-06 22:49         ` Borislav Petkov
2015-05-06 23:42         ` Toshi Kani
2015-05-06 23:42           ` Toshi Kani
2015-05-07  7:52           ` Borislav Petkov
2015-05-07  7:52             ` Borislav Petkov
2015-05-07 13:45             ` Toshi Kani
2015-05-07 13:45               ` Toshi Kani
2015-03-24 22:08 ` [PATCH v4 7/7] mtrr, mm, x86: Enhance MTRR checks for KVA huge page mapping Toshi Kani
2015-03-24 22:08   ` Toshi Kani
2015-05-09  9:08   ` Borislav Petkov
2015-05-09  9:08     ` Borislav Petkov
2015-05-11 19:25     ` Toshi Kani
2015-05-11 19:25       ` Toshi Kani
2015-05-11 20:18       ` Borislav Petkov
2015-05-11 20:18         ` Borislav Petkov
2015-05-11 20:38         ` Toshi Kani
2015-05-11 20:38           ` Toshi Kani
2015-05-11 21:42           ` Borislav Petkov
2015-05-11 21:42             ` Borislav Petkov
2015-05-11 22:09             ` Toshi Kani
2015-05-11 22:09               ` Toshi Kani
2015-05-12  7:28               ` Borislav Petkov
2015-05-12  7:28                 ` Borislav Petkov
2015-05-12 14:30                 ` Toshi Kani
2015-05-12 14:30                   ` Toshi Kani
2015-05-12 16:31                   ` Borislav Petkov
2015-05-12 16:31                     ` Borislav Petkov
2015-05-12 16:57                     ` Toshi Kani
2015-05-12 16:57                       ` Toshi Kani
2015-03-24 22:43 ` [PATCH v4 0/7] mtrr, mm, x86: Enhance MTRR checks for huge I/O mapping Andrew Morton
2015-03-24 22:43   ` Andrew Morton
2015-04-03  6:33   ` Ingo Molnar
2015-04-03  6:33     ` Ingo Molnar
2015-04-03 15:22     ` Toshi Kani
2015-04-03 15:22       ` Toshi Kani
2015-04-27 14:31       ` Toshi Kani
2015-04-27 14:31         ` Toshi Kani
2015-04-14 11:35 [PATCH] x86/kaslr: Fix typo in documentation Miroslav Benes
2015-04-14 11:37 ` Borislav Petkov
2015-04-22 17:12 [PATCH v4] mtrr: avoid ifdef'ery with phys_wc_to_mtrr_index() Luis R. Rodriguez
2015-04-22 17:12 ` Luis R. Rodriguez
2015-04-22 17:12 ` Luis R. Rodriguez
2015-04-28 22:13 [PATCH] x86: improve algorithm in clflush_cache_range Ross Zwisler
2015-04-29 10:28 ` Borislav Petkov
2015-04-28 22:46 [PATCH v2] x86: Add kerneldoc for pcommit_sfence() Ross Zwisler
2015-04-29 14:23 ` Borislav Petkov
2015-04-29 21:44 [PATCH v4 0/6] x86: document and address MTRR corner cases Luis R. Rodriguez
2015-04-29 21:44 ` [PATCH v4 1/6] x86: add ioremap_uc() - force strong UC, PCD=1, PWT=1 Luis R. Rodriguez
2015-04-29 21:44   ` Luis R. Rodriguez
2015-04-30 10:18   ` Borislav Petkov
2015-04-30 10:18     ` Borislav Petkov
2015-04-29 21:44 ` [PATCH v4 2/6] x86: document WC MTRR effects on PAT / non-PAT pages Luis R. Rodriguez
2015-04-29 21:44   ` Luis R. Rodriguez
2015-04-30 22:01   ` Randy Dunlap
2015-04-30 22:01     ` Randy Dunlap
2015-05-05  0:45     ` Luis R. Rodriguez
2015-05-05  0:45       ` Luis R. Rodriguez
2015-05-05  7:22       ` Borislav Petkov
2015-05-05  7:22         ` Borislav Petkov
2015-05-05  7:46         ` Luis R. Rodriguez
2015-05-05  7:46           ` Luis R. Rodriguez
2015-05-05  7:53           ` Borislav Petkov
2015-05-05  7:53             ` Borislav Petkov
2015-05-05  7:31     ` Luis R. Rodriguez
2015-05-05  7:31       ` Luis R. Rodriguez
2015-05-04 12:23   ` Borislav Petkov
2015-05-04 12:23     ` Borislav Petkov
2015-05-05  7:35     ` Luis R. Rodriguez
2015-05-05  7:35       ` Luis R. Rodriguez
2015-04-29 21:44 ` [PATCH v4 3/6] video: fbdev: atyfb: move framebuffer length fudging to helper Luis R. Rodriguez
2015-04-29 21:44   ` Luis R. Rodriguez
2015-04-29 21:44 ` [PATCH v4 4/6] video: fbdev: atyfb: clarify ioremap() base and length used Luis R. Rodriguez
2015-04-29 21:44   ` Luis R. Rodriguez
2015-04-29 21:44 ` [PATCH v4 5/6] video: fbdev: atyfb: replace MTRR UC hole with strong UC Luis R. Rodriguez
2015-04-29 21:44   ` Luis R. Rodriguez
2015-04-29 21:44 ` [PATCH v4 6/6] video: fbdev: atyfb: use arch_phys_wc_add() and ioremap_wc() Luis R. Rodriguez
2015-04-29 21:44   ` Luis R. Rodriguez
2015-05-20 19:53   ` Luis R. Rodriguez
2015-05-20 19:53     ` Luis R. Rodriguez
2015-05-20 20:57     ` Luis R. Rodriguez
2015-05-20 20:57       ` Luis R. Rodriguez
2015-06-03 23:50 ` [PATCH v4 0/6] x86: document and address MTRR corner cases Luis R. Rodriguez
2015-06-03 23:50   ` [Cocci] " Luis R. Rodriguez
2015-06-08 23:43   ` Luis R. Rodriguez
2015-06-08 23:43     ` [Cocci] " Luis R. Rodriguez
2015-06-16 19:31     ` Luis R. Rodriguez
2015-06-16 19:31       ` [Cocci] " Luis R. Rodriguez
2015-06-19 22:22       ` Luis R. Rodriguez
2015-06-25  1:24         ` Luis R. Rodriguez
2015-06-25  6:59           ` Ingo Molnar
2015-06-25 16:41             ` Luis R. Rodriguez
2015-04-30 20:25 [PATCH v5 0/6] x86: address drivers that do not work with PAT Luis R. Rodriguez
2015-04-30 20:25 ` [PATCH v5 1/6] x86/mm/pat: use pr_info() and friends Luis R. Rodriguez
2015-05-04 14:58   ` Borislav Petkov
2015-05-07  3:36   ` Elliott, Robert (Server Storage)
2015-05-14 15:55     ` Luis R. Rodriguez
2015-04-30 20:25 ` [PATCH v5 2/6] x86/mm/pat: redefine pat_enabled Luis R. Rodriguez
2015-05-04 15:22   ` Borislav Petkov
2015-05-05  0:42     ` Luis R. Rodriguez
2015-04-30 20:25 ` [PATCH v5 3/6] arch/x86/mm/pat: export pat_enabled() Luis R. Rodriguez
2015-05-04 15:29   ` Borislav Petkov
2015-04-30 20:25 ` [PATCH v5 4/6] ivtv: use arch_phys_wc_add() and require PAT disabled Luis R. Rodriguez
2015-04-30 20:25   ` Luis R. Rodriguez
2015-04-30 20:25   ` Luis R. Rodriguez
2015-04-30 20:25 ` [PATCH v5 5/6] IB/ipath: add counting for MTRR Luis R. Rodriguez
2015-04-30 20:25   ` Luis R. Rodriguez
2015-04-30 20:25 ` [PATCH v5 6/6] IB/ipath: use arch_phys_wc_add() and require PAT disabled Luis R. Rodriguez
2015-04-30 20:25   ` Luis R. Rodriguez
2015-04-30 20:25   ` Luis R. Rodriguez
2015-05-06 16:54 tools: Consolidate types.h Oleg Nesterov
2015-05-06 17:17 ` Borislav Petkov
2015-05-06 17:30   ` Oleg Nesterov
2015-05-06 17:37     ` Borislav Petkov
2015-05-07  2:53       ` Andy Lutomirski
2015-05-07 16:58         ` [PATCH 0/1] x86/vdso: add -Iarch/x86/include/uapi into HOST_EXTRACFLAGS Oleg Nesterov
2015-05-07 16:58           ` [PATCH 1/1] " Oleg Nesterov
2015-05-07 19:46             ` Andy Lutomirski
2015-05-07 21:55               ` Borislav Petkov
2015-05-11 12:44             ` [tip:x86/urgent] x86/vdso: Fix 'make bzImage' on older distros tip-bot for Oleg Nesterov
2015-05-11  8:15 [0/8] tip queue 2015-05-11 Borislav Petkov
2015-05-11  8:15 ` [PATCH] x86/alternatives: Switch AMD F15h and later to the P6 NOPs Borislav Petkov
2015-05-11 12:44   ` [tip:x86/asm] " tip-bot for Borislav Petkov
2015-05-11  8:15 ` [PATCH] x86/cpu/microcode: Zap changelog Borislav Petkov
2015-05-11 12:45   ` [tip:x86/microcode] " tip-bot for Borislav Petkov
2015-05-11  8:15 ` [PATCH] x86/kaslr: Fix typo in KASLR_FLAG documentation Borislav Petkov
2015-05-11 12:45   ` [tip:x86/boot] x86/kaslr: Fix typo in the " tip-bot for Miroslav Benes
2015-05-11  8:15 ` [PATCH 1/5] x86/mm: Do not flush last cacheline twice in clflush_cache_range() Borislav Petkov
2015-05-11 12:45   ` [tip:x86/mm] " tip-bot for Ross Zwisler
2015-05-11  8:15 ` [PATCH] x86/vdso: Add arch/x86/include/uapi include path to HOST_EXTRACFLAGS Borislav Petkov
2015-05-11  8:15 ` [PATCH 2/5] x86/mm: Add kerneldoc comments for pcommit_sfence() Borislav Petkov
2015-05-11 12:45   ` [tip:x86/mm] " tip-bot for Ross Zwisler
2015-05-11  8:15 ` [PATCH 3/5] x86/MTRR: Remove wrong address check in __mtrr_type_lookup() Borislav Petkov
2015-05-11 12:46   ` [tip:x86/mm] x86/mm/mtrr: Remove incorrect " tip-bot for Toshi Kani
2015-05-11 12:46     ` tip-bot for Toshi Kani
2015-05-11  8:15 ` [PATCH 4/5] x86/mm: Add ioremap_uc() helper to map memory uncacheable (not UC-) Borislav Petkov
2015-05-11 12:46   ` [tip:x86/mm] " tip-bot for Luis R. Rodriguez
2015-05-15 18:23 [PATCH v5 0/6] mtrr, mm, x86: Enhance MTRR checks for huge I/O mapping Toshi Kani
2015-05-15 18:23 ` Toshi Kani
2015-05-15 18:23 ` [PATCH v5 1/6] mm, x86: Simplify conditions of HAVE_ARCH_HUGE_VMAP Toshi Kani
2015-05-15 18:23   ` Toshi Kani
2015-05-17  8:30   ` Borislav Petkov
2015-05-15 18:23 ` [PATCH v5 2/6] mtrr, x86: Fix MTRR lookup to handle inclusive entry Toshi Kani
2015-05-15 18:23   ` Toshi Kani
2015-05-15 18:23 ` [PATCH v5 3/6] mtrr, x86: Fix MTRR state checks in mtrr_type_lookup() Toshi Kani
2015-05-15 18:23   ` Toshi Kani
2015-05-15 18:23 ` [PATCH v5 4/6] mtrr, x86: Define MTRR_TYPE_INVALID for mtrr_type_lookup() Toshi Kani
2015-05-15 18:23   ` Toshi Kani
2015-05-15 18:23 ` [PATCH v5 5/6] mtrr, x86: Clean up mtrr_type_lookup() Toshi Kani
2015-05-15 18:23   ` Toshi Kani
2015-05-15 18:23 ` [PATCH v5 6/6] mtrr, mm, x86: Enhance MTRR checks for KVA huge page mapping Toshi Kani
2015-05-15 18:23   ` Toshi Kani
2015-05-18 13:33   ` Borislav Petkov
2015-05-18 17:22     ` Toshi Kani
2015-05-18 17:22       ` Toshi Kani
2015-05-18 19:01       ` Borislav Petkov
2015-05-18 19:31         ` Toshi Kani
2015-05-18 19:31           ` Toshi Kani
2015-05-18 20:01           ` Borislav Petkov
2015-05-18 20:21             ` Toshi Kani
2015-05-18 20:21               ` Toshi Kani
2015-05-18 20:51               ` Borislav Petkov
2015-05-18 21:53                 ` Toshi Kani
2015-05-18 21:53                   ` Toshi Kani
2015-05-19 11:44                   ` Borislav Petkov
2015-05-19 13:23                     ` Borislav Petkov
2015-05-19 13:47                       ` Toshi Kani
2015-05-19 13:47                         ` Toshi Kani
2015-05-20 11:55                       ` Ingo Molnar
2015-05-20 11:55                         ` Ingo Molnar
2015-05-20 14:34                         ` Toshi Kani
2015-05-20 14:34                           ` Toshi Kani
2015-05-20 15:01                           ` Ingo Molnar
2015-05-20 15:01                             ` Ingo Molnar
2015-05-20 15:02                             ` Toshi Kani
2015-05-20 15:02                               ` Toshi Kani
2015-05-20 16:04                               ` Borislav Petkov
2015-05-20 15:46                                 ` Toshi Kani
2015-05-20 15:46                                   ` Toshi Kani
2015-05-18 16:34 [PATCH v4 0/3] Compile-time stack frame pointer validation Josh Poimboeuf
2015-05-18 16:34 ` [PATCH v4 1/3] x86, stackvalidate: " Josh Poimboeuf
2015-05-18 16:34 ` [PATCH v4 2/3] x86: Make push/pop CFI macros arch-independent Josh Poimboeuf
2015-05-18 16:34 ` [PATCH v4 3/3] x86, stackvalidate: Add asm frame pointer setup macros Josh Poimboeuf
2015-05-20 10:33 ` [PATCH v4 0/3] Compile-time stack frame pointer validation Ingo Molnar
2015-05-20 14:13   ` Josh Poimboeuf
2015-05-20 14:48     ` Ingo Molnar
2015-05-20 15:51       ` Josh Poimboeuf
2015-05-20 16:09         ` Josh Poimboeuf
2015-05-20 16:03       ` Andy Lutomirski
2015-05-20 16:25         ` Josh Poimboeuf
2015-05-20 16:39           ` Andy Lutomirski
2015-05-20 16:52           ` Borislav Petkov
2015-05-21 10:16             ` Ingo Molnar
2015-05-21 10:47               ` Borislav Petkov
2015-05-21 11:11                 ` Ingo Molnar
2015-05-21 15:49                   ` [PATCH 1/3] x86/documentation: Move kernel-stacks doc one level up Borislav Petkov
2015-05-21 15:49                     ` [PATCH 2/3] x86/documentation: Remove STACKFAULT_STACK bulletpoint Borislav Petkov
2015-05-21 15:49                     ` [PATCH 3/3] x86/documentation: Adapt Ingo's explanation on printing backtraces Borislav Petkov
2015-05-27 14:17               ` [tip:x86/debug] x86/Documentation: Adapt Ingo' s " tip-bot for Borislav Petkov
2015-05-20 16:59           ` [PATCH v4 0/3] Compile-time stack frame pointer validation Linus Torvalds
2015-05-20 17:20             ` Josh Poimboeuf
2015-05-21 10:27               ` Ingo Molnar
2015-05-21  7:52             ` Ingo Molnar
2015-05-21 12:12               ` Ingo Molnar
2015-05-26 23:06               ` Andi Kleen
2015-05-20 17:27         ` Peter Zijlstra
2015-05-20 19:10           ` Jiri Kosina
2015-05-21 20:54       ` Josh Poimboeuf
2015-05-21 21:53         ` Andy Lutomirski
2015-05-22 14:53           ` Josh Poimboeuf
2015-05-21 22:01         ` Borislav Petkov
2015-05-22 14:32           ` Josh Poimboeuf
2015-05-22 21:18             ` Jiri Kosina
2015-05-22 22:22               ` Josh Poimboeuf
2015-05-23  8:37             ` Borislav Petkov
2015-05-19  8:01 [RFC PATCH 0/4] x86, mwaitt: introduce AMD mwaitt support Huang Rui
2015-05-19  8:01 ` [RFC PATCH 1/4] x86, mwaitt: add monitorx and mwaitx instruction Huang Rui
2015-05-19 11:29   ` Borislav Petkov
2015-05-21  8:54     ` Huang Rui
2015-05-21  9:35       ` Borislav Petkov
2015-05-19  8:01 ` [RFC PATCH 2/4] x86, mwaitt: introduce mwaitx idle with a configurable timer Huang Rui
2015-05-19 11:31   ` Borislav Petkov
2015-05-20  8:55     ` Ingo Molnar
2015-05-20  9:12       ` Borislav Petkov
2015-05-20 10:22         ` Ingo Molnar
2015-05-20 10:50           ` Borislav Petkov
2015-05-20 11:11             ` Ingo Molnar
2015-05-20 11:21               ` Borislav Petkov
2015-05-20 11:41                 ` Ingo Molnar
2015-05-20 13:20                   ` Thomas Gleixner
2015-05-20 14:51                     ` Ingo Molnar
2015-05-20 15:55                       ` One Thousand Gnomes
2015-05-20 16:07                         ` Borislav Petkov
2015-05-20 19:12                           ` Thomas Gleixner
2015-05-20 20:15                             ` Borislav Petkov
2015-05-21 14:56                               ` Huang Rui
2015-05-21 16:02                                 ` Borislav Petkov
2015-05-21 16:45                                   ` Andy Lutomirski
2015-05-21 17:08                                     ` Borislav Petkov
2015-05-21 17:12                                       ` Andy Lutomirski
2015-05-21 19:30                                   ` Thomas Gleixner
2015-05-21 14:32                 ` Huang Rui
2015-05-25  2:42               ` Huang Rui
2015-05-25 10:43                 ` Ingo Molnar
2015-05-21 14:15         ` Huang Rui
2015-05-21 13:26     ` Huang Rui
2015-05-21  1:34   ` Andy Lutomirski
2015-05-21  5:48     ` Andy Lutomirski
2015-05-27  1:01       ` Andy Lutomirski
2015-05-27 11:30         ` Borislav Petkov
2015-05-21  9:41     ` Thomas Gleixner
2015-05-19  8:01 ` [RFC PATCH 3/4] x86, mwaitt: add document to describe mwaitx Huang Rui
2015-05-19  8:01 ` [RFC PATCH 4/4] x86, mwait: fix redundant comment Huang Rui
2015-05-19  9:40   ` Borislav Petkov
2015-05-19  8:57 ` [RFC PATCH 0/4] x86, mwaitt: introduce AMD mwaitt support Borislav Petkov
2015-05-19  9:44   ` Huang Rui
2015-05-19 15:43 [PATCH] x86, cpuinfo x86_model_id whitespace cleanup Prarit Bhargava
2015-05-19 16:56 ` Borislav Petkov
2015-05-19 17:25 ` Brian Gerst
2015-05-19 18:13   ` Borislav Petkov
2015-05-19 18:44     ` Andy Lutomirski
2015-05-19 19:22       ` Borislav Petkov
2015-05-19 20:16         ` Andy Lutomirski
2015-05-19 20:26           ` Joe Perches
2015-05-19 20:28             ` Joe Perches
2015-05-19 20:31           ` Borislav Petkov
2015-05-19 22:17             ` Prarit Bhargava
2015-05-27 17:18         ` H. Peter Anvin
2015-05-20  6:34 ` Ingo Molnar
2015-05-20 10:15   ` Prarit Bhargava
2015-06-02  8:42 ` [tip:x86/cpu] x86/cpu: Trim model ID whitespace tip-bot for Borislav Petkov
2015-05-20 11:22 [PATCH] mce: fix fail to set 'monarchtimeout' via boot option Xie XiuQi
2015-05-20 17:43 ` Borislav Petkov
2015-05-21  1:00   ` Xie XiuQi
2015-05-26  8:28 [PATCH 00/18] tip queue 2015-05-26 Borislav Petkov
2015-05-26  8:28 ` [PATCH 01/18] x86/kconfig: Simplify conditions for HAVE_ARCH_HUGE_VMAP Borislav Petkov
2015-05-27 14:17   ` [tip:x86/mm] x86/mm/kconfig: " tip-bot for Toshi Kani
2015-05-27 14:17     ` tip-bot for Toshi Kani
2015-05-26  8:28 ` [PATCH 02/18] x86/mtrr: Fix MTRR lookup to handle an inclusive entry Borislav Petkov
2015-05-27 14:18   ` [tip:x86/mm] x86/mm/mtrr: " tip-bot for Toshi Kani
2015-05-27 14:18     ` tip-bot for Toshi Kani
2015-05-26  8:28 ` [PATCH 03/18] x86/mtrr: Fix MTRR state checks in mtrr_type_lookup() Borislav Petkov
2015-05-27 14:18   ` [tip:x86/mm] x86/mm/mtrr: " tip-bot for Toshi Kani
2015-05-27 14:18     ` tip-bot for Toshi Kani
2015-05-26  8:28 ` [PATCH 04/18] x86/mtrr: Use symbolic define as a retval for disabled MTRRs Borislav Petkov
2015-05-27 14:18   ` [tip:x86/mm] x86/mm/mtrr: " tip-bot for Toshi Kani
2015-05-27 14:18     ` tip-bot for Toshi Kani
2015-05-26  8:28 ` [PATCH 05/18] x86/mtrr: Clean up mtrr_type_lookup() Borislav Petkov
2015-05-27 14:19   ` [tip:x86/mm] x86/mm/mtrr: " tip-bot for Toshi Kani
2015-05-27 14:19     ` tip-bot for Toshi Kani
2015-07-31 13:18     ` Peter Zijlstra
2015-07-31 13:18       ` Peter Zijlstra
2015-07-31 14:44       ` Borislav Petkov
2015-07-31 15:08         ` Peter Zijlstra
2015-07-31 15:08           ` Peter Zijlstra
2015-07-31 15:27           ` Borislav Petkov
2015-08-01 14:28             ` Luis R. Rodriguez
2015-08-01 14:28               ` Luis R. Rodriguez
2015-08-01 16:33               ` Borislav Petkov
2015-08-01 16:33                 ` Borislav Petkov
2015-08-01 16:39                 ` Linus Torvalds
2015-08-01 16:39                   ` Linus Torvalds
2015-08-01 16:49                   ` Borislav Petkov
2015-08-01 16:49                     ` Borislav Petkov
2015-08-01 17:03                     ` Linus Torvalds
2015-08-01 17:03                       ` Linus Torvalds
2015-05-26  8:28 ` [PATCH 06/18] x86/process: Drop repeated word from comment Borislav Petkov
2015-05-27 14:16   ` [tip:sched/core] sched/x86: Drop repeated word from mwait_idle() comment tip-bot for Huang Rui
2015-05-26  8:28 ` [PATCH 07/18] x86/mm: Enhance MTRR checks in kernel mapping helpers Borislav Petkov
2015-05-27 14:19   ` [tip:x86/mm] x86/mm/mtrr: " tip-bot for Toshi Kani
2015-05-27 14:19     ` tip-bot for Toshi Kani
2015-05-26  8:28 ` [PATCH 08/18] x86/mm/pat: Convert to pr_* usage Borislav Petkov
2015-05-27 14:19   ` [tip:x86/mm] x86/mm/pat: Convert to pr_*() usage tip-bot for Luis R. Rodriguez
2015-05-26  8:28 ` [PATCH 09/18] x86: Document Write Combining MTRR type effects on PAT / non-PAT pages Borislav Petkov
2015-05-27 14:19   ` [tip:x86/mm] x86/mm/mtrr, pat: " tip-bot for Luis R. Rodriguez
2015-05-26  8:28 ` [PATCH 10/18] x86/mtrr: Avoid ifdeffery with phys_wc_to_mtrr_index() Borislav Petkov
2015-05-27 14:20   ` [tip:x86/mm] x86/mm/mtrr: Avoid #ifdeffery " tip-bot for Luis R. Rodriguez
2015-05-26  8:28 ` [PATCH 11/18] x86/mtrr: Generalize runtime disabling of MTRRs Borislav Petkov
2015-05-27 14:20   ` [tip:x86/mm] x86/mm/mtrr: " tip-bot for Luis R. Rodriguez
2015-05-26  8:28 ` [PATCH 12/18] x86/mm/pat: Wrap pat_enabled Borislav Petkov
2015-05-27 14:20   ` [tip:x86/mm] x86/mm/pat: Wrap pat_enabled into a function API tip-bot for Luis R. Rodriguez
2015-05-26  8:28 ` [PATCH 13/18] x86/mm/pat: Export pat_enabled() Borislav Petkov
2015-05-27 14:21   ` [tip:x86/mm] " tip-bot for Luis R. Rodriguez
2015-05-26  8:28 ` [PATCH 14/18] x86/cpu: Strip any /proc/cpuinfo model name field whitespace Borislav Petkov
2015-05-27 14:16   ` [tip:x86/cpu] x86/cpu: Strip any /proc/ cpuinfo " tip-bot for Prarit Bhargava
2015-05-27 17:07     ` Joe Perches
2015-05-27 19:06       ` Borislav Petkov
2015-05-27 19:16         ` Joe Perches
2015-05-28 11:27           ` Prarit Bhargava
2015-05-28 11:32             ` Borislav Petkov
2015-05-28 12:58               ` Borislav Petkov
2015-05-28 16:57                 ` H. Peter Anvin
2015-05-28 18:33                   ` Borislav Petkov
2015-05-28 20:39                     ` H. Peter Anvin
2015-05-26  8:28 ` [PATCH 15/18] x86/documentation: Move kernel-stacks doc one level up Borislav Petkov
2015-05-27 14:17   ` [tip:x86/debug] x86/Documentation: " tip-bot for Borislav Petkov
2015-05-26  8:28 ` [PATCH 16/18] x86/documentation: Remove STACKFAULT_STACK bulletpoint Borislav Petkov
2015-05-27 14:17   ` [tip:x86/debug] x86/Documentation: " tip-bot for Borislav Petkov
2015-05-26  8:28 ` [PATCH 17/18] x86/documentation: Adapt Ingo's explanation on printing backtraces Borislav Petkov
2015-05-26  8:28 ` [PATCH 18/18] x86/mce: Fix monarch timeout setting through the mce= cmdline option Borislav Petkov
2015-06-07 17:39   ` [tip:x86/core] " tip-bot for Xie XiuQi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.