Neil Horman <nhorman at tuxdriver.com> writes: > Recently a kdump bug was discovered in which a system would hang inside > calibrate_delay during the booting of the kdump kernel. This was caused by the > fact that the jiffies counter was not being incremented during timer > calibration. The root cause of this problem was found to be a bios > misconfiguration of the hypertransport bus. On system affected by this hang, > the bios had assigned APIC ids which used extended apic bits (more than the > nominal 4 bit ids's), but failed to configure bit 17 of the hypertransport > transaction config register, which indicated that the mask for the destination > field of interrupt packets accross the ht bus (see section 3.3.9 of > http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/26094.PDF). > If a crash occurs on a cpu with an APIC id that extends beyond 4 bits, it will > not recieve interrupts during the kdump kernel boot, and this hang will be the > result. The fix is to add this patch, whcih add an early pci quirk check, to > forcibly enable this bit in the httcfg register. This enables all cpus on a > system to receive interrupts, and allows kdump kernel bootup to procede > normally. > > Regards > Neil > > > Signed-off-by: Neil Horman <nhorman at tuxdriver.com> Acked-by: "Eric W. Biederman" <ebiederm at xmission.com> Eric