Re: [PATCH] kexec: reenable HPET before kexec
From: Konstantin Baydarov <hidden>
Date: 2007-08-23 11:43:34
Also in:
lkml
On Thu, 23 Aug 2007 14:38:45 +0530 Vivek Goyal [off-list ref] wrote:
Does your kernel 2 boot normally? I mean through BIOS and boot-loader? This explanation seems to be suggesting that because PM and ACPI is disabled, kernel 2 does not search for HPET. If this is the case, this kernel will not boot even through normal boot-loader and will try to use PIT instead? If so, it is not an kexec issue at all. Thanks Vivek
kernel 2 boots normally through BIOS and boot-loader. I agree with your explanation. It seems that kernel 2 can't enable PIT, when it is executed by kexec. As kernel 1 disabled HPET(IRQ0 source) and PIT is "broken"(or isn't enabled) IRQ0 are not triggered at all, and kernel 2 hangs. As kernel 2 boots normally through BIOS and boot-loader, than additional code needed(in Linux kernel init code) for PIT or ACPI or APIC initialization, I mean the same code as executed on BIOS stage. I agree that it's not an kexec issue. But can we use my fix as a workaround(to make kexec work) until PIT will be fixed? Everything above is correct for i386/x86_64 RT(2.6.23-rc2-rt2) kernel and for i368 "plain"(2.6.23-rc3) kernel. Bug isn't reproduced in 2.6.23-rc3 x86_64 kernel, because x86_64 code never disables HPET. So on every boot(initiated by kexec or BIOS) IRQ0 are triggered.