Fix some problems with the lock implementation
- Add a 'generation' to the lock IRPs so we know if we've reprocessed them on any
specific turn when we unlock something else.
- Simplify coalescing of lock regions to just rebuilding the region by going through
the shared lock list and expanding a new region with any overlaps.
- Simplify coalescing new shared locks into larger regions in the same manner.
svn path=/trunk/; revision=56953
- Keep a reference count for FCBs to prevent race conditions when closing multiple handles to the same pipe concurrently
- Acquire the pipe list lock in NpfsQueryDirectory to guard against concurrent deletion of pipes
See issue #7205 for more details.
svn path=/trunk/; revision=56950
- Ensure that account names are not in use when a new alias, group or user is created. Return a proper status code if the account name is alread in use.
- Initialize logon/password related data for new user account objects.
- Add missing prototypes and user account control bits to ntsam.h
svn path=/trunk/; revision=56936
Add support for MSVC ARM
Configuration script works as usual from VS 11 ARM command prompt, host tools is configured for x86 and must be compiled from a VS x86 command prompt.
svn path=/trunk/; revision=56935
- Handle transferring buffer to user mode in WH_CALLWNDPROC(RET) hooks if lParam is a pointer.
This fixes the gallium3d opengl ICD, so newest VMWare opengl Driver should now work.
Please TEST!
svn path=/trunk/; revision=56931
[NTOSKRNL]: Cleanup the page fault handler to help with debugging, fix a few bugs and missing perf counters. There's a lot of cut corners that need some love, will be slowly adding more asserts/sanity code to make sure things are working right.
svn path=/trunk/; revision=56926
Check if the name of a new account (alias, group or user) is used before the account is created. This check is needed because account names must be unique.
svn path=/trunk/; revision=56917
* Leverage the object library option provided by CMake 2.8.8+ which will speed up the build even further.
* Compared strings using STREQUAL.
* These wrapping conditions will go away as soon as we ship the new BE.
svn path=/trunk/; revision=56909
- Fix a regression from r56863. New logic is: the requested data size is sizeof(ULONG), so if the result read is less than that - continue to the next slot. Thanks to SomeGuy for pointing out the problem.
See issue #7147 for more details.
svn path=/trunk/; revision=56907
[NTOSKRNL]: Implement MmMapViewOInSessionSpace, MmUnmapViewInSessionSpace. Win32k needs to use these to we can test them.
svn path=/trunk/; revision=56906