Johannes Anderwald [Thu, 8 Oct 2009 07:25:26 +0000 (07:25 +0000)]
- When enumerating controls, cControls *tells* the number of controls not *cConnections*. Fix a crash in XP sndvol32
- Clear the entire struct, not just part of it
- WdmAudMixerCapabilities just provides the index of a device, not its handle. Fixes displaying of duplicate mixer name in sndvol32
- Verify that a mixer line exists
svn path=/trunk/; revision=43335
Stefan Ginsberg [Wed, 7 Oct 2009 20:14:01 +0000 (20:14 +0000)]
MiReserveSystemPtes: Don't assert that allocation succeeded, just warn if we failed. All callers of the function handle allocation failure properly.
svn path=/trunk/; revision=43334
Dmitry Gorbachev [Wed, 7 Oct 2009 20:04:17 +0000 (20:04 +0000)]
Fix GCC 4.1.3 warning.
svn path=/trunk/; revision=43333
Dmitry Gorbachev [Wed, 7 Oct 2009 19:58:15 +0000 (19:58 +0000)]
Happy testing.
svn path=/trunk/; revision=43332
Dmitry Gorbachev [Wed, 7 Oct 2009 19:57:40 +0000 (19:57 +0000)]
Fix logging to a file.
In spite of limitations, it remains the only way to obtain desired logs for some people.
svn path=/trunk/; revision=43331
Dmitry Gorbachev [Wed, 7 Oct 2009 19:56:35 +0000 (19:56 +0000)]
Delete unused copy of GPL.
svn path=/trunk/; revision=43330
Dmitry Gorbachev [Wed, 7 Oct 2009 19:55:44 +0000 (19:55 +0000)]
Fix FreeLDR bug #4877. Patch by Gabriel.
svn path=/trunk/; revision=43329
Matthias Kupfer [Wed, 7 Oct 2009 19:42:02 +0000 (19:42 +0000)]
- replace dropshadow from mouse settings by cursor shadow
- bind cursor shadow to registry via sysparams
- rename variable names and identifiers
svn path=/trunk/; revision=43328
Matthias Kupfer [Wed, 7 Oct 2009 18:22:25 +0000 (18:22 +0000)]
- revert SPI_SETCLICKLOCK
- small optimization in mgsqueue
svn path=/trunk/; revision=43327
Timo Kreuzer [Wed, 7 Oct 2009 16:58:53 +0000 (16:58 +0000)]
Add test for NtUserSystemParametersInfo case SPI_SETMOUSECLICKLOCK
svn path=/trunk/; revision=43326
Matthias Kupfer [Wed, 7 Oct 2009 14:25:52 +0000 (14:25 +0000)]
- some preparation for ClickLock implementation
svn path=/trunk/; revision=43325
Aleksey Bragin [Wed, 7 Oct 2009 12:21:13 +0000 (12:21 +0000)]
[fastfat_new]
- Implement FatiQueryNameInformation. It doesn't work right now due to missing file names in the FCB record.
- Make a stub for FatSetFcbNames.
svn path=/trunk/; revision=43324
Matthias Kupfer [Wed, 7 Oct 2009 11:17:11 +0000 (11:17 +0000)]
- load UserPreferencesMask from registry
svn path=/trunk/; revision=43323
Aleksey Bragin [Wed, 7 Oct 2009 10:45:45 +0000 (10:45 +0000)]
[fastfat_new]
- Lower importance of some debug messages.
- Add FCB locking routines.
- Lock VCB and FCB in QueryInformation.
svn path=/trunk/; revision=43322
Johannes Anderwald [Wed, 7 Oct 2009 10:41:34 +0000 (10:41 +0000)]
[WDMAUD]
- Use KsProbeStreamIrp in wdmaud to probe user buffers
- Remove a few hacks which were required to pass down irps to portcls
[PORTCLS]
- Check if there is an automation table
[SYSAUDIO]
- Release file object of pin to prevent reference leak
--
- Audio stack now reacts faster as it now longer copies audio buffers in kernel mode and instead locks down the user buffers. In addition it uses less memory to do the same work.
svn path=/trunk/; revision=43321
Johannes Anderwald [Wed, 7 Oct 2009 09:43:30 +0000 (09:43 +0000)]
- Fix building of ReactOS
svn path=/trunk/; revision=43320
Aleksey Bragin [Wed, 7 Oct 2009 09:27:03 +0000 (09:27 +0000)]
[fastfat_new]
- Properly complete non-implemented volume open requests.
svn path=/trunk/; revision=43319
Johannes Anderwald [Wed, 7 Oct 2009 09:10:00 +0000 (09:10 +0000)]
- Implement support for reading from waveIn devices
svn path=/trunk/; revision=43318
Dmitry Gorbachev [Wed, 7 Oct 2009 01:41:53 +0000 (01:41 +0000)]
Fix my stupid mistake, made in r43169. Bug #4863. Thanks to Gabriel & Victor.
svn path=/trunk/; revision=43317
Matthias Kupfer [Wed, 7 Oct 2009 00:07:30 +0000 (00:07 +0000)]
- fix typo in registry key name
- fix wrong argument order in SystemParametersInfo call
- use static variables instead of multiple strings
- fix wrong pointer access in sysparams
svn path=/trunk/; revision=43316
Johannes Anderwald [Tue, 6 Oct 2009 18:16:21 +0000 (18:16 +0000)]
- Implement MIXER_GETLINEINFOF_COMPONENTTYPE for WdmAudGetLineInfo
- Implement MIXER_GETLINECONTROLSF_ONEBYID for WdmAudGetLineControls
- Clear MIXER_OBJECTF_HMIXER from Flags
- Fix a bug SetGetVolumeControlDetails which fixes retrieving current volume level (verified by sndvol32.exe from XP / mmsys.cpl ReactOS)
svn path=/trunk/; revision=43315
Johannes Anderwald [Tue, 6 Oct 2009 09:55:19 +0000 (09:55 +0000)]
- Fix creation of mixer pin
svn path=/trunk/; revision=43314
Johannes Anderwald [Tue, 6 Oct 2009 09:54:10 +0000 (09:54 +0000)]
- Partly implement WIDM_ADDBUFFER
svn path=/trunk/; revision=43313
Matthias Kupfer [Tue, 6 Oct 2009 09:02:31 +0000 (09:02 +0000)]
- bind (almost all) mouse settings to system and registry and fixup sysparams
svn path=/trunk/; revision=43312
Johannes Anderwald [Tue, 6 Oct 2009 08:47:27 +0000 (08:47 +0000)]
- Implement WIDM_OPEN, WIDM_CLOSE, WIDM_PREPARE, WIDM_UNPREPARE, WIDM_RESET for wave in devices
- Original code by Silverblade
svn path=/trunk/; revision=43311
James Tabor [Tue, 6 Oct 2009 04:22:11 +0000 (04:22 +0000)]
- Remove Thread from event structure and substitute with thread info from head structure.
svn path=/trunk/; revision=43310
James Tabor [Tue, 6 Oct 2009 03:38:23 +0000 (03:38 +0000)]
- Set Process, pass keyboard handle and enable check for user hooks.
svn path=/trunk/; revision=43309
Matthias Kupfer [Mon, 5 Oct 2009 21:00:44 +0000 (21:00 +0000)]
- use static variables instead of multiple strings
svn path=/trunk/; revision=43308
Matthias Kupfer [Mon, 5 Oct 2009 19:53:15 +0000 (19:53 +0000)]
- add new desktop and mouse property keys to registry
- disable global settings from _SYSTEM_CURSORINFO and change files accordingly
- bind and load added registry keys for SystemParametersInfo
- TODO: read and set via SystemParametersInfo still incomplete
svn path=/trunk/; revision=43307
Johannes Anderwald [Mon, 5 Oct 2009 19:15:04 +0000 (19:15 +0000)]
- Fix a critical bug in the counted worker implementation
svn path=/trunk/; revision=43306
Johannes Anderwald [Mon, 5 Oct 2009 17:00:59 +0000 (17:00 +0000)]
- Implement setting / getting volume level
svn path=/trunk/; revision=43305
Matthias Kupfer [Mon, 5 Oct 2009 14:13:29 +0000 (14:13 +0000)]
- partly revert 43298
- fix the mouse swap button issue
- cleanup loading mouse properties
- change reg key types for mouse values like windows
svn path=/trunk/; revision=43304
Dmitry Gorbachev [Mon, 5 Oct 2009 14:13:15 +0000 (14:13 +0000)]
select: change it to be more readable, avoid a spurious compiler warning.
svn path=/trunk/; revision=43303
Dmitry Gorbachev [Mon, 5 Oct 2009 14:13:09 +0000 (14:13 +0000)]
Avoid GCC warnings: deprecated conversion from string constant to 'WCHAR*'.
svn path=/trunk/; revision=43302
Dmitry Gorbachev [Mon, 5 Oct 2009 14:13:01 +0000 (14:13 +0000)]
Document ROS_GENERATE_RSYM environment variable.
svn path=/trunk/; revision=43301
Dmitry Gorbachev [Mon, 5 Oct 2009 14:12:49 +0000 (14:12 +0000)]
Modify DPRINT / DRPINT1 macros, check if DbgPrint crashed. Bug #4420.
svn path=/trunk/; revision=43300
Dmitry Gorbachev [Mon, 5 Oct 2009 14:12:33 +0000 (14:12 +0000)]
Fix internal name of ntkrnlmp.exe. Alexander Yastrebov (menone7 ~at~ gmail com), bug #4821.
svn path=/trunk/; revision=43299
Matthias Kupfer [Mon, 5 Oct 2009 11:35:06 +0000 (11:35 +0000)]
- fix the mouse swap button issue
- cleanup loading mouse properties
- add function to load and store DWORD for sysparams registry keys
- TODO: check and fix the get and set cases for sysparams for the right registry key type
svn path=/trunk/; revision=43298
Cameron Gutman [Mon, 5 Oct 2009 02:31:16 +0000 (02:31 +0000)]
- Remove the STATUS_PENDING case in UnlockAndMaybeComplete so we can catch pending IRPs which didn't get queued in the PendingIrpList
svn path=/trunk/; revision=43297
Cameron Gutman [Mon, 5 Oct 2009 01:44:17 +0000 (01:44 +0000)]
- Cancel pending user IRPs when we get a IRP_MJ_CLEANUP request
- Previously there was some confusion between IRPs in PendingIrpList and InFlightRequest, InFlightRequest IRPs go from AFD to a TDI transport driver (tcpip) which are sent on behalf of AFD and are cancelled upon socket destruction (IRP_MJ_CLOSE) vs. IRPs in the PendingIrpList which go from user-mode to AFD which are sent of behalf of the user and should be cancelled when handling IRP_MJ_CLEANUP
svn path=/trunk/; revision=43296
Dmitry Gorbachev [Sun, 4 Oct 2009 22:40:01 +0000 (22:40 +0000)]
Add "#pragma code_page(...)" again to fix compilation.
svn path=/trunk/; revision=43295
Daniel Reimer [Sun, 4 Oct 2009 22:32:07 +0000 (22:32 +0000)]
Update German NLS Files in Kernel32
svn path=/trunk/; revision=43294
Dmitry Gorbachev [Sun, 4 Oct 2009 22:03:21 +0000 (22:03 +0000)]
Add Spanish translation of Kernel32, fix translation of ServMan. Javier Remacha, bug #4872.
svn path=/trunk/; revision=43293
Matthias Kupfer [Sun, 4 Oct 2009 20:45:51 +0000 (20:45 +0000)]
temporarily workaround for swap mouse buttons feature
svn path=/trunk/; revision=43292
Stefan Ginsberg [Sun, 4 Oct 2009 20:19:43 +0000 (20:19 +0000)]
- Add STATUS_ASSERTION_FAILURE status code required for NT_ASSERT.
- Check KdReceivePacket return for KdPacketReceived instead of 0 for correctness.
- Use KdpDprintf instead of setting CR2 for unhandled cases.
- Add more variables to KdDebuggerDataBlock.
svn path=/trunk/; revision=43291
Johannes Anderwald [Sun, 4 Oct 2009 20:14:09 +0000 (20:14 +0000)]
- Return correct status code
svn path=/trunk/; revision=43290
Johannes Anderwald [Sun, 4 Oct 2009 19:45:16 +0000 (19:45 +0000)]
- Implement Un-Muting of audio lines
- TBD: SEH probing
svn path=/trunk/; revision=43289
Matthias Kupfer [Sun, 4 Oct 2009 19:28:52 +0000 (19:28 +0000)]
- remove double entry in inf
- load mouse settings
- TODO: mouse settings doesn't work properly, but read and set works
svn path=/trunk/; revision=43288
Cameron Gutman [Sun, 4 Oct 2009 19:23:53 +0000 (19:23 +0000)]
- Don't add the media-specific header until right before transmission
- Previously we would store the largest media-specific header size and add that value when creating a packet
- Makes loopback packets smaller because they have no need for a media-specific header
- Would fix packet corruption if interfaces with different media-specific headers were installed (if we supported that)
- Makes adding support for other media types easier
svn path=/trunk/; revision=43287
Dmitry Gorbachev [Sun, 4 Oct 2009 18:12:14 +0000 (18:12 +0000)]
Update Spanish translations. Javier Remacha, bug #4872.
svn path=/trunk/; revision=43286
Johannes Anderwald [Sun, 4 Oct 2009 17:39:26 +0000 (17:39 +0000)]
- Don't call ExFreePool for null pointers
svn path=/trunk/; revision=43285
Benedikt Freisen [Sun, 4 Oct 2009 17:25:55 +0000 (17:25 +0000)]
corrected magnifying glass cursor
svn path=/trunk/; revision=43284
Stefan Ginsberg [Sun, 4 Oct 2009 16:53:15 +0000 (16:53 +0000)]
Mega KD64 revival patch:
KD64
- Fix some 64-bit issues and some x86 specificness.
- Sub out some KdpTrap cases more properly.
- Implement support for .crash and .reboot. Does not seem to work currently because of weird issues.
- Implement KdpDprintf to send strings directly to the debugger from inside of KD64. Use it in KdEnterDebugger instead of DbgPrint so we won't try to enter the debugger recursively.
- Implement KdUpdateDataBlock to set the KeUserCallbackDispatcher pointer in the debugger block after its address is retrieved from ntdll.
- Don't assume breakpoints are 1 byte long in portable code -- use KD_BREAKPOINT_SIZE and define it per architecture.
- KdpStub: KdEnableDebugger returns NTSTATUS, not TRUE/FALSE.
Other
- wdbgexts.h: Properly define CURRENT_KD_SECONDARY_VERSION for AMD64.
- Make PsNtosImageBase pointer-sized as it should be.
- Change the definition of KDSTATUS so it is guaranteed to be 32-bit.
- Fix a critical bug in KiRestoreProcessorControlState: it didn't clear the busy flag in the TSS before reloading the task register, resulting in a GPF if we tried to reload the same register.
- Add macros for getting and setting special purpose registers (the Program Counter and the "return register") in portable code instead of using #ifdef every time. Do likewise for setting IMAGE_FILE_MACHINE_XXX, using a new IMAGE_FILE_MACHINE_ARCHITECTURE macro.
- Don't refer to the Program Counter as "Eip" in portable code.
- Define DBG_STATUS_CONTROL_C for assembly code and use it in KeUpdateSystemTime.
svn path=/trunk/; revision=43283
Stefan Ginsberg [Sun, 4 Oct 2009 14:48:18 +0000 (14:48 +0000)]
- Convert remaining KEBUGCHECK to KeBugCheck.
- Add HAL_MEMORY_ALLOCATION bug code and use it.
svn path=/trunk/; revision=43282
Matthias Kupfer [Sun, 4 Oct 2009 10:50:18 +0000 (10:50 +0000)]
- DragFullWindow property changable via desktop settings / effects
- TODO: adapt desk.cpl to new sysparams implementation
svn path=/trunk/; revision=43281
Michael Martin [Sun, 4 Oct 2009 07:26:23 +0000 (07:26 +0000)]
edit.c: Remove TPM_RETURNCMD flag from TrackPopupMenu missed during a recent WINE sync. Most apps that use edit control context menus are back to working. VB apps still crashes as the context menu implementation for edit controls is slightly wrong.
svn path=/trunk/; revision=43280
Cameron Gutman [Sun, 4 Oct 2009 03:55:34 +0000 (03:55 +0000)]
- Put some code back which was removed in r43270
svn path=/trunk/; revision=43279
Timo Kreuzer [Sun, 4 Oct 2009 00:04:38 +0000 (00:04 +0000)]
use __debugbreak() insetad of EngDebugBreak()
dedicated to Alex
svn path=/trunk/; revision=43278
James Tabor [Sat, 3 Oct 2009 23:42:06 +0000 (23:42 +0000)]
- Dont need this then.
svn path=/trunk/; revision=43277
James Tabor [Sat, 3 Oct 2009 23:39:30 +0000 (23:39 +0000)]
- Use TIF in cleanup flag.
svn path=/trunk/; revision=43276
Cameron Gutman [Sat, 3 Oct 2009 21:34:34 +0000 (21:34 +0000)]
- Add cancellation support for IOCTL_AFD_SELECT
- Fix release build
svn path=/trunk/; revision=43275
Cameron Gutman [Sat, 3 Oct 2009 20:52:54 +0000 (20:52 +0000)]
- Implement IRP cancellation for AFD
- Fixes "Broken driver did not complete!" showing up in the debug log (especially during winetests)
svn path=/trunk/; revision=43274
Hervé Poussineau [Sat, 3 Oct 2009 20:09:57 +0000 (20:09 +0000)]
WINLDR: Finally, set Windows boot style as default
Many thanks to Fireball and Alex for your hard work on Windows boot style
svn path=/trunk/; revision=43273
Hervé Poussineau [Sat, 3 Oct 2009 19:43:29 +0000 (19:43 +0000)]
[usetup] Simplify creation of entries in freeldr.ini
svn path=/trunk/; revision=43272
Hervé Poussineau [Sat, 3 Oct 2009 18:41:10 +0000 (18:41 +0000)]
[freeldr] Remove MachDiskGetPartitionEntry, and directly use the correct one
Remove PpcDiskNormalizeSystemPath(), it was the same as DiskNormalizeSystemPath()
svn path=/trunk/; revision=43271
Cameron Gutman [Sat, 3 Oct 2009 18:21:14 +0000 (18:21 +0000)]
- Fix the crash in ws2_32_winetest during the ioctlsocket test
- Pass the blocking mode down to AFD
- Dedicated to encoded
svn path=/trunk/; revision=43270
Matthias Kupfer [Sat, 3 Oct 2009 17:13:02 +0000 (17:13 +0000)]
- consider DragFullWindows-value from Registry
svn path=/trunk/; revision=43269
Hervé Poussineau [Sat, 3 Oct 2009 17:00:29 +0000 (17:00 +0000)]
[freeldr] Remove (Mach)DiskGetBootDevice, DiskGetBootVolume, DiskGetSystemVolume, FsRecognizeVolume
This commit breaks ext2 driver in freeldr, which needs to use ArcSeek/ArcRead/Arc* instead of DiskGetBootVolume/MachDiskReadLogicalSectors
svn path=/trunk/; revision=43268
Hervé Poussineau [Sat, 3 Oct 2009 16:47:54 +0000 (16:47 +0000)]
Rework FAT filesystem to not be tied to boot filesystem
svn path=/trunk/; revision=43267
Benedikt Freisen [Sat, 3 Oct 2009 16:33:41 +0000 (16:33 +0000)]
* only show message box on exit if the image has not been saved and is not blank
* set as wallpaper: now working, setting wallpaper style: not yet
* made number of undo-steps changeable through define-statement; increased to 10 (see original)
* zoom tool got its track bar (see original)
svn path=/trunk/; revision=43266
Stefan Ginsberg [Sat, 3 Oct 2009 14:15:46 +0000 (14:15 +0000)]
- Replace some x86 assembly in drivers with portable breakpoint support.
svn path=/trunk/; revision=43265
Hervé Poussineau [Sat, 3 Oct 2009 13:29:41 +0000 (13:29 +0000)]
[freeldr] Fix warning on recent GCC versions
svn path=/trunk/; revision=43264
Hervé Poussineau [Sat, 3 Oct 2009 13:11:22 +0000 (13:11 +0000)]
[freeldr] Code code specific to ARC emulation to its own directory
svn path=/trunk/; revision=43263
Hervé Poussineau [Sat, 3 Oct 2009 12:49:14 +0000 (12:49 +0000)]
[freeldr] It's easy to check if we booted from a floppy thanks to boot path. No need to maintain a machine callback for that
svn path=/trunk/; revision=43262
Hervé Poussineau [Sat, 3 Oct 2009 12:36:52 +0000 (12:36 +0000)]
WINLDR: Move i386 specific code to its own file
svn path=/trunk/; revision=43261
Dmitry Chapyshev [Sat, 3 Oct 2009 09:34:19 +0000 (09:34 +0000)]
- Implement delete of the program information from the registry
- Store settings information in HKEY_LOCAL_MACHINE instead HKEY_CURRENT_USER
svn path=/trunk/; revision=43260
James Tabor [Sat, 3 Oct 2009 02:30:47 +0000 (02:30 +0000)]
- Prevent kernel bug check in win32k when calling a hook proc when thread is in cleanup.
- This is not a hack and not a fix. Please retest related bug report applications. Tested Firefox 3.5 and the new putty. Need new debug print outs. ATM Ff 3.5 send out WH_JOURNALRECORD hook calls when the thread is in cleanup. Look like this: Thread is in cleanup and trying to call hook 0
- Reference bug 4298.
svn path=/trunk/; revision=43259
Johannes Anderwald [Fri, 2 Oct 2009 21:55:53 +0000 (21:55 +0000)]
- Add KSPROPSETID_Audio guid
- Allocate data format after successful initialization of IPinWaveCyclic
- Store Miniport Adapter in subdevice descriptor
- Implement GUID_NULL handler for topology nodes
- Implement setting / retrieving properties for topology nodes
svn path=/trunk/; revision=43258
Aleksey Bragin [Fri, 2 Oct 2009 17:07:37 +0000 (17:07 +0000)]
[fastfat_new]
- Don't leak VCB lock, prevents hang when trying to open another file.
svn path=/trunk/; revision=43257
Aleksey Bragin [Fri, 2 Oct 2009 13:59:51 +0000 (13:59 +0000)]
[fastfat_new]
- Fail with an error if file can't be opened.
- Implement FatCreateDcb, actually create DCBs for all parsed directories in the path.
- Set file size in an advanced FSRTL header for a file.
- Implement a small helper function for setting full names in FCB/DCB like it's done in the reference driver.
svn path=/trunk/; revision=43256
Aleksey Bragin [Fri, 2 Oct 2009 11:56:03 +0000 (11:56 +0000)]
[fullfat]
- Substitute more "free" to FF_Free function.
svn path=/trunk/; revision=43255
Johannes Anderwald [Fri, 2 Oct 2009 10:57:24 +0000 (10:57 +0000)]
- Rewrite Wave API to enumerate wave out / in devices at startup
- Improves speedup of application minus short delay in system boot
- Enumerate controls for source and destination lines
svn path=/trunk/; revision=43254
Johannes Anderwald [Fri, 2 Oct 2009 10:53:36 +0000 (10:53 +0000)]
- Check if NodeId is out of bounds
- Return correct status code
svn path=/trunk/; revision=43253
Aleksey Bragin [Fri, 2 Oct 2009 10:49:57 +0000 (10:49 +0000)]
[fastfat_new]
- Implement querying standard information (important for getting correct file size).
- Substitute CcMap/copy/Unpin by CcCopyRead in FatReadBlocks.
- Take offset into account (seek) in file read operation. Fixes always reading files from the beginning.
svn path=/trunk/; revision=43252
Cameron Gutman [Thu, 1 Oct 2009 21:00:41 +0000 (21:00 +0000)]
- Get the length from each packet header instead of assuming that all packets will be the length of the first one
svn path=/trunk/; revision=43251
Aleksey Bragin [Thu, 1 Oct 2009 16:08:11 +0000 (16:08 +0000)]
[fastfat_new]
- Implement simple read support.
- Rewrite FatMapUserBuffer, no exception raising necessary at this stage.
- Silence FatReadBlocks dbgprint.
svn path=/trunk/; revision=43250
Stefan Ginsberg [Thu, 1 Oct 2009 14:18:54 +0000 (14:18 +0000)]
- Fix MSVC YieldProcessor macro
svn path=/trunk/; revision=43249
Stefan Ginsberg [Thu, 1 Oct 2009 14:18:18 +0000 (14:18 +0000)]
- Kill leftover __USE_W32API
svn path=/trunk/; revision=43248
Aleksey Bragin [Thu, 1 Oct 2009 13:21:28 +0000 (13:21 +0000)]
[fastfat_new]
- Open a file in FatiOpenExistingFile by means of FullFAT library.
- Fix incorrect fullfat placement in fasfat.rbuild.
- Hack StreamFileObject to be 5Gb in length instead of 512 bytes. It'll be set to the size of an underlying physical device later.
- Add FF file handle to FCB structure.
svn path=/trunk/; revision=43247
Johannes Anderwald [Wed, 30 Sep 2009 23:58:04 +0000 (23:58 +0000)]
- Add usbdlib.h
svn path=/trunk/; revision=43246
Dmitry Gorbachev [Wed, 30 Sep 2009 20:59:21 +0000 (20:59 +0000)]
Patch by Viliam Lejcik (lejcik =at= gmail com). Fixes bug #4858. With the blessing of Ged Murphy.
svn path=/trunk/; revision=43245
Stefan Ginsberg [Wed, 30 Sep 2009 20:30:57 +0000 (20:30 +0000)]
ReactOS SMP Bringup Lite:
- Add simple and hacky spinlock implementation to HAL and kernel. It treats queued spinlocks as normal spinlocks and does not support debug timeout, but works well enough to expose bugs in spinlock usage.
- Implement KiProcessDeferredReadyList, a simple wrapper around KiDeferredReadyThread.
- Add missing PRCB locking in KiDeferredReadyThread.
- Implement SMP handling in KiRetireDpcList.
- Acquire the spinlock in KeSynchronizeExecution for SMP.
- Stub and export Kii386SpinOnSpinLock -- not used yet.
- Fix locking in KiAcquire/ReleaseDispatcherLockAtDpcLevel -- KeAcquireQueuedSpinLockAtDpcLevel takes the lock queue pointer, not the index.
- "Implement" KiRundownThread for SMP.
- Fix some sanity checks in the SMP context switch code and implement a stubbed SMP case.
- Define SYNCH_LEVEL in asm.h and use it in HAL's KeRaiseIrqlToSynchLevel.
To try the MP kernel on UP (it does not work on multiple processors yet) compile ntkrnlmp, rename it to ntoskrnl and add it to your installation. This requires a HAL with CONFIG_SMP enabled in HAL's spinlock.c and irq.S. Booting with the MP kernel does not work because of a weird regression introduced sometime in the last few months -- it appears MmProbeAndLockPages fails for a user mode stack pointer (no, I have no idea why).
svn path=/trunk/; revision=43244
Stefan Ginsberg [Wed, 30 Sep 2009 19:29:08 +0000 (19:29 +0000)]
- ASSERT on NULL-frees
svn path=/trunk/; revision=43243
Johannes Anderwald [Wed, 30 Sep 2009 18:58:52 +0000 (18:58 +0000)]
- Several bugfixes for mixer source / destination line detection code
- Fix a memory leak
svn path=/trunk/; revision=43242
Stefan Ginsberg [Wed, 30 Sep 2009 18:31:26 +0000 (18:31 +0000)]
- KeBugCheckEx expects BugCheckParameter2 to point to an array when the bug code is FATAL_UNHANDLED_HARD_ERROR -- properly stub out ExpSystemErrorHandler so we don't crash in KeBugCheckEx.
svn path=/trunk/; revision=43241
Stefan Ginsberg [Wed, 30 Sep 2009 18:24:00 +0000 (18:24 +0000)]
- Fix recursive spinlock acquisition in Mm caused by locking inconsistency between ARM3 and the old ReactOS Mm. The old Mm calls certain routines to modify PFN entries (lock, unlock, reference, dereference, etc) and acquires/releases the PFN lock inside those functions (which is extremely inefficient as you can't, for example, have to acquire/release the PFN lock twice to reference and lock the same page), while ARM3 synchronizes differently and holds the lock while calling those routines, resulting in a recursive lock attempt on MP (which works on UP because spinlocks are just IRQL raise/lower there). Move out locking from MmAllocPage, MmReference/DereferencePage and MmLock/UnlockPage to the callers to be consistent with ARM3.
- Add missing PFN locking to MmFreePagesFromMdl and MiAllocatePoolPages.
- Get rid of MmLockPageUnsafe and MmReferencePageUnsafe. The "safe" routines just forwarded to the unsafe versions -- call them directly instead. Remove unused MmAcquirePageListLock/MmReleasePageListLock.
svn path=/trunk/; revision=43240
Aleksey Bragin [Wed, 30 Sep 2009 16:16:18 +0000 (16:16 +0000)]
[fastfat_new]
- Partially implement a codepath for opening an existing file.
- Implement simple FCB and CCB creation.
- Correctly set FILE_OBJECT fields.
- Allocate space for SECTION_POINTERS.
- Implement some misc in FatQueryInformation.
- The driver goes up to getting a read request for ntdll.dll.
svn path=/trunk/; revision=43239
Stefan Ginsberg [Wed, 30 Sep 2009 13:43:55 +0000 (13:43 +0000)]
- ...and this one.
svn path=/trunk/; revision=43238
Stefan Ginsberg [Wed, 30 Sep 2009 13:33:48 +0000 (13:33 +0000)]
- Missed this one
svn path=/trunk/; revision=43237
Stefan Ginsberg [Wed, 30 Sep 2009 13:32:05 +0000 (13:32 +0000)]
- Goodbye __USE_W32API
svn path=/trunk/; revision=43236