mirror of
https://github.com/reactos/reactos.git
synced 2024-07-11 15:15:27 +00:00
![]() - Add simple and hacky spinlock implementation to HAL and kernel. It treats queued spinlocks as normal spinlocks and does not support debug timeout, but works well enough to expose bugs in spinlock usage. - Implement KiProcessDeferredReadyList, a simple wrapper around KiDeferredReadyThread. - Add missing PRCB locking in KiDeferredReadyThread. - Implement SMP handling in KiRetireDpcList. - Acquire the spinlock in KeSynchronizeExecution for SMP. - Stub and export Kii386SpinOnSpinLock -- not used yet. - Fix locking in KiAcquire/ReleaseDispatcherLockAtDpcLevel -- KeAcquireQueuedSpinLockAtDpcLevel takes the lock queue pointer, not the index. - "Implement" KiRundownThread for SMP. - Fix some sanity checks in the SMP context switch code and implement a stubbed SMP case. - Define SYNCH_LEVEL in asm.h and use it in HAL's KeRaiseIrqlToSynchLevel. To try the MP kernel on UP (it does not work on multiple processors yet) compile ntkrnlmp, rename it to ntoskrnl and add it to your installation. This requires a HAL with CONFIG_SMP enabled in HAL's spinlock.c and irq.S. Booting with the MP kernel does not work because of a weird regression introduced sometime in the last few months -- it appears MmProbeAndLockPages fails for a user mode stack pointer (no, I have no idea why). svn path=/trunk/; revision=43244 |
||
---|---|---|
irc | ||
reactos | ||
rosapps | ||
rostests | ||
wallpaper |