1 /*
2  *  Copyright (C) 1994  Linus Torvalds
3  *  Copyright (C) 2000  SuSE
4  */
5 
6 #include <linux/kernel.h>
7 #include <linux/init.h>
8 #include <asm/alternative.h>
9 #include <asm/bugs.h>
10 #include <asm/processor.h>
11 #include <asm/mtrr.h>
12 #include <asm/cacheflush.h>
13 
check_bugs(void)14 void __init check_bugs(void)
15 {
16 	identify_boot_cpu();
17 #if !defined(CONFIG_SMP)
18 	printk(KERN_INFO "CPU: ");
19 	print_cpu_info(&boot_cpu_data);
20 #endif
21 	alternative_instructions();
22 
23 	/*
24 	 * Make sure the first 2MB area is not mapped by huge pages
25 	 * There are typically fixed size MTRRs in there and overlapping
26 	 * MTRRs into large pages causes slow downs.
27 	 *
28 	 * Right now we don't do that with gbpages because there seems
29 	 * very little benefit for that case.
30 	 */
31 	if (!direct_gbpages)
32 		set_memory_4k((unsigned long)__va(0), 1);
33 }
34