The bochs cpu emulator (tries to emulate Pentium cpus) oopses in
finalize_mtrr_state():
mtrr_if is NULL, and thus use_intel() crashes.
Patch attached. I've modified is_cpu() as well, without checking if this
macro could be used if mtrr_if is not initialized.
Partially tested - bochs now hangs at the first access to the ide
interface :-(
-- Manfred
diff -u 2.5/arch/i386/kernel/cpu/mtrr/mtrr.h build-2.5/arch/i386/kernel/cpu/mtrr/mtrr.h --- 2.5/arch/i386/kernel/cpu/mtrr/mtrr.h Tue Jun 25 20:27:47 2002 +++ build-2.5/arch/i386/kernel/cpu/mtrr/mtrr.h Tue Jun 25 21:22:15 2002 @@ -88,8 +88,8 @@ extern u32 size_or_mask, size_and_mask; extern struct mtrr_ops * mtrr_if; -#define is_cpu(vnd) (mtrr_if->vendor == X86_VENDOR_##vnd) -#define use_intel() (mtrr_if->use_intel_if == 1) +#define is_cpu(vnd) (mtrr_if && mtrr_if->vendor == X86_VENDOR_##vnd) +#define use_intel() (mtrr_if && mtrr_if->use_intel_if == 1) extern unsigned int num_var_ranges;
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sun Jun 30 2002 - 22:00:10 EST