Commit Graph

47610 Commits

Author SHA1 Message Date
matt 00caca484f Change IPL_LEVELS to NIPL.
current_spl_level is dead.
2008-04-29 17:09:47 +00:00
martin 9213a7cdc1 Record argument in soft interrupt handler 2008-04-29 15:57:56 +00:00
tsutsui 835f32c27d - split softc/device_t with related changes
- always make local functions static since mips/conf/Makefile.mips
  has been changed to preserve local symbols for debug
2008-04-29 15:50:39 +00:00
yamt 5d9397e689 sprinkle KASSERT(kpreempt_disabled()). 2008-04-29 15:44:07 +00:00
yamt 20d35e839b make cpu_intr_p preemption safe. 2008-04-29 15:42:59 +00:00
ad 7851dc4283 Get spl framework and interrupt gates working before breaking into DDB
on boot. PR port-amd64/30828.
2008-04-29 15:26:26 +00:00
tsutsui 1a8652c79c - reorganize com console code
- remove unused functions
2008-04-29 15:24:50 +00:00
ad a1ddfabe35 Mirror sparc and provide sparc_softintr stuff. There is no functional
change, beyond renaming a function and putting back disestablish/schedule.
PR kern/37540.
2008-04-29 14:06:31 +00:00
ad 5b204246b2 Current should boot quickly on these emulators now, so the configs aren't
required. If it boots slowly please adjust the code to disable ISAPNP probes
which are the main slow part of boot on x86. See x86/platform.c.
2008-04-29 12:46:15 +00:00
ad 19f35718b6 Require MULTIPROCESSOR. PR kern/38537. 2008-04-29 12:43:58 +00:00
martin 3028e483e4 Convert to new 2 clause license 2008-04-29 06:53:00 +00:00
ad 88a55035c6 Oops... EVCNT_TYPE_IPI -> EVCNT_TYPE_INTR. 2008-04-29 00:44:58 +00:00
ad ffc4969f6e Don't count many items as EVCNT_TYPE_INTR because they clutter up the
systat vmstat display.
2008-04-28 23:00:22 +00:00
ad 104cf0ae89 Add support for kernel preeemption to the i386 and amd64 ports. Notes:
- I have seen one isolated panic in the x86 pmap, but otherwise i386
  seems stable with preemption enabled.

- amd64 is missing the FPU handling changes and it's not yet safe to
  enable it there.

- The usual level for kern.sched.kpreempt_pri will be 128 once enabled
  by default. For testing, setting it to 0 helps to shake out bugs.
2008-04-28 22:47:37 +00:00
martin ce099b4099 Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
ad 0cb8674c03 Make the trap stubs preemption safe. 2008-04-28 19:47:36 +00:00
ad 9c1818760e - Make some entry/exit points preemption safe.
- Try to avoid mispredicted bracnhes in Xsyscall.
- Interrupts were being enabled in Xsyscall _after_ checking for ASTs,
  while could have resulted in ugly behaviour like delayed signals or
  context switches. Fix it.
2008-04-28 19:35:56 +00:00
garbled 01fba5909d Add floppy support to prep (the croud goes wild)
Add an additional argument to pnpbus_intr_establish to allow overriding of
the pnp interrupt type, because some devices lie.
Change how the pnpbus match routine works, to avoid attaching it when we
are probing for cpu's.
Fix a few stray printf's in the autoconf output.
2008-04-28 19:01:45 +00:00
ad 50ca4969ff Noisy printf. 2008-04-28 18:49:40 +00:00
ad 25a2492fa0 Make kernel pagefault handling preeemption safe. 2008-04-28 18:32:12 +00:00
ad 6adfffcd49 - Make these preemption safe.
- Try to avoid mispredicted branches.
2008-04-28 18:31:15 +00:00
ad 53368c2808 Noisy printf. 2008-04-28 18:26:57 +00:00
ad 2d7dbb9788 +L_NOPREEMPT, L_DOPREEMPT 2008-04-28 18:20:51 +00:00
ad d8fdbaf5b4 Make pagefaults in kernel mode preemption safe. 2008-04-28 18:17:40 +00:00
ad 67d2c7edc1 Make FPU handling preemption safe. 2008-04-28 18:15:39 +00:00
ad 64bcc9bd8b Make this preemption safe. 2008-04-28 18:13:58 +00:00
ad 3d504986e5 Stray kpreempt_disable with no matching kpreempt_enable. 2008-04-28 17:18:19 +00:00
ad a52d138523 cpu_idle: assert ilevel == IPL_NONE. 2008-04-28 13:10:22 +00:00
ad 7c334139cd - mutex_spin_enter: avoid SPL NOT LOWERED... errors when running with
preemption. This could also fix similar errors seen with softints.
- Adjust code slightly to try and avoid mispredicted branches. The branch
  hint prefixes are apparently of little use.
2008-04-28 13:09:00 +00:00
ad 5be927ae20 Make preemption safe. 2008-04-27 22:43:08 +00:00
ad c76bdbff23 Sprinkle more assertions / preemption paranoia. 2008-04-27 22:41:15 +00:00
ad a93682b7c8 - Make some entry/exit points preemption safe.
- Avoid mispredicted branches in Xsyscall.
2008-04-27 22:40:09 +00:00
bouyer 0fef0ddf92 xengnt_more_entries(): fix memory leak, noticed by Jean-Yves Migeon 2008-04-27 19:28:45 +00:00
matt 825088eda6 Merge kernel changes in matt-armv6 to HEAD. 2008-04-27 18:58:43 +00:00
skd 8b7bbc0009 Fix pic locking to mirror simple_lock primitives. 2008-04-27 17:47:11 +00:00
tsutsui 02d0296505 Make compile with debug options. 2008-04-27 15:56:37 +00:00
tsutsui bdc08026eb Fix a botch in rev 1.21. 2008-04-27 15:18:00 +00:00
tsutsui 285b0f56d9 Fix warnings #ifdef DEBUG case. 2008-04-27 14:44:25 +00:00
tsutsui c070e2d90e - use mutex(9) for uvm_kernel_object
- fix warnings in #ifdef DEBUG
2008-04-27 14:44:04 +00:00
tsutsui 7fbd55774a Use mutex(9) for uvm_kernel_object. From Greg Oster. 2008-04-27 12:34:54 +00:00
ad 27168d9d58 - Rename crit_enter/crit_exit to kpreempt_disable/kpreempt_enable.
DragonflyBSD uses the crit names for something quite different.
- Add a kpreempt_disabled function for diagnostic assertions.
- Add inline versions of kpreempt_enable/kpreempt_disable for primitives.
- Make some more changes for preemption safety to the x86 pmap.
2008-04-27 11:37:48 +00:00
ad e33af2987c +lcr2 2008-04-27 11:25:27 +00:00
tsutsui 377c9d4dfd Remove obsolete (commented out) options SHMMAXPGS. 2008-04-27 06:26:04 +00:00
tsutsui 03326f4ad8 Shrink ramdisk to 500k again.
The crunched binary with optimized libraries fits it.
2008-04-27 05:59:47 +00:00
isaki b17ff44212 Make it compile without zstty. 2008-04-27 05:10:33 +00:00
tsutsui 05e60fd761 Remove local -fno-strict-aliasing hack.
sys/conf/Makefile.kern.inc has it for gcc4.
2008-04-27 03:23:13 +00:00
darcy 0669406131 Add a little more detail when verbosity is requested. 2008-04-26 15:13:00 +00:00
drochner a4edd0fe73 try to update for OHCI device/softc split, untested
(I've asked for testing on Apr 3, w/o success.)
2008-04-26 14:57:44 +00:00
tsutsui 9188a0e30d Shrink install kernels a bit. 2008-04-26 03:08:59 +00:00
tsutsui 080dee1d75 Remove obsolete options SHMMAXPGS. 2008-04-26 02:43:07 +00:00