Commit graph

37252 commits

Author SHA1 Message Date
Christoph von Wittich 5a526879a4 tabs -> spaces
use more consistent indentation

svn path=/trunk/; revision=41635
2009-06-27 07:38:02 +00:00
ReactOS Portable Systems Group fdf4fe9afa - Allocate enough space for the ARM3 PFN database, and fixup the calculation of the initial nonpaged pool.
- The ARM3 PFN database is more of a "shadow" database not to interfere with the real ReactOS PFN database. It starts at 0xB0000000, which is where the initial nonpaged pool started (which now starts somewhere after the ARM3 PFN database).
- No new behavior has been introduced other than additional physical memory consumption for the PFN DB pages, and updated memory layout in the ARM3 world.


svn path=/trunk/; revision=41634
2009-06-27 07:14:52 +00:00
Cameron Gutman 2d20864907 - Use the timeout that the caller gives us if it is nonzero so we don't block forever if nobody wakes us
svn path=/trunk/; revision=41633
2009-06-27 07:03:45 +00:00
Cameron Gutman 9722b61095 - The timeout value passed to tsleep is in milliseconds and so_linger is in seconds so convert to milliseconds
svn path=/trunk/; revision=41632
2009-06-27 06:59:22 +00:00
ReactOS Portable Systems Group 689615967e - Blow away the bottom 2GB of virtual address space in the ARM^3 initializer. Previously this was kind of done with MmUnmapPageTable in MmInit1, but this code (And the function, which had only been used for this purpose, are gone)
- Also set the Page Directory for the system/idle process in a slightly more correct way, instead of depending on the CR3 value. Do this in ARM^3 now, and remove the older code (and the MmGetPageDirectory function, which was only used by this).


svn path=/trunk/; revision=41631
2009-06-27 05:32:53 +00:00
Cameron Gutman dabb3e9f98 - Don't leave the listen IRP in the queue when cancelling the listen request
- Kill all the requests before closing the socket
 - Notify oskittcp when we are cancelling requests so it can properly close the socket

svn path=/trunk/; revision=41630
2009-06-27 03:23:10 +00:00
Cameron Gutman 97d8658da9 - Acquire the cancel spin lock before calling IoSetCancelRoutine
- Remove some extra junk

svn path=/trunk/; revision=41629
2009-06-27 03:14:06 +00:00
ReactOS Portable Systems Group 128aefcd63 - Rewrite MmMapIoSpace and MmUnmapIoSpace to use System PTEs instead.
- Much faster and cleaner (will be even faster when System PTE allocation is optimized).
- Better handling of esoteric caching options, especially relevant for ARM.
  - Handled through the MiPlatformCacheAttributes, which should be defined differently for each platform (TODO).
    - Handles both I/O (device) and RAM physical memory.
- Correct flushing of CPU caches (not a big deal on x86, but matters on ARM).


svn path=/trunk/; revision=41628
2009-06-27 03:03:24 +00:00
ReactOS Portable Systems Group 6e8a0cf662 - ARM3-ify hypermap.c
svn path=/trunk/; revision=41627
2009-06-27 03:00:35 +00:00
ReactOS Portable Systems Group a39c949acf - Implement MiReleaseSystemPtes which is the function to deallocate System PTE allocations.
- We do some minor optimizations to combine chunks if possible after a free, similar to MD Block algorithms in freeldr.c.

svn path=/trunk/; revision=41626
2009-06-27 02:56:58 +00:00
Johannes Anderwald a0803f70c2 - Add STREAM_DEBUG_LEVEL
svn path=/trunk/; revision=41625
2009-06-26 16:30:44 +00:00
Johannes Anderwald 8b461b7616 - Write strmini.h for stream class driver
svn path=/trunk/; revision=41624
2009-06-26 15:51:14 +00:00
Johannes Anderwald af23e9415c - Callback routine expects fdo
- Fix boot

svn path=/trunk/; revision=41623
2009-06-26 14:17:12 +00:00
Johannes Anderwald a74571e0a9 - fix build broken in rev 41621
svn path=/trunk/; revision=41622
2009-06-26 13:08:09 +00:00
Johannes Anderwald 28685db4e4 - Rewrite PcRegisterIoTimeout, PcUnregisterIoTimeout to support more than one PIO_TIMER_ROUTINE per device object
svn path=/trunk/; revision=41621
2009-06-26 12:05:13 +00:00
Aleksey Bragin d6d058ab49 - Implement NtSetThreadExecutionState (in place of what has been committed in r41599 and reverted in 41619).
svn path=/trunk/; revision=41620
2009-06-26 09:39:00 +00:00
Christoph von Wittich c98e73cfce revert 41599
svn path=/trunk/; revision=41619
2009-06-26 07:22:34 +00:00
Christoph von Wittich 4e67d94e81 fix formatting
svn path=/trunk/; revision=41618
2009-06-26 06:34:25 +00:00
James Tabor f69cbf46cc - Fix breakage when in HCBT_CREATEWND callback.
svn path=/trunk/; revision=41617
2009-06-26 02:10:52 +00:00
James Tabor 336fb5e2d6 - Turn off callback for HCBT_CREATEWND.
svn path=/trunk/; revision=41616
2009-06-26 00:30:54 +00:00
James Tabor 576c4e61fe - Fix ATOM check for HCBT_CREATEWND callback.
svn path=/trunk/; revision=41615
2009-06-25 21:00:16 +00:00
James Tabor f1ab1a2cae - Implement HCBT_CREATEWND support. Tested with user32 cross wine tests, still hangs on win test. For Christoph.
svn path=/trunk/; revision=41614
2009-06-25 20:39:32 +00:00
Sylvain Petreolle 8ce3178f05 Add accessibility keys.
svn path=/trunk/; revision=41613
2009-06-25 19:58:12 +00:00
Johannes Anderwald 7480a839ca - revert 41605 as its incorrect
svn path=/trunk/; revision=41612
2009-06-25 18:48:46 +00:00
Christoph von Wittich c1b0f80304 sync shell32 with wine 1.1.24
svn path=/trunk/; revision=41611
2009-06-25 14:39:01 +00:00
Dmitry Gorbachev ff37974bba Remove a hack from NtAccessCheck(). Bug #4169.
svn path=/trunk/; revision=41610
2009-06-25 13:29:58 +00:00
KJK::Hyperion d53c35b02b No reason to compile PSEH2 with other compilers than GCC
svn path=/trunk/; revision=41607
2009-06-25 10:27:57 +00:00
Johannes Anderwald f760f8c906 - Don't modify access status when function fails
- reduces advapi32_winetest security failures by 3

svn path=/trunk/; revision=41605
2009-06-25 07:16:26 +00:00
Timo Kreuzer 68ccd5f6e4 Rewrite (NtUser)SystemParametersInfo and related.
- Instead of getting the data from the window station and other strange places, the values are now mostly stored in a global variable. This is possible because NtUserSystemParametersInfo should fail anyway when being called from a non-interactive windowstation (tested on windows XP).
- WM_SETTINGCHANGE is now properly sent not posted to all toplevel Windows also passing the registry string as the lParam value (strings could need some testing).
- SystemMetrics are now set and updated from system parameters.
- Most values are now properly loaded from registry and also saved.
- user32_winetest sysparams: before: 634 executed / 235 failures, after: 1093 executed, 11 failures
- Fixes the non-bold caption font in 2nd stage.
- Implements a number SPI codes.
- Implements helper functions for registry and file access
Thanks to all testers for all the regression testing :)


See issue #4595 for more details.

svn path=/trunk/; revision=41604
2009-06-25 02:43:38 +00:00
Dmitry Gorbachev 8101b8e12f Hack: partially undo r38510 changes to overcome regression (bug #4169).
svn path=/trunk/; revision=41603
2009-06-24 22:23:29 +00:00
Christoph von Wittich 1ef5fa35af fix typo
svn path=/trunk/; revision=41602
2009-06-24 22:12:48 +00:00
Christoph von Wittich d01aa9d736 fix formatting
svn path=/trunk/; revision=41601
2009-06-24 22:07:50 +00:00
Cameron Gutman 5d33bdc236 - Fix a crash that happens when we are running at APC_LEVEL, acquire the recursive mutex (which improperly handled APC_LEVEL), then attempt to access paged pool (or do anything else that depends on Irql < DISPATCH_LEVEL)
- Optimize the code for acquiring and releasing the recursive mutex at DISPATCH_LEVEL

svn path=/trunk/; revision=41600
2009-06-24 21:57:48 +00:00
Christoph von Wittich 5206a90897 stub NtSetThreadExecutionState needed by PowerPoint Viewer 2003
svn path=/trunk/; revision=41599
2009-06-24 19:53:54 +00:00
Christoph von Wittich b1dcc588eb fix crash while loading PowerPoint 2003 Viewer
See issue #4624 for more details.

svn path=/trunk/; revision=41598
2009-06-24 19:53:06 +00:00
Stefan Ginsberg de0a0cf543 - Hey Arch, try to learn basic PSEH2 syntax before fuddling around with it.
svn path=/trunk/; revision=41597
2009-06-23 23:06:10 +00:00
Cameron Gutman 5c78f6d219 - Fix the order of checks
svn path=/trunk/; revision=41590
2009-06-23 14:51:50 +00:00
Cameron Gutman d516d6898c - We only need 11 chars to hold our 32-bit integer and the trailing NULL char
- Make sure we don't overread our buffer

svn path=/trunk/; revision=41589
2009-06-23 14:47:48 +00:00
Cameron Gutman 42e13d3260 - Move NDIS_VERSION into ndissys.h and use it for NdisGetVersion also
svn path=/trunk/; revision=41587
2009-06-23 14:09:59 +00:00
Cameron Gutman 39572f4e0d - Fix adapter failure if a network address of invalid length is specified
svn path=/trunk/; revision=41586
2009-06-23 14:00:49 +00:00
Cameron Gutman 8267318b15 - Fix a crash when reading the network address from the registry
- Fixes bug 4634

svn path=/trunk/; revision=41585
2009-06-23 13:58:56 +00:00
Christoph von Wittich d8a2e91f8e sync urlmon with wine 1.1.24
svn path=/trunk/; revision=41584
2009-06-23 13:37:11 +00:00
Cameron Gutman e230289f94 - Fix adapter failure when a network address is not specified in the registry
- As a bonus, it also fixes OID_802_3_PERMANENT_ADDRESS

svn path=/trunk/; revision=41583
2009-06-23 12:41:14 +00:00
Christoph von Wittich 0e7c48671b sync ntdll rtlstr winetest with wine 1.1.24
svn path=/trunk/; revision=41582
2009-06-23 12:02:58 +00:00
Christoph von Wittich aa2eef5de1 sync crypt32_winetest with wine 1.1.24
svn path=/trunk/; revision=41581
2009-06-23 11:47:46 +00:00
Christoph von Wittich 2d5297edef sync kernel32_winetest with wine 1.1.24
svn path=/trunk/; revision=41580
2009-06-23 11:44:23 +00:00
Christoph von Wittich c90eb62d17 sync shlwapi with wine 1.1.24
svn path=/trunk/; revision=41579
2009-06-23 11:24:10 +00:00
ReactOS Portable Systems Group 2c293c30c4 - Reimplement the way zeroing PTEs are used:
- First, switch to using system PTEs as it should've been from the beginning. Our original implementation was broken and prone to race conditions, which Dmitry graciously fixed.
  - We can now remove the MiZeroPageInternal hack that was used as a way to avoid deadlock/contention in the zero paths.
  - Zeroing PTEs is done at DPC level in ReactOS, to avoid ReactOS-specific race issues. In Windows NT, this operation is always done at passive.
  - Zeroing PTEs are similar to hyperspace PTEs, but they can be mapped in chunks for optimization. 
    - ReactOS does not currently make use of this functionality, so zeroing is pretty slow, especially on bootup if you have lots of memory (all RAM is zeroed).
    - The existing ReactOS "compatibility layer" for hyperspace was augmented to seamlessly use the new zeroing PTE API.
  - You must now unmap zeroing PTEs -- MiZeroPage was modified to do this.
  - System PTE binning, NBQUEUES and SLISTS would optimize this further. TBD.
- Once again, tested on the trinity of supported emulators.


svn path=/trunk/; revision=41578
2009-06-23 09:34:45 +00:00
ReactOS Portable Systems Group d11a34b5ed - Jesus Christ man, learn some C, will you?
- Fix boot.
- The lack of colorful poetry is brought to you by cogent human beings on the West Coast whom you should be thankful haven't gone to bed yet.


svn path=/trunk/; revision=41577
2009-06-23 09:23:16 +00:00
ReactOS Portable Systems Group 25941abce1 - So it turns out bad things can happen if you play behind Mm's back.
- The lovely poetry is brought to you by 7AM coding marathons...


svn path=/trunk/; revision=41576
2009-06-23 09:11:01 +00:00