Alex Ionescu [Thu, 5 Jan 2006 16:25:44 +0000 (16:25 +0000)]
- Uncondtionally build with optimizations (can still be disabled by commenting out the block locally; is this easy enough Ge?)
svn path=/trunk/; revision=20581
Alex Ionescu [Thu, 5 Jan 2006 16:24:32 +0000 (16:24 +0000)]
- New ERESOURCE implementation: fixes the return value of some functions (VOID vs NTSTATUS, USHORT vs ULONG), as well as optimized the code loops and general structure of the code. Additionnaly, functions do not simply call other functions with similar names; the exact implementation of each function has now been properly separated (see the DDK for more information on this) to have the most optimized scenarios.
- Also, the spinlock is not actually acquired on non-SMP builds; instead, interrupts are blocked and unblocked for acquire/release, this optimizes locking.
- Added many asserts and bugcheck scenarios.
- Added thread priority boosting.
- Added some debugging helpers and deadlock detection.
- Added RESOURCE_NOT_OWNED bugcehck message.
* Thanks again to Waxdragon (Andrew) for testing this build.
svn path=/trunk/; revision=20580
Alex Ionescu [Thu, 5 Jan 2006 15:32:08 +0000 (15:32 +0000)]
- Change dispatcher lock release to be more like documented in Windows Internals II and to allow an easier move to Queued Spinlock.
svn path=/trunk/; revision=20579
Casper Hornstrup [Thu, 5 Jan 2006 15:29:08 +0000 (15:29 +0000)]
Identify TechBot to allow private messages
svn path=/trunk/; revision=20578
Alex Ionescu [Thu, 5 Jan 2006 15:17:54 +0000 (15:17 +0000)]
- Fix build.
svn path=/trunk/; revision=20577
Alex Ionescu [Thu, 5 Jan 2006 13:59:11 +0000 (13:59 +0000)]
- Disable commented out define-check which i had only commented to check building.
svn path=/trunk/; revision=20576
Alex Ionescu [Thu, 5 Jan 2006 13:51:06 +0000 (13:51 +0000)]
- Separate UP and MP spinlock functions.
- Optimize UP spinlock functions so they don't call ntoskrnl anymore and only raise/lower irql.
- Implemented Queued Spinlocks and In-Stack Queued Spinlocks for UP machines.
* Implemented KeAcquireInStackQueuedSpinLock, KeReleaseInStackQueuedSpinLock, KeAcquireQueuedSpinLock, KeReleaseQueuedSpinLock, KeTryToAcquireQueuedSpinLock, KeTryToAcquireQueuedSpinLockRaiseToSynch, KeAcquireQueuedSpinLockRaisetoSynch.
svn path=/trunk/; revision=20575
Hervé Poussineau [Thu, 5 Jan 2006 13:40:05 +0000 (13:40 +0000)]
Add some exports to ntdll
svn path=/trunk/; revision=20574
Alex Ionescu [Thu, 5 Jan 2006 13:12:48 +0000 (13:12 +0000)]
- Implemented Queued and In-Stack Queued Spinlocks (at DPC-Level). See "Windows Internals II" Chapter 4, Pages 25-27.
svn path=/trunk/; revision=20573
Hartmut Birr [Thu, 5 Jan 2006 12:48:33 +0000 (12:48 +0000)]
KefReleaseSpinLockFromDpcLevel needs the address of a spinlock and not its value.
svn path=/trunk/; revision=20572
Hervé Poussineau [Thu, 5 Jan 2006 12:27:03 +0000 (12:27 +0000)]
Add prototypes for Nt/ZwReplyWaitReceivePortEx, Nt/ZwImpersonateAnonymousToken
svn path=/trunk/; revision=20571
Gé van Geldorp [Thu, 5 Jan 2006 09:22:09 +0000 (09:22 +0000)]
- Disable NtQuerySecurityObject for now
- Add some registry entries for TinyWeb (patch by Dr.Fred)
Fixes 1214
svn path=/trunk/; revision=20570
Alex Ionescu [Thu, 5 Jan 2006 06:24:07 +0000 (06:24 +0000)]
Fix stack corruption. Thanks to Waxdragon and the fact he uses an -O2 build (hint hint nudge nudge)
svn path=/trunk/; revision=20569
Alex Ionescu [Thu, 5 Jan 2006 04:26:55 +0000 (04:26 +0000)]
- Optimized the dispatcher lock. It is now gone on non-SMP systems and IRQL is raised or lowered instead.
- Made inlined functions in ke/wait.c macros, because they weren't being inlined.
- Created separate cases for satisfying mutant, non-mutant and generic objects, to optimize wait satisfaction.
- Fixed some places which werne't setting the dispatcher header's size member correctly.
- Fixed formatting in ke/wait.c
- Fixed a case in KiCheckAlertability: we also need to check if the thread is alerted in Kernel-Mode, even if the wait mode given was user and user-mode is not alerted.
- Fixed signaling checks across the wait code and removed KiCheckIfObjectSignaled. We must not consider the mutant as signaled if SignalState is = 1.
- Fix code to check if the wait blocks' status is STATUS_TIMEOUT, because we do not need to check for signal state in that case.
- Removed the exports for internal dispatcher lock routines.
** Thanks to Waxdragon for stress-testing this for an hour :)
svn path=/trunk/; revision=20568
Magnus Olsen [Thu, 5 Jan 2006 01:49:00 +0000 (01:49 +0000)]
fix new strechblt code for dib32, left todo dib1, dib4, dib24
svn path=/trunk/; revision=20567
Alex Ionescu [Thu, 5 Jan 2006 00:56:44 +0000 (00:56 +0000)]
- fix build on dbg=0. Thanks to Andrew
svn path=/trunk/; revision=20566
Gé van Geldorp [Wed, 4 Jan 2006 23:48:15 +0000 (23:48 +0000)]
Avoid using uninitialized variables
svn path=/trunk/; revision=20565
Gé van Geldorp [Wed, 4 Jan 2006 23:28:10 +0000 (23:28 +0000)]
Only use the Folder class handler if we're actually executing a folder.
Fixes bug 1235.
svn path=/trunk/; revision=20564
Gé van Geldorp [Wed, 4 Jan 2006 22:46:45 +0000 (22:46 +0000)]
Fix (so far harmless) typo
svn path=/trunk/; revision=20563
Gé van Geldorp [Wed, 4 Jan 2006 22:40:48 +0000 (22:40 +0000)]
Let oskit tell us when sending should be blocked 'cause its stuffed upto its
nose with data waiting to be sent. Bug 1232.
svn path=/trunk/; revision=20562
Alex Ionescu [Wed, 4 Jan 2006 20:45:58 +0000 (20:45 +0000)]
- Fix worker thread priorities. A quick check of the DDK and ProcesXP confirmed that there was a bug (thanks GvG!). Turns out I had forgotten to use the -base- priority kernel call. Renamed some variables to make it clearer and fixed the bug. The correct priorities are 12, 13, 15.
svn path=/trunk/; revision=20561
Thomas Bluemel [Wed, 4 Jan 2006 14:26:06 +0000 (14:26 +0000)]
fixed gcc4 warnings
svn path=/trunk/; revision=20560
James Tabor [Wed, 4 Jan 2006 06:44:52 +0000 (06:44 +0000)]
Clean up and fixed NtUserGetMenuItemRect. Needs more testing. I watch mplayerc swip all the menu items with crashing.
svn path=/trunk/; revision=20559
Ged Murphy [Tue, 3 Jan 2006 23:41:57 +0000 (23:41 +0000)]
- Display a temporary note in ipconfig to avoid user confusion.
- Requires fixing of GetAdaptersInfo
svn path=/trunk/; revision=20558
Alex Ionescu [Tue, 3 Jan 2006 23:36:05 +0000 (23:36 +0000)]
- Implement Pushlocks. Only Waking, and Exclusive Acquire/Release + Waits have been tested. The shared paths and block/unblock are still untested and may probably contain bugs. Pushlocks are not yet used in the kernel and they won't be until all paths are tested and validated.
- Public DDIs Implemented: ExfAcquirePushLockExclusive, ExfAcquirePushLockShared, ExfTryToWakePushLock, ExfReleasePushLock, ExfReleasePushLockExclusive, ExfReleasePushLockShared, ExfUnblockPushLock.
svn path=/trunk/; revision=20557
Alex Ionescu [Tue, 3 Jan 2006 22:36:36 +0000 (22:36 +0000)]
- More proper fix for the QEMU/Abiword regression. Remove kernel32 hack. Thanks to Filip and The Munger.
svn path=/trunk/; revision=20556
Alex Ionescu [Tue, 3 Jan 2006 22:25:09 +0000 (22:25 +0000)]
- Dirty temporary fix to unregress abiword/qemu.
svn path=/trunk/; revision=20555
Alex Ionescu [Tue, 3 Jan 2006 21:34:19 +0000 (21:34 +0000)]
- Fix shamefully dangerously broken Work Thread/Queue/Item implementation:
* Do not pollute the kernel with 10 real-time threads and 5 high-priority threads in order to manage work items. Work threads are very-low priority (< 7) and should never pre-empt userthreads like they do now. 1 priority 7, 5 priority 5 and 3 priority 4 threads are now properly created.
* Implement a worker thread balance set manager. On SMP systems, it is able to determine when a new thread should be allocate to execute on a free CPU. On both UP and MP, it is also able to detect if a work queue has deadlocked, and will allocate new dynamic threads to unfreeze the queue.
* Add check for threads returning with APC disabled, and re-enable APCs if this happend. This hack is used in NT for broken drivers.
* Lots of code changes to support dynamic threads, which:
- Can terminate.
- Use a 10 minute timeout on the kernel queue.
* Add skeleton code for swapping worker thread stacks as well as worker thread shutdown (not yet implemented).
* Add WORKER_INVALID bugcheck definition.
* These changes seem to make ROS a lot more responsive.
- NDK:
* Make more compatible with MS IFS
* Fix EX_WORK_QUEUE definition.
* Fix ETHREAD offsets.
* Fix RtlIsNameLegalDOS8Dot3 definition.
* Move splay tree defines to IFS.
svn path=/trunk/; revision=20554
Aleksey Bragin [Tue, 3 Jan 2006 21:29:39 +0000 (21:29 +0000)]
Add kbdur.dll (Ukrainian keyboard layout) to the install-cd.
svn path=/trunk/; revision=20553
Ged Murphy [Tue, 3 Jan 2006 21:17:28 +0000 (21:17 +0000)]
fix ugly tab formatting
svn path=/trunk/; revision=20552
Ged Murphy [Tue, 3 Jan 2006 21:00:06 +0000 (21:00 +0000)]
Skeleton dialog box to control system page file size
svn path=/trunk/; revision=20551
Magnus Olsen [Tue, 3 Jan 2006 18:49:10 +0000 (18:49 +0000)]
Commit a patch for hide and show mouse. (forget it)
svn path=/trunk/; revision=20550
Magnus Olsen [Tue, 3 Jan 2006 17:59:56 +0000 (17:59 +0000)]
forget remove some test code.
svn path=/trunk/; revision=20549
Magnus Olsen [Tue, 3 Jan 2006 17:21:11 +0000 (17:21 +0000)]
forget remove a calc value in the for loop it can do outside the loop.
svn path=/trunk/; revision=20548
Magnus Olsen [Tue, 3 Jan 2006 17:05:39 +0000 (17:05 +0000)]
Remove putpixel from strechblt and add code to write direcly to the memory. it incress the speed for strechblt.
this is ony for 16bit graphice mode.
svn path=/trunk/; revision=20547
Magnus Olsen [Tue, 3 Jan 2006 16:22:09 +0000 (16:22 +0000)]
addding new streach code for dib8, left to add it is dib1, dib4, dib24, dib32
svn path=/trunk/; revision=20546
Hartmut Birr [Tue, 3 Jan 2006 14:56:47 +0000 (14:56 +0000)]
Copy the correct value if the value is stored directly in the data pointer (in CmiExportValue).
svn path=/trunk/; revision=20545
Hartmut Birr [Tue, 3 Jan 2006 13:44:35 +0000 (13:44 +0000)]
Fixed the the conversion of the vendor identifier string. Sometimes, the wrong conversion has resulted in a invalid opcode exception.
svn path=/trunk/; revision=20544
Maarten Bosma [Tue, 3 Jan 2006 11:49:59 +0000 (11:49 +0000)]
fix typos.
svn path=/trunk/; revision=20543
Maarten Bosma [Tue, 3 Jan 2006 00:24:37 +0000 (00:24 +0000)]
fix spelling mistake.
svn path=/trunk/; revision=20542
Maarten Bosma [Tue, 3 Jan 2006 00:17:31 +0000 (00:17 +0000)]
Change URL to svn.reactos.org
svn path=/trunk/; revision=20541
Maarten Bosma [Tue, 3 Jan 2006 00:12:35 +0000 (00:12 +0000)]
Add some Apps and change tree version to the bare one.
svn path=/trunk/; revision=20540
Maarten Bosma [Tue, 3 Jan 2006 00:10:01 +0000 (00:10 +0000)]
Change include base too.
svn path=/trunk/; revision=20539
Magnus Olsen [Mon, 2 Jan 2006 23:43:43 +0000 (23:43 +0000)]
Thx GvG for helping put to gather a new math formula that make alot of calc not needed any longer. and correct fourmla for rounding fault. I did not think of it when I rewrote the streachblt. it feal strechblt is bit fasfer agains the old one.
svn path=/trunk/; revision=20538
Gé van Geldorp [Mon, 2 Jan 2006 20:51:54 +0000 (20:51 +0000)]
Silence some debug messages
svn path=/trunk/; revision=20537
Gé van Geldorp [Mon, 2 Jan 2006 20:26:03 +0000 (20:26 +0000)]
Use lookaside lists for two most common allocation sizes (mbuf and data buffer)
svn path=/trunk/; revision=20536
Gé van Geldorp [Mon, 2 Jan 2006 20:04:19 +0000 (20:04 +0000)]
Use a lookaside list for tracking
svn path=/trunk/; revision=20535
Magnus Olsen [Mon, 2 Jan 2006 19:00:47 +0000 (19:00 +0000)]
Correct Streachblt in windows mode, it take accunt org and offset now. this need to be implement in dib1, dib4, dib8,dib24, dib32
svn path=/trunk/; revision=20534
Hartmut Birr [Mon, 2 Jan 2006 18:45:52 +0000 (18:45 +0000)]
Implemented the 'red zone check' for the non paged pool.
svn path=/trunk/; revision=20533
Hartmut Birr [Mon, 2 Jan 2006 18:34:31 +0000 (18:34 +0000)]
Simplified the definition of the interrupt handlers for non smp machines.
svn path=/trunk/; revision=20532
Alex Ionescu [Mon, 2 Jan 2006 18:03:19 +0000 (18:03 +0000)]
- Fix building with old binutils. Thanks to Ge for the fix.
svn path=/trunk/; revision=20531
Hartmut Birr [Mon, 2 Jan 2006 17:46:35 +0000 (17:46 +0000)]
Fixed the size of the allocated port structure.
svn path=/trunk/; revision=20530
Ged Murphy [Mon, 2 Jan 2006 16:43:54 +0000 (16:43 +0000)]
Allow files other than C to be included in the projects
Patch by Brezenbak (IRC)
svn path=/trunk/; revision=20529
Hervé Poussineau [Mon, 2 Jan 2006 11:39:15 +0000 (11:39 +0000)]
Report current bus number during IRP_MN_QUERY_RESOURCES
Child bus number is in u.type1.SecondaryBus field, not u.type1.SubordinateBus
svn path=/trunk/; revision=20528
Hervé Poussineau [Mon, 2 Jan 2006 11:37:00 +0000 (11:37 +0000)]
Start \\Device\\USBFDOx names at index 0.
Use the same index to create the symbolic link \\??\\HCDx
This should fix the handling of multiple USB controllers
svn path=/trunk/; revision=20527
Hervé Poussineau [Mon, 2 Jan 2006 11:32:03 +0000 (11:32 +0000)]
Replace STATUS_UNSUCCESSFUL by STATUS_TOO_MANY_NAMES
svn path=/trunk/; revision=20526
Eric Kohl [Sun, 1 Jan 2006 20:59:39 +0000 (20:59 +0000)]
Generate static MIDL_PROC_FORMAT_STRING, MIDL_TYPE_FORMAT_STRING and MIDL_STUB_DESC.
svn path=/trunk/; revision=20525
Ged Murphy [Sun, 1 Jan 2006 20:56:01 +0000 (20:56 +0000)]
revert 20523.
explorer and my computer are different animals
svn path=/trunk/; revision=20524
Ged Murphy [Sun, 1 Jan 2006 18:45:16 +0000 (18:45 +0000)]
change explorer quick launch icon to use default 'my computer' icon instead of a folder.
svn path=/trunk/; revision=20523
Ged Murphy [Sun, 1 Jan 2006 18:13:07 +0000 (18:13 +0000)]
- split logoff and shutdown resources
- add icons for each
svn path=/trunk/; revision=20522
Magnus Olsen [Sun, 1 Jan 2006 17:12:19 +0000 (17:12 +0000)]
fix some bugs wih org with strechblt.
svn path=/trunk/; revision=20521
Hervé Poussineau [Sun, 1 Jan 2006 16:49:53 +0000 (16:49 +0000)]
Add missing processor architecture cases
svn path=/trunk/; revision=20520
Magnus Olsen [Sun, 1 Jan 2006 16:00:45 +0000 (16:00 +0000)]
revert 17709 for it break streach for windows mode. That why I did only got black windows in winquake with windows mode 640x480.
svn path=/trunk/; revision=20519
Martin Fuchs [Sun, 1 Jan 2006 15:44:46 +0000 (15:44 +0000)]
eliminate GCC warning about initialization order
svn path=/trunk/; revision=20517
Eric Kohl [Sun, 1 Jan 2006 15:32:40 +0000 (15:32 +0000)]
- Fix crashes in calls to ScmAssignNewTag.
- ScmrCreateServiceW: Assign a group to the service.
svn path=/trunk/; revision=20516
Martin Fuchs [Sun, 1 Jan 2006 15:21:03 +0000 (15:21 +0000)]
explorer:
- simplify SCAN flags
- extend shell browser to use WINFS
- resolve a few FIXMEs
- simplify ShellBrowser initialization
- handle /root command line option
svn path=/trunk/; revision=20515
Magnus Olsen [Sun, 1 Jan 2006 14:40:24 +0000 (14:40 +0000)]
optimize hide curs lite. so it does not tryung update the underlying surface hold time. and do not save the underlying surface in show when it is hide. all these save alot of cycles and winquake are bit faster.
svn path=/trunk/; revision=20514
Eric Kohl [Sun, 1 Jan 2006 14:26:25 +0000 (14:26 +0000)]
Forward QueryServiceLockStatusA/W to services.exe.
svn path=/trunk/; revision=20512
Thomas Bluemel [Sun, 1 Jan 2006 13:45:09 +0000 (13:45 +0000)]
Fixed calculating the size of empty message boxes. Fixes bug 1224
svn path=/trunk/; revision=20511
Magnus Olsen [Sun, 1 Jan 2006 13:36:06 +0000 (13:36 +0000)]
Fixing a small bug for hide mouse. Save the current surface under the mouse. But do not blt the mouse pointer. it take care of small glict I have seen in winqauke.
svn path=/trunk/; revision=20510
Thomas Bluemel [Sun, 1 Jan 2006 13:31:26 +0000 (13:31 +0000)]
fixed uninitialized variable warning
svn path=/trunk/; revision=20509
Eric Kohl [Sun, 1 Jan 2006 12:00:13 +0000 (12:00 +0000)]
Forward EnumDependentServicesA/W to services.exe.
svn path=/trunk/; revision=20508
Gé van Geldorp [Sun, 1 Jan 2006 11:52:34 +0000 (11:52 +0000)]
Revert accidental commit 20505
svn path=/trunk/; revision=20507
Gé van Geldorp [Sun, 1 Jan 2006 11:50:54 +0000 (11:50 +0000)]
Exiting the loop while someone else still might have a lock kind of defeats
the purpose of acquiring the lock ourselves
svn path=/trunk/; revision=20506
Gé van Geldorp [Sun, 1 Jan 2006 11:48:11 +0000 (11:48 +0000)]
Fix memory tracking
svn path=/trunk/; revision=20505
Gé van Geldorp [Sun, 1 Jan 2006 11:44:55 +0000 (11:44 +0000)]
Memory is properly released, no need to untrack it
svn path=/trunk/; revision=20504
Gé van Geldorp [Sun, 1 Jan 2006 11:41:05 +0000 (11:41 +0000)]
Fix a memory leak
svn path=/trunk/; revision=20503
Gé van Geldorp [Sun, 1 Jan 2006 11:34:59 +0000 (11:34 +0000)]
Silence debug message
svn path=/trunk/; revision=20502
Martin Fuchs [Sun, 1 Jan 2006 10:40:23 +0000 (10:40 +0000)]
explorer: merge changes from lean explorer branch (shell namespace iteration, icon extraction)
svn path=/trunk/; revision=20501
Eric Kohl [Sun, 1 Jan 2006 10:31:35 +0000 (10:31 +0000)]
Forward ChangeServiceConfig2A, QueryServiceConfig2A/W and EnumServicesStatusExA to services.exe
svn path=/trunk/; revision=20500
Gé van Geldorp [Sun, 1 Jan 2006 10:24:27 +0000 (10:24 +0000)]
Revert part of r20493. Created bug 1229 to keep track of the issue.
svn path=/trunk/; revision=20499
Magnus Olsen [Sun, 1 Jan 2006 01:09:08 +0000 (01:09 +0000)]
ShowCursor, gott a internal count to show the mouse or not, and return that value. as msdn descripe.
svn path=/trunk/; revision=20498
Gregor Anich [Sat, 31 Dec 2005 23:04:53 +0000 (23:04 +0000)]
New ibrowser icon by mf :P 4 mins late but still ;)
svn path=/trunk/; revision=20497
Eric Kohl [Sat, 31 Dec 2005 22:42:41 +0000 (22:42 +0000)]
- Service list entries use a pointer to a group list entry instead of the goup name.
- New group list entries are created in the unknown-group-list for services of unknown groups.
svn path=/trunk/; revision=20496
James Tabor [Sat, 31 Dec 2005 21:37:52 +0000 (21:37 +0000)]
Close bug 1223.
svn path=/trunk/; revision=20495
Martin Fuchs [Sat, 31 Dec 2005 20:49:43 +0000 (20:49 +0000)]
Registry entries for shell folders
svn path=/trunk/; revision=20494
Gé van Geldorp [Sat, 31 Dec 2005 19:50:29 +0000 (19:50 +0000)]
On FAT16 partitions smaller than 128MB, the cluster size is 2048, which is
smaller than PAGE_SIZE. This caused creation of the paging file on such a
partition to fail, which in turn made SMSS fail, blocking the boot process.
Creation of paging file fixed, and failure to create it is no longer a blocker
for the boot process (just try to run without paging file).
svn path=/trunk/; revision=20493
Eric Kohl [Sat, 31 Dec 2005 19:02:48 +0000 (19:02 +0000)]
SVN maintenance
svn path=/trunk/; revision=20492
Eric Kohl [Sat, 31 Dec 2005 18:56:34 +0000 (18:56 +0000)]
Move group-list related code to a separate file and keep the group name in the group record because it never changes.
svn path=/trunk/; revision=20491
Ged Murphy [Sat, 31 Dec 2005 17:27:25 +0000 (17:27 +0000)]
- Use a separate icon for minimizing windows.
- Add new icon
svn path=/trunk/; revision=20489
Hervé Poussineau [Sat, 31 Dec 2005 16:01:02 +0000 (16:01 +0000)]
Implement VideoPortGetAssociatedDeviceExtension and VideoPortCheckForDeviceExistence
svn path=/trunk/; revision=20487
Thomas Bluemel [Sat, 31 Dec 2005 15:47:15 +0000 (15:47 +0000)]
set eol-style to native
svn path=/trunk/; revision=20485
Maarten Bosma [Sat, 31 Dec 2005 15:13:01 +0000 (15:13 +0000)]
Add a tree file without subcategories.
svn path=/trunk/; revision=20484
Eric Kohl [Sat, 31 Dec 2005 11:33:46 +0000 (11:33 +0000)]
Forward StartServiceA/W to services.exe
svn path=/trunk/; revision=20480
Hervé Poussineau [Sat, 31 Dec 2005 10:11:58 +0000 (10:11 +0000)]
Fix bugs in ChangeServiceConfig2W spotted by Casper and Royce
svn path=/trunk/; revision=20478
Andrew Munger [Sat, 31 Dec 2005 01:38:59 +0000 (01:38 +0000)]
Revert 20343, which puts the implementation of QueryServiceConfigW back into place. (20255)
svn path=/trunk/; revision=20477
Alex Ionescu [Sat, 31 Dec 2005 00:03:19 +0000 (00:03 +0000)]
- Cleanup assembly files and create a header for the macros added and new ones that will be added later for syscall.S & friends.
svn path=/trunk/; revision=20476
Magnus Olsen [Fri, 30 Dec 2005 23:56:27 +0000 (23:56 +0000)]
solv the issue with mouse poiter is hide, do not show the mousepointer when you are moving the mouse. tested in winquake
svn path=/trunk/; revision=20475
Alex Ionescu [Fri, 30 Dec 2005 23:53:13 +0000 (23:53 +0000)]
- Rewrite Executive Interlocked Functions to actually work as supposed and also immensly increase their speed, most notably on non-SMP machines:
* The functions now disable interrupts as they should. This is a core functionality of the ExInterlocked functions which we did not do.
* The functions now preserve EFLAGS as they should. This is another core functionality and point of ExInterlocked functions, which we did not do.
* Use KiAcquire/ReleaseSpinlock equivalents instead of going through HAL. Also make them macros which can be later used in other assembly files.
* Write optimized versions for non-SMP machines. Namely, the spinlock macros are coded to be no-ops on UP machines, since they are not needed.
* Write all functions in assembly, so we can cleanly optimize them and properly restore/save EFLAGS and use CLI.
- Use the right interlocked macro in guarded mutex implementation.
- Fix export of Exi386InterlockedExchangeUlong
- Use documented EFLAGS definition instead of hard-coded value in some interlocked functions.
svn path=/trunk/; revision=20474
Gé van Geldorp [Fri, 30 Dec 2005 23:50:05 +0000 (23:50 +0000)]
Kaj Kaloinen <kkaloine@gmail.com>
Finnish translation
svn path=/trunk/; revision=20473