Commit graph

50620 commits

Author SHA1 Message Date
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
Sir Richard 08e91a3df6 [NTOS]: Implement VAD-based Virtual Memory Management. MEMORY_AREA_VIRTUAL_MEMORY is gone. Tested for 3 days with various experiments and handled all the cases and issues that appeared. Some code paths are not implemented because they were not encountered. Will consider implementing them if anything breaks -- note however that those code paths were not handled in RosMM either, so no new regressions are expected.
Hoping this will work on other configurations other than just my test virtual machine. If so, it is a big day in Mm history. Only sections and cache still use the old Mm functionality. I -will- revert this if all hell breaks loose.

svn path=/trunk/; revision=55977
2012-03-03 22:34:35 +00:00
Cameron Gutman 297eb4a462 [USBCCGP]
- Implement support for getting string descriptors (may need more work)
- USB mass storage devices which are part of a composite device now initialize

svn path=/trunk/; revision=55976
2012-03-03 21:23:04 +00:00
Hervé Poussineau 3e4f41c5e9 ntoskrnl: fix pointer dereference before testing for it
svn path=/trunk/; revision=55975
2012-03-03 21:11:42 +00:00
Timo Kreuzer f99547ad97 [PSDK] Add missing definitions to wingdi.h
[WIN32K] Fix MSVC warnings

svn path=/trunk/; revision=55974
2012-03-03 20:57:42 +00:00
Hervé Poussineau b541b98d59 freeldr/pxe: remove some traces
svn path=/trunk/; revision=55973
2012-03-03 20:57:17 +00:00
Hervé Poussineau 22f20d79fc Revert most of r53392 effects.
When IoReportDetectedDevice() creates a PDO, the PDO is in no way related to the DriverObject given to the function.
Driver calling IoReportDetectedDevice() should then ensure that it attachs a FDO on top of this PDO.

svn path=/trunk/; revision=55972
2012-03-03 20:39:51 +00:00
Cameron Gutman 85f9f9e518 [LIBUSB]
- Don't assert that the clear stall will complete successfully since it may be sent for a removal
- Fixes removal surprise removal of HID devices

svn path=/trunk/; revision=55971
2012-03-03 20:17:29 +00:00
Timo Kreuzer fed10df057 [WIN32K]
- Fix a memory leak in EngUnloadImage
- add an ASSERT

svn path=/trunk/; revision=55970
2012-03-03 20:00:51 +00:00
Kamil Hornicek 40a8a3c833 [TRANSLATION]
Dll/cpl UTF-8 conversion patch by Elton Chung.
See issue #6333 for more details.

svn path=/trunk/; revision=55969
2012-03-03 19:29:06 +00:00
Johannes Anderwald 487dd93eed [USBCCGP]
- Handle IRP_MN_QUERY_INTERFACE

svn path=/trunk/; revision=55968
2012-03-03 18:37:23 +00:00
Johannes Anderwald cc99088ec9 [LIBUSB]
- Fix infinite loop

svn path=/trunk/; revision=55967
2012-03-03 15:16:43 +00:00
Johannes Anderwald 530db30b69 [USBCCG]
- Remove hacks
- Include alternate interface descriptors in the configuration descriptor

svn path=/trunk/; revision=55966
2012-03-03 15:08:28 +00:00
Johannes Anderwald 13daf0dd8a [USBD]
- Rewrite broken USBD_CreateConfigurationRequestEx
- It did not calculate the required urb size correctly 
- It did not store the correct number of provided interfaces
- Length of each interface information was wrong

svn path=/trunk/; revision=55965
2012-03-03 14:41:12 +00:00
Johannes Anderwald ccdeb596e1 [USBHUB]
- Handle retrieving string descriptors failure

svn path=/trunk/; revision=55964
2012-03-03 11:38:37 +00:00
Cameron Gutman 6a0de53856 - Enable debugging for testbot
svn path=/trunk/; revision=55963
2012-03-02 20:49:53 +00:00
Johannes Anderwald 3436355fe0 [NDK]
- Add missing definitions

svn path=/trunk/; revision=55962
2012-03-02 20:08:51 +00:00
Johannes Anderwald a3a80c53a9 [USBUHCI]
- Load USBUHCI during 1st stage setup

svn path=/trunk/; revision=55961
2012-03-02 18:30:46 +00:00
Johannes Anderwald 9c2012dd56 [USBEHCI]
- Check if allocation of queue heads failed
- Implement removing of completed queue head

svn path=/trunk/; revision=55960
2012-03-02 18:26:08 +00:00
Cameron Gutman ae6b312494 [USBUHCI]
- Enable usbuhci for testing
[USBOHCI]
- Add back getting port count in a loop to work around AMD chipset errata

svn path=/trunk/; revision=55959
2012-03-02 18:02:50 +00:00
Cameron Gutman 29571a7f78 [STORAGE]
- Experimental change to try to increase real hardware compatibility
- Load both atapi and uniata and allow atapi to have priority and uniata will pick up devices that atapi doesn't like
- Fix a bug in uniata enumeration

svn path=/trunk/; revision=55958
2012-03-02 17:19:04 +00:00
Johannes Anderwald c0d2920f33 [USBEHCI]
- Partly implement support for interrupt transfers, WIP, untested

svn path=/trunk/; revision=55957
2012-03-02 14:21:44 +00:00
Dmitry Gorbachev b5f0b7ae64 [Disk_new]
Silence GCC 4.6 array bounds warning/error.

svn path=/trunk/; revision=55956
2012-03-01 21:43:23 +00:00
Christoph von Wittich 6e9f60e050 [cmake]
this should work according to Amine

svn path=/trunk/; revision=55955
2012-03-01 21:00:22 +00:00
Christoph von Wittich 3e1d7c333e [cmake]
-it looks like IF(${CMAKE_SYSTEM_NAME} MATCHES "Windows") return TRUE on MacOS/Linux when cross compiling
-file(TO_NATIVE_PATH) is broken as well
...
next try


svn path=/trunk/; revision=55954
2012-03-01 20:29:18 +00:00
Christoph von Wittich c1f93e68a9 [cmake]
fix for the fix
thanks Alex for testing

this should reduce testman log size by at least 500KB

svn path=/trunk/; revision=55953
2012-03-01 19:43:00 +00:00
Christoph von Wittich 4beba5d550 [cmake]
fix for unix/linux

svn path=/trunk/; revision=55952
2012-03-01 19:09:07 +00:00
Kamil Hornicek e5df8b4d9d [WINED3D|DDRAW|D3D8|D3D9]
Sync to Wine 1.3.37.

svn path=/trunk/; revision=55951
2012-03-01 18:39:47 +00:00
Christoph von Wittich 4d85ddbba8 [cmake]
reduce debug spam (only tested on windows)

svn path=/trunk/; revision=55950
2012-03-01 18:38:22 +00:00
Cameron Gutman 9c50c787b4 [USBOHCI]
- Add a OHCI reset hack based on Linux code

svn path=/trunk/; revision=55948
2012-03-01 18:05:59 +00:00
Timo Kreuzer 51220b9ed1 [NTOSKRNL]
Remove the broken ASSERT once again. Sigh...

svn path=/trunk/; revision=55947
2012-03-01 18:03:08 +00:00
Giannis Adamopoulos 22a4a0901f [freeldr]
- Implement enabling extended debug output in freeldr without the need to recompile it. Add an option in the f8 menu that allows the user to specify which debug channels and levels will be enabled.

svn path=/trunk/; revision=55946
2012-03-01 16:32:00 +00:00
Johannes Anderwald 3735fcc5cd [LIBUSB]
- Check the device descriptor is valid
- Implement function to return max packet size

svn path=/trunk/; revision=55945
2012-03-01 15:51:59 +00:00
Timo Kreuzer f8a832a4ea Party revert r55722: "[CSRSRV]: Some misc cleanup of dead code. No functional change.", which caused MSVC builds to hang on 2nd stage
svn path=/trunk/; revision=55943
2012-03-01 14:17:23 +00:00
Johannes Anderwald d431e272f8 [USBLIB]
- Split retrieving the full configuration descriptor into 2 steps
- Fixes errors while initializing usb devices on UHCI controller
- Tested in VmWare / VBox and real hardware

svn path=/trunk/; revision=55942
2012-03-01 14:16:33 +00:00
Johannes Anderwald 348d7d4625 [USBHUB]
- Remove broken assert

svn path=/trunk/; revision=55941
2012-03-01 14:13:21 +00:00
Johannes Anderwald 1de7f626b6 [USBUHCI]
- Fix usblib regression

svn path=/trunk/; revision=55940
2012-03-01 12:49:20 +00:00
Kamil Hornicek e1a1d2a0d6 [TRANSLATION]
Missed this one in r55891.

svn path=/trunk/; revision=55939
2012-03-01 11:30:51 +00:00
Sir Richard 64d3af216f [NTOS]: A few other fixups to the page fault path:
1) Assert on empty kernel PTE instead of handling it as a bugcheck. Windows ASSERTs too. Also clarify some ASSERTs which Windows also does versus ASSERTs we are only doing due to lack of support for said feature.
2) User page fault path can now distinguish between a user-mode PTE fault, and a kernel-mode fault on a user PDE, both by creating a correct kernel PDE when needed instead of always creating user PTEs, as well as by only touching the UsedPageTableEntry reference counting mechanism when a user-address is in play.
3) Related to #2, also recognize when the faulting PTE is actually a PDE in the self-mapping region -- another scenario when the "user fault" is actually a kernel fault for a user PDE.
4) Add one more path where a Paged Pool PDE fixup can save the day instead of always faulting.
5) Finally, related to #2 and #3, handle the MI_IS_PAGE_TABLE_OR_HYPER_ADDRESS scenario for a User PDE by treating it as a user fault. The code looks deceptively similar but there are slight differences which require the separate codepaths with some duplicated code. The magic is in the ordering.
In trunk, these changes should not cause any regressions (let's hope so). On the internal VAD-based Virtual Memory branch, they now allow booting to 3rd stage and a fully usable ReactOS environment. MEMORY_AREA_VIRTUAL_MEMORY is gone on that branch. It's coming.
[NTOS]: Use PAGE_READWRITE as hardcoded protection instead of PAGE_EXECUTE_READWRITE -- the difference is meaningless on ReactOS Mm but actually causes issues on ARM3 with VADs.

svn path=/trunk/; revision=55938
2012-02-29 23:11:21 +00:00
Kamil Hornicek 536a78293d [BOOTDATA]
reactos.dff was superseded by reactos.dff.in

svn path=/trunk/; revision=55937
2012-02-29 20:43:23 +00:00
Pierre Schweitzer 3f3e67e418 [NTOSKRNL]
Implement FsRtlNotifyFilterChangeDirectory

svn path=/trunk/; revision=55936
2012-02-29 20:11:51 +00:00
Pierre Schweitzer a7644056d7 [NTOSKRNL]
Forgot to commit that file

svn path=/trunk/; revision=55935
2012-02-29 20:03:46 +00:00
Pierre Schweitzer 7e1f7945ed [NTOSKRNL]
Stub FsRtlCancelNotify
Implement FsRtlCheckNotifyForDelete, FsRtlNotifyCompleteIrp, FsRtlNotifyCompleteIrpList, FsRtlNotifySetCancelRoutine

svn path=/trunk/; revision=55934
2012-02-29 20:01:21 +00:00
Cameron Gutman 04177d9d19 [ROSAUTOTEST]
- Flush file buffers after writing to the crash recovery journal

svn path=/trunk/; revision=55933
2012-02-29 19:44:44 +00:00
Pierre Schweitzer 9624a85234 [NTOSKRNL]
Fix a bug in FsRtlNotifyCleanup: only remove notification from list when we're about to complete it.

svn path=/trunk/; revision=55932
2012-02-29 19:43:35 +00:00
Pierre Schweitzer 4c30c5549a [NTOSKRNL]
Fix formatting, no code change

svn path=/trunk/; revision=55931
2012-02-29 19:29:03 +00:00
Pierre Schweitzer 256540b703 [NTOSKRNL]
Use LIST_ENTRY not pointer on them as head

svn path=/trunk/; revision=55930
2012-02-29 19:26:43 +00:00
Pierre Schweitzer 171a3edfaa [NTOSKRNL]
Get rid off TAG macro

svn path=/trunk/; revision=55929
2012-02-29 19:12:59 +00:00
Cameron Gutman bc96c38875 [USBEHCI]
- Add back the m_PortResetInProgress hack for broken vbox behavior

svn path=/trunk/; revision=55928
2012-02-29 19:05:16 +00:00
Johannes Anderwald 82d9d774ca [USBHUB]
- Check if FDO is root hub fdo
- Partly implement fdo hub initialization
- Implement IOCTL_INTERNAL_USB_GET_DEVICE_HANDLE, IOCTL_INTERNAL_USB_GET_ROOTHUB_PDO

svn path=/trunk/; revision=55927
2012-02-29 18:51:07 +00:00