Commit graph

44650 commits

Author SHA1 Message Date
Amine Khaldi 67948fbc90 [CMAKE]
- Move some dlls with no stubs into using def files instead of spec files.

svn path=/branches/cmake-bringup/; revision=49448
2010-11-02 18:19:44 +00:00
Jérôme Gardou fa36534888 [CMAKE]
Poor little gcc, forgotten by Timo

svn path=/branches/cmake-bringup/; revision=49447
2010-11-02 17:25:36 +00:00
Sir Richard 85e5b5be56 [NTOS]: Mark all initialization functions INIT_FUNCTION.
[NTOS]: This will save ~280KB of RAM once we dump INIT from RAM in a future patch.
[NTOS]: Display current free RAM at certain checkpoints.

svn path=/trunk/; revision=49445
2010-11-02 16:29:06 +00:00
Sir Richard ee45da75e0 [NTOS]: Add page-tracking macro calls wherever needed. MI_TRACE_PFNS is still off, though, so this code won't be called.
svn path=/trunk/; revision=49444
2010-11-02 15:16:22 +00:00
Sir Richard 5f9569d3c5 [NTOS]: Define an array of MI_USAGE integers to track what a PFN is used for.
[NTOS]: Extend the MMPFN structure for ReactOS-specific PFN tracing mechanism.
[NTOS]: Add macros to track page usage and process/extra-data (not yet used).

svn path=/trunk/; revision=49443
2010-11-02 15:05:37 +00:00
Sir Richard 3163a7e933 [NTOS]: CR3 should be PDE_BASE, not PTE_BASE!
[NTOS]: Define DemandZeroPte.

svn path=/trunk/; revision=49442
2010-11-02 15:02:41 +00:00
Sir Richard 3a3d75946e [NTOS]: Misc typo and cleanup fixes.
svn path=/trunk/; revision=49441
2010-11-02 14:58:39 +00:00
Sir Richard dae4714960 [NTOS]: Fix a bug in the MDL Code which would dereference a completely bogus page frame index.
svn path=/trunk/; revision=49440
2010-11-02 14:58:10 +00:00
Sir Richard c7b69d59e3 [NTOS]: Fix a bug in MmFindGapBottomUp which could make it return an address lower than what the caller said should be the lowest address.
svn path=/trunk/; revision=49439
2010-11-02 14:50:06 +00:00
Sir Richard 36429c0a64 [NTOS]: You can't just set MDL_LOCKED_PAGES without actually... locking the page. Add a MmReferencePage when doing so, so when that a paging read/write IRP gets completed (and MmUnlockPages is called), the page gets handled correctly. Can now boot with 64MB RAM without ASSERTs.
[NTOS]: Fix one of the MDL code paths that isn't getting called frequently.

svn path=/trunk/; revision=49438
2010-11-02 14:46:46 +00:00
Sir Richard 55256a107f [NTOS]: ASSERT nobody tries to put ARM3 pages into the MC_USER LRU.
svn path=/trunk/; revision=49437
2010-11-02 14:42:08 +00:00
Sir Richard 72e1ab5fb8 [NTOS]: Assert nobody tries to touch the sharecount of a non-ARM3 page.
svn path=/trunk/; revision=49436
2010-11-02 14:41:51 +00:00
Sir Richard 4bdf7033a7 [NTOS]: Fix typos.
svn path=/trunk/; revision=49435
2010-11-02 14:41:29 +00:00
Sir Richard 8c212103be [NTOS]: Sanity checks when dealing with creating/cleaning process address space.
[NTOS]: Set the VmDeleted flag when the process address space is being nuked.

svn path=/trunk/; revision=49434
2010-11-02 14:41:03 +00:00
Sir Richard f6fa150d19 [NTOS]: Make sure we don't get a user-pointer back from MmMapInSystemSpace.
svn path=/trunk/; revision=49433
2010-11-02 14:40:31 +00:00
Sir Richard 82ca671f14 [NTOS]: Remove merge artifact from newcc.
svn path=/trunk/; revision=49432
2010-11-02 14:40:07 +00:00
Sir Richard 893dc1fad1 [NTOS]: Protect Arty's changes with #ifdef NEWCC, otherwise this code ASSERTs and crashes as soon as a pageout operation is required. Since your advanced test/regression systems boot into configurations with 1GB+ RAM, you never even test these paths and one could put an ASSERT(FALSE) and you wouldn't even notice it (as proven).
svn path=/trunk/; revision=49431
2010-11-02 14:38:52 +00:00
Johannes Anderwald c600a169fb [KSUSER, KS, SYSAUDIO]
- Make pin / node / allocator create requests compatible to ms by removing obsolete slash before object class
- Return correct error code in ksuser's KsCreatePin
- ReactOS KS is now able to create audio pins in Windows XP, though playback is not yet working
- All changes except ksuser change has been verified to work with VBox 3.2.10
- KS user changes not tested yet as KSStudio not working in trunk

svn path=/trunk/; revision=49428
2010-11-02 09:37:30 +00:00
Timo Kreuzer 2b2d3d2776 [CMAKE]
Rename add_importlib_def to add_importlib_target
add importlib targets for ntdll, msvcrt, shell32, user32

svn path=/branches/cmake-bringup/; revision=49427
2010-11-02 09:22:58 +00:00
Art Yerkes f2e646d5b4 [CACHE]
The cache manager rewrite I started years ago has finally appeared in
ReactOS' trunk and although at this point it's not quite perfectly
integrated, it's enough to boot up the bootcd or livecd. To check out
the more mature original, check out arty-newcc-reactos, branch
arty-newcc on bitbucket.org . Amine Khaldi encouraged me quite a bit
to not give up on it, and was able to reach out and be an advocate
when i really wasn't able to.  Others agree that the time has come to
begin removing the old cache manager. I expect the remaining problems
in the version going to trunk will be taken care of relatively
quickly.

The motivation for this effort lies in the particularly hairy
relationship between ReactOS' cache manager and data sections. This
code completely removes page sharing between cache manager and section
and reimagines cache manager as being a facility layered on the memory
manager, not really caring about individual pages, but simply managing
data section objects where caching might occur.

It took me about 2 years to do the first pass of this rewrite and most
of this year to fix some lingering issues, properly implement demand
paging in ReactOS (code which didn't come with this patch in a
recognizable form), and finish getting the PrivateCacheMap and
SharedCacheMap relationship correct.

Currently, the new ntoskrnl/cache directory contains an own
implementation of data file sections. After things have settled down,
we can begin to deprecate and remove the parts of ReactOS' section
implementation that depend on a close relationship with cache
manager. Eventually, I think that the extra code added to
ntoskrnl/cache/section will be removed and ReactOS' own sections will
replace the use of the special MM_CACHE_SECTION_SEGMENT in the cache
path.

Note also, that this makes all cache manager (and new section parts)
use wide file offsets. If my section code were to take over other
parts of the ReactOS memory manager, they would also benefit from
these improvements.

I invite anyone who wants to to peek at this code and fix whatever
bugs can be found.


svn path=/trunk/; revision=49423
2010-11-02 02:32:39 +00:00
Timo Kreuzer 7697abf4a2 [WIN32K]
Disable GDI_DEBUG. It's using > 20 MB memory. Too much for some people ;-)

svn path=/trunk/; revision=49422
2010-11-02 01:17:45 +00:00
Timo Kreuzer a3623f23de [CRT]
- Make all x86assembly ML compatible
- Remove memcpy, it was duplicated from memmove, copy the label instead
- Guard some code against compilation on msvc, as these functions are intrinsics on MSVC and cannot be implemented
- Fix some x64 assembly (don't modify stack below rsp)

svn path=/branches/cmake-bringup/; revision=49421
2010-11-02 00:06:33 +00:00
Timo Kreuzer 0d7a1c46a0 [ASM]
Fix dummy ASSUME

svn path=/branches/cmake-bringup/; revision=49420
2010-11-02 00:03:41 +00:00
Timo Kreuzer 62ea941082 [ASM]
Add .double macro for ML and dummy ASSUME macro for GAS
Allow XMM instructions for ML

svn path=/branches/cmake-bringup/; revision=49419
2010-11-01 23:18:51 +00:00
Jérôme Gardou 070543284f [CMAKE]
- improve win32k/CMakeLists.txt

svn path=/branches/cmake-bringup/; revision=49418
2010-11-01 22:55:56 +00:00
Johannes Anderwald 26895c3eac [PORTCLS]
- Portcls does not need to set the size of the audio buffer for completed irps. This is done in a completion callback in wdmaud. Verified with WinXP portcls
[WDMAUD_KERNEL]
- Free allocated mdls in the io completion routine. Also free the associated stream header.
[KS]
- Replace all ms portcls hacks by one. 
- MS Portcls is now working in ReactOS (which is nice for testing audio related bugs) 

svn path=/trunk/; revision=49417
2010-11-01 22:21:24 +00:00
Jérôme Gardou a6e4c15192 [PSDK]
- add TrustedDomainAuthInformationInternal and TrustedDomainFullInformationInternalFix to _TRUSTED_INFORMATION_CLASS.
Fixes build

svn path=/trunk/; revision=49415
2010-11-01 20:55:11 +00:00
Timo Kreuzer 3187b69e40 [HAL]
Temporary build "fix"

svn path=/branches/cmake-bringup/; revision=49414
2010-11-01 19:11:27 +00:00
Timo Kreuzer 531b4e5a24 {ASM]
- Remove superfluous .code64
- Add some macros for MSVC

svn path=/trunk/; revision=49413
2010-11-01 18:48:40 +00:00
Jérôme Gardou d933565eff [ASM]
- no ML doesn't mean 64 bits, right?

svn path=/branches/cmake-bringup/; revision=49412
2010-11-01 18:42:33 +00:00
Jérôme Gardou eea40886f2 [DXSDK]
- an interface must have an uuid.
If it "conflicts with uuids.h", then the problem il elsewhere.

svn path=/branches/cmake-bringup/; revision=49411
2010-11-01 18:24:17 +00:00
Johannes Anderwald 63a4962e7c [PORTCLS]
- Dear lawyers / worried developers, this is the XP DDK Version. 

svn path=/trunk/; revision=49410
2010-11-01 17:33:06 +00:00
Jérôme Gardou 887046a6ee [CMAKE]
- build msvc importlibs explicitly from def file
  - circumvent lack of pseh lib in MSVC.
  - fix advapi32.def

svn path=/branches/cmake-bringup/; revision=49409
2010-11-01 17:24:32 +00:00
Timo Kreuzer 18dd356710 [HAL]
Make systimer.S ML compatible. Replace most hardcoded numerical values with proper symbolic constants.

svn path=/branches/cmake-bringup/; revision=49408
2010-11-01 16:42:53 +00:00
Timo Kreuzer 23ade33f3e [CMAKE]
set custom command to compile asm files for MSVC toolchain. They are being preprocessed first.

svn path=/branches/cmake-bringup/; revision=49407
2010-11-01 16:40:30 +00:00
Jérôme Gardou 7f39320ea9 [CMAKE]
- put advapi32.def into source files.

svn path=/branches/cmake-bringup/; revision=49406
2010-11-01 16:32:32 +00:00
Timo Kreuzer f2fd276358 [CMAKE]
When PreLoad.cmake is run, the CMAKE_CURRENT_SOURCE_DIR points to the directory, where the cmake command was executed (bug?). To get the root folder of reactos, use CMAKE_CURRENT_LIST_FILE, which points to PreLoad.cmake in the root folder.

svn path=/branches/cmake-bringup/; revision=49405
2010-11-01 15:15:02 +00:00
Eric Kohl 45f49f49a4 [ADVAPI32]
Implement LsaAddAccountRights(), LsaQueryTrustedDomainInfoByName() and LsaRemoveAccountRights().

svn path=/trunk/; revision=49403
2010-11-01 14:09:33 +00:00
Jérôme Gardou 85f6dd0d60 [CMAKE]
- fix build, sorry

svn path=/branches/cmake-bringup/; revision=49402
2010-11-01 14:05:48 +00:00
Johannes Anderwald 92caa24fa4 [PORTCLS]
- Add license header

svn path=/trunk/; revision=49401
2010-11-01 13:23:15 +00:00
Eric Kohl fbd13b3b7b [SETUPAPI]
Implement CM_Get_Device_ID_List_ExW().

svn path=/trunk/; revision=49400
2010-11-01 12:39:51 +00:00
Timo Kreuzer 89358dad46 [RTL]
Make asm files ML compatible

svn path=/branches/cmake-bringup/; revision=49399
2010-11-01 11:41:01 +00:00
Timo Kreuzer cf02eb354a [CMAKE]
Add missing dependencies for MSVC add_importlibs

svn path=/branches/cmake-bringup/; revision=49398
2010-11-01 09:39:53 +00:00
Timo Kreuzer 415f19bb99 [NTDLLSYS]
Set LINKER_LANGUAGE to C. Neccessary for MSVC.

svn path=/branches/cmake-bringup/; revision=49397
2010-11-01 09:39:06 +00:00
Jérôme Gardou accc078cea [CMAKE]
- put ntdll.def in source files

svn path=/branches/cmake-bringup/; revision=49396
2010-11-01 09:32:04 +00:00
Timo Kreuzer 431cc33a5a [NTDLL]
- Convert the pspec to spec and use it
- add add_importlib_target

svn path=/branches/cmake-bringup/; revision=49395
2010-11-01 08:58:18 +00:00
James Tabor 3fbc8a9077 [Explorer] - Revert last change.
svn path=/trunk/; revision=49394
2010-11-01 03:21:52 +00:00
James Tabor 4fb4d86702 [Explorer] - Track the only Global Hook ReactOS has.
svn path=/trunk/; revision=49393
2010-11-01 03:10:59 +00:00
James Tabor 4e5c48aaaf [Win32k] - Track end of life thread when removing hooks.
svn path=/trunk/; revision=49392
2010-11-01 01:56:07 +00:00
Jérôme Gardou 9db2f953c2 [CMAKE]
- improve ntoskrnl/CMakeLists.txt

svn path=/branches/cmake-bringup/; revision=49391
2010-11-01 01:23:17 +00:00