Alex Ionescu 9f32108192 - Optimize locking so that the Wake Lock is only entered after a first attempt determines the timer is a wake timer.
After the lock, a second check is done to make sure. However, since the first check will fail 99% of times, we will
  not acquire/release a spinlock, and thus decrease contention.
- Fix Object Type Initializer to actually use ExpTimerDelete when the object is deleted.
- Fix Initializer to report correct memory usage of timer object.
- Fix Initializer to report OBJ_OPENLINK as an invalid attribute for timer objects.
- Use correct access masks when modifying or querying timer objects.
- Handle wake timers in NtCancelTimer.
- Return warning NTSTATUS code if a wake timer is requested but not supported by the system (default on ROS).
- Check for valid timer type in NtCreateTimer.
- Check for valid period in NtSetTimer.
- Don't dereference the timer in NtSetTimer three times.
- Return the correct Due Time in NtQueryTimer by substracting the stable interrupt time.
- Harmonize formatting, fix some comments.

svn path=/trunk/; revision=17057
2005-08-05 06:53:56 +00:00
2005-08-02 16:13:02 +00:00
2004-02-06 08:21:52 +00:00
2005-03-16 23:51:26 +00:00
2005-03-08 22:41:27 +00:00
2005-05-02 14:15:56 +00:00
S
Description
A free Windows-compatible Operating System
528 MiB
Languages
C 86.9%
C++ 10.7%
Python 0.7%
Assembly 0.5%
CMake 0.5%
Other 0.4%