aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-rw-r--r--arch/i386/kernel/smpboot.c1
-rw-r--r--arch/ia64/kernel/setup.c6
-rw-r--r--arch/ppc/xmon/xmon.c2
3 files changed, 8 insertions, 1 deletions
diff --git a/arch/i386/kernel/smpboot.c b/arch/i386/kernel/smpboot.c
index b3c2e2c26743..a9bf5f222e47 100644
--- a/arch/i386/kernel/smpboot.c
+++ b/arch/i386/kernel/smpboot.c
@@ -1096,6 +1096,7 @@ static void smp_tune_scheduling (void)
1096 cachesize = 16; /* Pentiums, 2x8kB cache */ 1096 cachesize = 16; /* Pentiums, 2x8kB cache */
1097 bandwidth = 100; 1097 bandwidth = 100;
1098 } 1098 }
1099 max_cache_size = cachesize * 1024;
1099 } 1100 }
1100} 1101}
1101 1102
diff --git a/arch/ia64/kernel/setup.c b/arch/ia64/kernel/setup.c
index d91c8ff2c0d7..0daa8fa9ef32 100644
--- a/arch/ia64/kernel/setup.c
+++ b/arch/ia64/kernel/setup.c
@@ -696,6 +696,7 @@ static void
696get_max_cacheline_size (void) 696get_max_cacheline_size (void)
697{ 697{
698 unsigned long line_size, max = 1; 698 unsigned long line_size, max = 1;
699 unsigned int cache_size = 0;
699 u64 l, levels, unique_caches; 700 u64 l, levels, unique_caches;
700 pal_cache_config_info_t cci; 701 pal_cache_config_info_t cci;
701 s64 status; 702 s64 status;
@@ -725,6 +726,8 @@ get_max_cacheline_size (void)
725 line_size = 1 << cci.pcci_line_size; 726 line_size = 1 << cci.pcci_line_size;
726 if (line_size > max) 727 if (line_size > max)
727 max = line_size; 728 max = line_size;
729 if (cache_size < cci.pcci_cache_size)
730 cache_size = cci.pcci_cache_size;
728 if (!cci.pcci_unified) { 731 if (!cci.pcci_unified) {
729 status = ia64_pal_cache_config_info(l, 732 status = ia64_pal_cache_config_info(l,
730 /* cache_type (instruction)= */ 1, 733 /* cache_type (instruction)= */ 1,
@@ -741,6 +744,9 @@ get_max_cacheline_size (void)
741 ia64_i_cache_stride_shift = cci.pcci_stride; 744 ia64_i_cache_stride_shift = cci.pcci_stride;
742 } 745 }
743 out: 746 out:
747#ifdef CONFIG_SMP
748 max_cache_size = max(max_cache_size, cache_size);
749#endif
744 if (max > ia64_max_cacheline_size) 750 if (max > ia64_max_cacheline_size)
745 ia64_max_cacheline_size = max; 751 ia64_max_cacheline_size = max;
746} 752}
diff --git a/arch/ppc/xmon/xmon.c b/arch/ppc/xmon/xmon.c
index 2b483b4f1602..9075a7538e26 100644
--- a/arch/ppc/xmon/xmon.c
+++ b/arch/ppc/xmon/xmon.c
@@ -99,7 +99,7 @@ static void remove_bpts(void);
99static void insert_bpts(void); 99static void insert_bpts(void);
100static struct bpt *at_breakpoint(unsigned pc); 100static struct bpt *at_breakpoint(unsigned pc);
101static void bpt_cmds(void); 101static void bpt_cmds(void);
102static void cacheflush(void); 102void cacheflush(void);
103#ifdef CONFIG_SMP 103#ifdef CONFIG_SMP
104static void cpu_cmd(void); 104static void cpu_cmd(void);
105#endif /* CONFIG_SMP */ 105#endif /* CONFIG_SMP */