Confusion about IO-APIC Entry?
|[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]|
On Wed, 2007-01-17 at 08:39 +0530, Vivek Goyal wrote: > On Tue, Jan 16, 2007 at 12:49:31PM -0500, Benjamin Romer wrote: > > On Fri, 2007-01-12 at 15:16 +0530, Vivek Goyal wrote: > > > On Thu, Jan 11, 2007 at 10:01:20AM -0500, Benjamin Romer wrote: > > > > After a lot of internal discussion with other Unisys employees, I think > > > > I've finally got this all figured out. The problem is one line of code > > > > in the disable_IO_APIC() function, that says this: > > > > > > > > entry.dest.physical.physical_dest = GET_APIC_ID(apic_read(APIC_ID)); > > > > > > > > The problem seems to be that when the kernel was previously updated to > > > > take advantage of the 8-bit IO-APIC physical destination field defined > > > > in Intel's xAPIC spec on page 334, downloadable from > > > > ftp://download.intel.com/design/chipsets/e8501/datashts/30962001.pdf , > > > > this particular piece of code was missed. According to my co-worker > > > > Natalie Protasevich, the Linux kernel was updated back when the Xeon > > > > processor first came out to use the larger field by merely switching the > > > > code to use the logical destination field for everything. (Personally, I > > > > would have removed the union from the structure and put in new fields > > > > with new names to make the change more obvious, but it's not my > > > > code. :) ) Anyway, what it comes down to is we need to switch that one > > > > line in disable_IO_APIC() to read > > > > > > > > entry.dest.logical.logical_dest = GET_APIC_ID(apic_read(APIC_ID)); > > > > > > > > > > Hmm.. This should fix the problem without breaking old 4bit physical > > > destination mode machines. > > > > > > Thanks > > > Vivek > > > > I was able to confirm that this change allows the ES7000/ONE to > > successfully kexec with a working clock. The other patch that I > > mentioned does not appear to solve the problem alone (though I had a > > little trouble getting it applied to the kernel), so I'd like to go > > ahead with this fix if that's okay. :) Should I post a patch to the > > LKML? > > > > Hi Ben, > > Yes. Please post a patch to fastboot and LKML. Which one is the other > patch? > > Thanks > Vivek The patch I was pointed at that didn't solve the problem was titled "[PATCH] x86_64: check_timer with io apic setup before try_apic_pin". I'll write up the one-liner and get that on the LKML today. :) -- Ben
[Netdev] [Linux Wireless] [Kernel Newbies] [Security] [Linux for Hams] [Netfilter] [Bugtraq] [Photo] [Yosemite] [Yosemite Forum] [MIPS Linux] [ARM Linux] [Linux RAID] [Linux Admin] [Samba] [Linux Media] [Linux Resources]