[LWN Logo]

Date:   Sun, 26 Sep 1999 19:22:47 +0200 (CEST)
From:   Ingo Molnar <mingo@chiara.csoma.elte.hu>
To:     linux-smp@vger.rutgers.edu, linux-kernel@vger.rutgers.edu
Subject: [x86,SMP,patch] smp-2.3.18-H3


the latest version of the x86 SMP/APIC/IOAPIC code can be found at:

	http://www.redhat.com/~mingo/smp-2.3.18-H3

this one is a 'release candidate', ie. i fixed all reported problems -
everybody please check wether there are unfixed SMP problems left (or new
ones introduced) and re-report them if so. (just in case i missed
something)

Changes in smp-2.3.18-H3:

	- finally fixes Mike Frisch's 'soundblaster IRQ goes berzerk'
	  problem.
	(me)

Changes in smp-2.3.18-H2:

	- we should boot on boxes with certain default mptables now.
	(Ken-ichi Yaku, Alvaro Herrera)

	- NMI handling fixes, typo fixes
	(Maciej W. Rozycki)

	- fixed minor bug in smp_call_function(), cleaned it up, converted
	  to semaphore usage. Other cleanups.
	(me)

Changes in smp-2.3.18-F8:

	- continuing quest to make 82489DX based (and other older)
	  systems work, typo fixes and comment updates.
	(Maciej W. Rozycki)

	- 'local APIC timer interrupt interleaving', this is both a
	  fix for a potential bug, and preparation for next generation
	  per-CPU timer handling.
	(me)

	- tons of further cleanups, separated smp.c into smpboot.c and
	  smp.c, cleaned up both.
	(me)

	- potential double-write bug fixed - this might fix the booting
	  problem on those old ALR dual- and quad-Pentium boards? (if
	  anyone got one)
	(me)

	- other smaller fixes i forgot about

Changes in smp-2.3.18-B1:

	- unconditional NMI oopser. It turned out that we can do this on
	99% (maybe 100%) of x86 SMP boxes without impacting timer IRQ
	performance. See Documentation/nmi_watchdog.txt.
	(me)

	- old external IOAPICs and 486-based SMP boxes should work now
	(Maciej W. Rozycki)

	- unused variable space cleanups, initialize_secondary() cleanup
	(Manfred Spraul)

	- moved all IO-APIC and IPI APIC messages to logical destination
	mode, fixed LDR initialization bug, cleaned up irq-vector space.
	(me)

	- 'timer-sync' feature, all CPUs synchronize their time stamp
	counters, errors get reported and fixed. This fixes certain
	dual-PIII boards.
	(me)

	- the 'set the destination CPU mask to 0' IOAPIC-edge trick is
	actually not valid and triggers APIC bugs. Exchanged it for an
	equivalent but safe method.
	(me)

	- 8259A init moved out of setup.S
	(Maciej W. Rozycki)

	- spurious 8259A interrupts get reported properly, APIC error
	vector exported and logged properly
	(me)

	- a 'noapic' bug fixed - fixes instability in noapic mode.
	(me)

	- we can inline ack_APIC() on P6 boxes: smaller and faster IRQ 
	code.
	(me)

	- other stuff.

reports, comments, suggestions welcome.

-- mingo


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/