diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-01-15 08:08:40 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-01-15 08:08:40 -0800 |
commit | 3568834e813e0dd7547035b3148b2f2a2b48ee4e (patch) | |
tree | 19dfbffbaba9c1b021f4ef2df783c3a3513a0891 | |
parent | 8234b65afa92215ae0ed965811ac20c8b3a1806a (diff) | |
parent | 8ee291f87c5dcebcf9c3a0ee4e021586897db364 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86
* git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86:
x86: fix RTC_AIE with CONFIG_HPET_EMULATE_RTC
x86: asm-x86/msr.h: pull in linux/types.h
x86: fix boot crash on HIGHMEM4G && SPARSEMEM
-rw-r--r-- | arch/x86/kernel/hpet.c | 2 | ||||
-rw-r--r-- | arch/x86/mm/init_32.c | 9 | ||||
-rw-r--r-- | include/asm-x86/msr.h | 4 |
3 files changed, 12 insertions, 3 deletions
diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c index 4a86ffd67ec..2f99ee206b9 100644 --- a/arch/x86/kernel/hpet.c +++ b/arch/x86/kernel/hpet.c @@ -657,7 +657,7 @@ irqreturn_t hpet_rtc_interrupt(int irq, void *dev_id) hpet_pie_count = 0; } - if (hpet_rtc_flags & RTC_PIE && + if (hpet_rtc_flags & RTC_AIE && (curr_time.tm_sec == hpet_alarm_time.tm_sec) && (curr_time.tm_min == hpet_alarm_time.tm_min) && (curr_time.tm_hour == hpet_alarm_time.tm_hour)) diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c index c7d19471261..3c76d194fd2 100644 --- a/arch/x86/mm/init_32.c +++ b/arch/x86/mm/init_32.c @@ -321,8 +321,13 @@ extern void set_highmem_pages_init(int); static void __init set_highmem_pages_init(int bad_ppro) { int pfn; - for (pfn = highstart_pfn; pfn < highend_pfn; pfn++) - add_one_highpage_init(pfn_to_page(pfn), pfn, bad_ppro); + for (pfn = highstart_pfn; pfn < highend_pfn; pfn++) { + /* + * Holes under sparsemem might not have no mem_map[]: + */ + if (pfn_valid(pfn)) + add_one_highpage_init(pfn_to_page(pfn), pfn, bad_ppro); + } totalram_pages += totalhigh_pages; } #endif /* CONFIG_FLATMEM */ diff --git a/include/asm-x86/msr.h b/include/asm-x86/msr.h index 664a2fa7adc..80b027081b3 100644 --- a/include/asm-x86/msr.h +++ b/include/asm-x86/msr.h @@ -3,6 +3,10 @@ #include <asm/msr-index.h> +#ifndef __ASSEMBLY__ +# include <linux/types.h> +#endif + #ifdef __i386__ #ifdef __KERNEL__ |