A free Windows-compatible Operating System - mirrored from GitHub
Go to file
Stefan Ginsberg 9fdf04b17c ReactOS SMP Bringup Lite:
- 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
2009-09-30 20:30:57 +00:00
irc Give Techbot the ability to check for and ghost existing bots, then rename itself 2008-08-10 13:06:58 +00:00
reactos ReactOS SMP Bringup Lite: 2009-09-30 20:30:57 +00:00
rosapps - Goodbye __USE_W32API 2009-09-30 13:32:05 +00:00
rostests - Good bye __USE_W32API, _DISABLE_TIDENTS 2009-09-30 13:31:50 +00:00
wallpaper Rename the wallpaper to conform with ISO 9660:1988 and make cdmake happy... 2009-02-03 13:26:30 +00:00