freebsd-skq/sys/ia64/include
Marcel Moolenaar 65e962fb76 Revert previous commit. The problem was not related to overrunning
the kernel stack at all. The new USB stack simply caused a change
in timing that triggered a firmware bug more often. The addition
of PRINTF_BUFR_SIZE apparently triggered the same firmware bug
even more reliably.

But even with KSTACK_PAGES=5, one instance of the firmware bug
remained: booting with a CD inserted. This problem was run into
by accident after installing Debian and having to boot FreeBSD
to fixup the GPT partitioning (Thanks... not). After bumping
KSTACK_PAGES to 5, it was pretty unbelievable that the stack was
still being too small.

After updating the firmware we could boot with a CD inserted and
KSTACK_PAGES could be lowered back to 4 pages without problems.

Note: It is believed to be a timing related firmware bug, because
the machine check information showed access to the serial console
on one CPU and access to the EHCI HCD on the other CPU. Since
both are devices on the management unit and thus virtualized in
some way, any execution trace that does not include concurrent
access to the BMC from both CPUs is fine.

Note also that it's not understood exactly how increasing the
kernel stack avoided hitting the firmware bug. A change in page
faults does change timing, but it's not known if that's what's
happening here.

In any case: the problem is being monitored. Reverting back to
4 pages for the kernel stack is preferred, because it makes it
easier to switch to 16K pages (double the page size) without
wasting too much memory by not being able to half the number of
pages...
2009-11-23 21:09:23 +00:00
..
pc
_align.h Get rid of the _NO_NAMESPACE_POLLUTION kludge by creating an 2009-09-08 20:45:40 +00:00
_bus.h
_inttypes.h
_limits.h
_regset.h
_stdint.h
_types.h
acpica_machdep.h
asm.h o Align function on a 32-byte boundary so that the core's front-end 2009-10-21 18:09:48 +00:00
atomic.h
bootinfo.h
bus_dma.h
bus.h
clock.h
cpu.h
cpufunc.h
db_machdep.h
dig64.h
efi.h
elf.h Define architectural load bases for PIE binaries. Addresses were selected 2009-10-10 15:31:24 +00:00
endian.h
exec.h
float.h
floatingpoint.h
fpu.h
frame.h
gdb_machdep.h
ia64_cpu.h
ieee.h
ieeefp.h
in_cksum.h
intr.h
intrcnt.h
kdb.h
limits.h
mca.h
md_var.h Reimplement the lazy FP context switching: 2009-10-31 22:27:31 +00:00
memdev.h
mutex.h
nexusvar.h
pal.h
param.h Revert previous commit. The problem was not related to overrunning 2009-11-23 21:09:23 +00:00
pcb.h
pci_cfgreg.h
pcpu.h
pmap.h Add support to the virtual memory system for configuring machine- 2009-07-12 23:31:20 +00:00
pmc_mdep.h
proc.h Reimplement the lazy FP context switching: 2009-10-31 22:27:31 +00:00
profile.h
pte.h
ptrace.h
reg.h
reloc.h
resource.h
runq.h
sal.h
sapicreg.h
sapicvar.h
setjmp.h
sf_buf.h
sigframe.h
signal.h
smp.h * Completely Remove the option STOP_NMI from the kernel. This option 2009-08-13 17:09:45 +00:00
stdarg.h
sysarch.h
ucontext.h
unwind.h
varargs.h
vm.h Add support to the virtual memory system for configuring machine- 2009-07-12 23:31:20 +00:00
vmparam.h