- mtrr-adds-mtrr_save_fixed_ranges-for-use-in-two-later-patches.patch removed from -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch titled
     mtrr: adds mtrr_save_fixed_ranges() for use in two later  patches
has been removed from the -mm tree.  Its filename was
     mtrr-adds-mtrr_save_fixed_ranges-for-use-in-two-later-patches.patch

This patch was dropped because it was merged into mainline or a subsystem tree

------------------------------------------------------
Subject: mtrr: adds mtrr_save_fixed_ranges() for use in two later  patches
From: Bernhard Kaindl <bk@xxxxxxx>

In this current implementation which is used in other patches,
mtrr_save_fixed_ranges() accepts a dummy void pointer because in the current
implementation of one of these patches, this function may be called from
smp_call_function_single() which requires that this function takes a void
pointer argument.

This function calls get_fixed_ranges(), passing mtrr_state.fixed_ranges which
is the element of the static struct which stores our current backup of the
fixed-range MTRR values which all CPUs shall be using.

Because mtrr_save_fixed_ranges calls get_fixed_ranges after kernel
initialisation time, __init needs to be removed from the declaration of
get_fixed_ranges().

If CONFIG_MTRR is not set, we define mtrr_save_fixed_ranges as an empty
statement because there is nothing to do.

Signed-off-by: Bernhard Kaindl <bk@xxxxxxx>
Cc: Andi Kleen <ak@xxxxxxx>
Cc: Dave Jones <davej@xxxxxxxxxxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
---

 arch/i386/kernel/cpu/mtrr/generic.c |   17 +++++++++++++++--
 include/asm-i386/mtrr.h             |    2 ++
 include/asm-x86_64/proto.h          |    2 ++
 3 files changed, 19 insertions(+), 2 deletions(-)

diff -puN arch/i386/kernel/cpu/mtrr/generic.c~mtrr-adds-mtrr_save_fixed_ranges-for-use-in-two-later-patches arch/i386/kernel/cpu/mtrr/generic.c
--- a/arch/i386/kernel/cpu/mtrr/generic.c~mtrr-adds-mtrr_save_fixed_ranges-for-use-in-two-later-patches
+++ a/arch/i386/kernel/cpu/mtrr/generic.c
@@ -37,8 +37,11 @@ get_mtrr_var_range(unsigned int index, s
 	rdmsr(MTRRphysMask_MSR(index), vr->mask_lo, vr->mask_hi);
 }
 
-static void __init
-get_fixed_ranges(mtrr_type * frs)
+/**
+ * Retrieves the current fixed-range MTRRs from the current CPU
+ * \param frs address where to write the current MTRR contents
+ */
+static void get_fixed_ranges(mtrr_type * frs)
 {
 	unsigned int *p = (unsigned int *) frs;
 	int i;
@@ -51,6 +54,16 @@ get_fixed_ranges(mtrr_type * frs)
 		rdmsr(MTRRfix4K_C0000_MSR + i, p[6 + i * 2], p[7 + i * 2]);
 }
 
+/**
+ * Updates our copy of the state of the fixed-range MTRR values
+ * with the current fixed-range MTRR contents from the current CPU
+ * \param info dummy needed for use by smp_call_function_single()
+ */
+void mtrr_save_fixed_ranges(void *info)
+{
+	get_fixed_ranges(mtrr_state.fixed_ranges);
+}
+
 static void __cpuinit print_fixed(unsigned base, unsigned step, const mtrr_type*types)
 {
 	unsigned i;
diff -puN include/asm-i386/mtrr.h~mtrr-adds-mtrr_save_fixed_ranges-for-use-in-two-later-patches include/asm-i386/mtrr.h
--- a/include/asm-i386/mtrr.h~mtrr-adds-mtrr_save_fixed_ranges-for-use-in-two-later-patches
+++ a/include/asm-i386/mtrr.h
@@ -69,6 +69,7 @@ struct mtrr_gentry
 
 /*  The following functions are for use by other drivers  */
 # ifdef CONFIG_MTRR
+extern void mtrr_save_fixed_ranges(void *);
 extern int mtrr_add (unsigned long base, unsigned long size,
 		     unsigned int type, char increment);
 extern int mtrr_add_page (unsigned long base, unsigned long size,
@@ -79,6 +80,7 @@ extern void mtrr_centaur_report_mcr(int 
 extern void mtrr_ap_init(void);
 extern void mtrr_bp_init(void);
 #  else
+#define mtrr_save_fixed_ranges(arg) do {} while (0)
 static __inline__ int mtrr_add (unsigned long base, unsigned long size,
 				unsigned int type, char increment)
 {
diff -puN include/asm-x86_64/proto.h~mtrr-adds-mtrr_save_fixed_ranges-for-use-in-two-later-patches include/asm-x86_64/proto.h
--- a/include/asm-x86_64/proto.h~mtrr-adds-mtrr_save_fixed_ranges-for-use-in-two-later-patches
+++ a/include/asm-x86_64/proto.h
@@ -17,9 +17,11 @@ extern void mcheck_init(struct cpuinfo_x
 #ifdef CONFIG_MTRR
 extern void mtrr_ap_init(void);
 extern void mtrr_bp_init(void);
+extern void mtrr_save_fixed_ranges(void *);
 #else
 #define mtrr_ap_init() do {} while (0)
 #define mtrr_bp_init() do {} while (0)
+#define mtrr_save_fixed_ranges(arg) do {} while (0)
 #endif
 extern void init_memory_mapping(unsigned long start, unsigned long end);
 
_

Patches currently in -mm which might be from bk@xxxxxxx are


-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux