Commit graph

50619 commits

Author SHA1 Message Date
Stefan Ginsberg 5219e590b0 [NTOS]
- Fix handling of command strings in KdpTrap.

svn path=/trunk/; revision=56034
2012-03-05 14:52:03 +00:00
Cameron Gutman b244ec1114 [USBSTOR]
- Deny removal to fix a race with the legacy disk class driver

svn path=/trunk/; revision=56033
2012-03-05 14:42:05 +00:00
Stefan Ginsberg 9816f534ee [PSDK]
- Update DBGKD_MAJOR_TYPES. Dedicated to Alex ;)

svn path=/trunk/; revision=56031
2012-03-05 13:02:21 +00:00
Stefan Ginsberg bb50e00be0 [XDK]
- Forgot this one in 55840

svn path=/trunk/; revision=56029
2012-03-05 12:57:08 +00:00
Stefan Ginsberg 549d8709b3 [FREELDR]
- Give freeldr its own RtlAssert to avoid linking to the one in rtl. Makes it possible to use the DbgPrompt version (currently #if 0-ed) of RtlAssert in ntdll/ntos without breaking freeldr linking.

svn path=/trunk/; revision=56028
2012-03-05 12:50:08 +00:00
Kamil Hornicek caefd349c5 [TRANSLATION]
- Follow-up to r55891.
- Resource cleanup.

svn path=/trunk/; revision=56027
2012-03-05 11:13:13 +00:00
Art Yerkes d9d0e1ad2a [FSRTL]
Fix my lock implementation to a degree.
- Have a single list associated with the CSQ.
- Remove some confusion from when the lock information was a
generic table.
- Make the compare function not be confused by attempts to
give strange offsets and lengths.
- Make the uninitialize function complete all lock requests
as specified.
- Remove my unneeded attempt to shoehorn in an eresource.

svn path=/trunk/; revision=56026
2012-03-05 09:49:06 +00:00
Art Yerkes bd9aa57445 [NEWCC]
Use the same method pagefile.c does to read in a page without mapping it.

svn path=/trunk/; revision=56025
2012-03-05 04:34:06 +00:00
Art Yerkes 4d698f45aa [NEWCC]
Fix paging out.
- We know we're in a wait entry in the section.  What we really want to know
is if it's safe to evict this address space when withdrawing the mappings.
- We don't want to corrupt our wait entry in the section page table to keep
accumulating dirty state into the page out process until it's time to finally
evict.

svn path=/trunk/; revision=56024
2012-03-05 02:20:22 +00:00
Art Yerkes 1490d48263 [NEWCC]
Prevent us from recording an impossible dirty swap entry in the section page table.

svn path=/trunk/; revision=56023
2012-03-05 01:52:47 +00:00
Cameron Gutman ea50be62a0 [NEWCC]
- Add missing wait entry handling

svn path=/trunk/; revision=56022
2012-03-04 23:45:16 +00:00
Pierre Schweitzer 3f0a38fdc9 [RAMDISK]
Implement RamdiskRemoveBusDevice.
Stubplement RamdiskDeleteDiskDevice.
Use them in RamdiskPnp.

svn path=/trunk/; revision=56021
2012-03-04 23:08:33 +00:00
Cameron Gutman c257a48ec6 [NTOSKRNL]
- Kill this straggler from last commit

svn path=/trunk/; revision=56020
2012-03-04 22:45:46 +00:00
Jérôme Gardou 24b9fc3fe0 [NTOSKRNL/MM]
- do not initialize idle process address space lock twice

svn path=/trunk/; revision=56019
2012-03-04 22:39:15 +00:00
Cameron Gutman 50e1500799 [NTOSKRNL]
- Consolidate most of the PDE reference counting code into the arch-specific RosMm folder where it belongs

svn path=/trunk/; revision=56018
2012-03-04 22:31:30 +00:00
Rafal Harabien 41364b7c5a [EXPLORER-NEW]
- Add more items to taskbar popup menu. Patch by Edijs Kolesnikovičs <terminedijs at yahoo dot com>
See issue #6242 for more details.

svn path=/trunk/; revision=56017
2012-03-04 22:07:27 +00:00
Pierre Schweitzer 8fdf9b6765 [RAMDISK]
Implement RamdiskScsi, RamdiskSystemControl, RamdiskPower

svn path=/trunk/; revision=56016
2012-03-04 21:42:16 +00:00
Cameron Gutman 4350714766 [NEWCC]
- Turn off a bit more debugging so NewCC is largely quiet unless there's a problem

svn path=/trunk/; revision=56015
2012-03-04 21:36:34 +00:00
Cameron Gutman 28a5fcc313 [NTOSKRNL]
- Fix a major bug in the failure path of IoCreateDevice that would cause corruption of kernel memory if IopCreateVpb failed

svn path=/trunk/; revision=56014
2012-03-04 21:18:01 +00:00
Rafal Harabien f8ada9b34d [SHELL32]
- Fix folder properties dialog. Patch by Edijs Kolesnikovičs <terminedijs at yahoo dot com>
See issue #6832 for more details.

svn path=/trunk/; revision=56013
2012-03-04 20:58:37 +00:00
Jérôme Gardou 5b9d2a760e [NTOSKRNL/MM]
- initialize VmWorkingSet pointer for system process.
Should fix random crashes when paging out.

svn path=/trunk/; revision=56012
2012-03-04 20:30:42 +00:00
Rafal Harabien 8a1d72a7cd [SHELL32]
- Improve shortcut properties dialog. Patch by Edijs Kolesnikovičs <terminedijs at yahoo dot com>
See issue #6848 for more details.

svn path=/trunk/; revision=56011
2012-03-04 20:28:29 +00:00
Sir Richard 61dab06b71 [NTOS]: For debugging only, want to see what is excercising MmAllocatePagesForMdl. The way I wrote this seems broken, but I can't find anything to test it with.
svn path=/trunk/; revision=56010
2012-03-04 19:51:22 +00:00
Pierre Schweitzer 4f16fa360c [RAMDISK]
Implement RamdiskFlushBuffers, RamdiskUnload

svn path=/trunk/; revision=56009
2012-03-04 19:48:09 +00:00
Kamil Hornicek b9862648ef [WIN32K]
Take the "unsignedness" of the index into account.

svn path=/trunk/; revision=56007
2012-03-04 19:20:25 +00:00
Pierre Schweitzer 300da180c0 [RAMDISK]
Implement RamdiskSetPartitionInfo and make use of it
Also use RamdiskGetPartitionInfo in RamdiskWorkerThread

svn path=/trunk/; revision=56002
2012-03-04 18:32:07 +00:00
Jérôme Gardou 75e0ec3feb [NTOSKRNL]
- fix code assuming System process pointer is never NULL, which is the case when we're creating it.

svn path=/trunk/; revision=56001
2012-03-04 17:57:44 +00:00
Sir Richard 645e6a793a [MEGAPERF]: This build introduces the following performance boosts:
- Using a dead stack lookaside list for up to 5 dead kernel thread stacks. 1500% improvement when rapidly destroying/creating threads, such as during second stage setup and many winetests.
- Using a free pool page lookaside list for up to 12 free non-paged or paged pool pages. 800% improvement when allocating big pages from the pool, as well as during pool expansion.
- Using a bucketized per-processor and local list (in the KPRCB) for block sizes between 1 and 32 bytes. 1000% improvement when rapidly allocating/freeing small pool allocations, and 8x reduction in pool fragmentation.

svn path=/trunk/; revision=56000
2012-03-04 17:56:00 +00:00
Sir Richard 6c3e9221be [NTOS]: Drop a reference count to the page table in MiDeleteSystemPageableVm as ARM3 now owns PDEs. This helps out yet again to free a little bit of extra RAM up.
svn path=/trunk/; revision=55999
2012-03-04 17:42:56 +00:00
Timo Kreuzer e3e2689cbf [GENDIB]
- Generate ansi style indentation
- Fix signed/unsigned MSVC warnings in generated code

svn path=/trunk/; revision=55998
2012-03-04 13:33:07 +00:00
Timo Kreuzer 10dabf2876 [GENDIB]
Fix formatting

svn path=/trunk/; revision=55997
2012-03-04 13:06:02 +00:00
Pierre Schweitzer d2e6e7b9d0 [NTOSKRNL]
Comment out two overzealous ASSERTs

svn path=/trunk/; revision=55996
2012-03-04 12:52:02 +00:00
Timo Kreuzer 354085c7e8 [WIN32K]
Fix build 2

svn path=/trunk/; revision=55995
2012-03-04 12:01:59 +00:00
Timo Kreuzer 3159c6f62f [WIN32K]
Fix build

svn path=/trunk/; revision=55994
2012-03-04 11:43:08 +00:00
Timo Kreuzer a508886eb0 [WIN32K]
- Fix a possible integer overflow in NtGdiCreateBitmap
- Don't cast length of LARGE_STRING (ULONG) to USHORT, instead truncate to MAXUSHORT. This is still hacky, but better than before.
- Fix MSVC warnings

svn path=/trunk/; revision=55993
2012-03-04 11:32:43 +00:00
Johannes Anderwald a5bdcfa727 [LIBUSB]
- Fix bug while scanning endpoint descriptors
- Do not assume interface info has the correct number of pipes set
- Fix alternate interface handling
- Tested in VBox + USB Audio Device

svn path=/trunk/; revision=55992
2012-03-04 11:07:13 +00:00
Sir Richard 9bb1ba5ee4 [NTOS]: If the address space is exhausted, don't ASSERT, simply return failure just as Windows does. Should fix the last of the ASSERTions on TestBot.
Next step is to support VirtualProtect/Query correctly.

svn path=/trunk/; revision=55991
2012-03-04 07:04:42 +00:00
Sir Richard 83a2328786 [NTOS]: Blimey this was a hard one. When using the reserved flag to request 1MB in a new process (which is used for starting SMSS and CSRSS), we must request 1MB - 256 bytes (or any number, actually) to offset the fact that with a base address of 0x4, a 1MB region gets us at 0x100FFF, and not 0xFFFF, because Windows computes ending address *before* alignment, and then returns a new region size for you (so if you pass in 1MB, you get 1MB + 4096KB). In Win32csr, when the code is trying to release 1MB, this ended up in our "Case A", because it would still leave a page in the VAD. Fixed rtl to request just shy off a MB. Verified on Windows as well.
[NTOS]: The fix above was due to fixing "EndingAddress" which was being initialized to zero too late (after writing to it!). This caused allocations with a fixed base address that were already on top of another allocation not to be seen as a conflict, then we tried inserting a VAD and received an ASSERT saying we've already found a VAD there. After fixing the sizing code, the bug above creeped up.
Whoever wrote the NtFreeVirtualMemory test is a godsend. It has been nailing bug after bug in the VAD implementation. Thank you.

svn path=/trunk/; revision=55990
2012-03-04 06:42:49 +00:00
Johannes Anderwald acb68dc20d [KS]
- Fix property item merge in KsMergeAutomationTable

 

svn path=/trunk/; revision=55989
2012-03-04 04:44:48 +00:00
Sir Richard 4411be35e7 [NTOS]: Release the *right* lock. "Fix the fix" as the yuppies say.
svn path=/trunk/; revision=55988
2012-03-04 03:18:47 +00:00
Alex Ionescu 26b48236fb [WIN32K]: Should fix usb/livecd failure reported by igorko. bug 6696..or something?
svn path=/trunk/; revision=55987
2012-03-04 03:06:20 +00:00
Alex Ionescu a604834220 [SMSS]: No longer fail on invalid known DLL checksum until I can fix the loader API.
svn path=/trunk/; revision=55986
2012-03-04 03:00:01 +00:00
Sir Richard 4c07bf2fcd [NTOS]: Don't keep the address space locked when failing in NtFreeVirtualMemory. Dang this testbot is good at catching those bugs.
svn path=/trunk/; revision=55985
2012-03-04 02:56:16 +00:00
Johannes Anderwald 0e20c445f1 [KS]
- Handle custom sized nodes

svn path=/trunk/; revision=55984
2012-03-04 02:39:37 +00:00
Johannes Anderwald 0b301f3da8 [USBHUB]
- Implement retrieving USB_BUS_INTERFACE_USBDI_GUID interface
[KS]
- Add PnP hack for IoSetDeviceInterfaceState

svn path=/trunk/; revision=55983
2012-03-04 02:17:13 +00:00
Sir Richard 9732b09bc6 [NTOS]: Delete anonmem.c and move the ARM3-compatible code to ARM3/virtual.c. Whatever remained is for sections only, so move it to mm/section.c
[NTOS]: Fix some broken assertions in NtFreeVirtualMemory. Lesson: Do not try to "optimize" Microsoft's ASSERTs.

svn path=/trunk/; revision=55982
2012-03-04 02:03:46 +00:00
Sir Richard 2d534ce868 [RTL]: Sorry, forgot this critical part of the VAD commit.
svn path=/trunk/; revision=55981
2012-03-04 00:47:20 +00:00
Cameron Gutman 79dd33a566 [UNIATA]
- Try to fix KVM testbot

svn path=/trunk/; revision=55980
2012-03-03 23:13:21 +00:00
Cameron Gutman 2b71ec3e05 [USETUP]
- Turn off debugging
- Fix the checkpoint print so it doesn't happen anytime a usetup progress bar reaches 50%

svn path=/trunk/; revision=55979
2012-03-03 23:04:10 +00:00
Cameron Gutman 6b93fbc2de [STORAGE]
- Back by popular demand, the storage driver to end all storage drivers, uniata!
- I had forgotten how many issues atapi had itself and the hardware compatibility improvement (if there was one) was offset by lack of features

svn path=/trunk/; revision=55978
2012-03-03 22:46:04 +00:00