Timo Kreuzer
a6656cbfae
Add some debugging code
...
svn path=/branches/ros-amd64-bringup/; revision=44179
2009-11-15 20:28:38 +00:00
Timo Kreuzer
a5a0c47af3
Fix definition of _CONTEXT. It was defining EFlags as USHORT, this caused the upper 2 bytes being left randomly when the context was initialized from the trap frame on exceptions. And as soon as the VM bits was set, everything went nots.
...
svn path=/branches/ros-amd64-bringup/; revision=44178
2009-11-15 20:18:34 +00:00
Timo Kreuzer
5eb72addd0
- Get rid of the MmGlobalKernelPageDirectory hack. It's not going to be used on amd64. Instead set up a total of 256 (1MB) shared PDPs in the PML4.
...
- Partly implement phase 1 of MmArmInitSystem
- Fix MiPteToAddress
- Fix MmSystemRangeStart
svn path=/branches/ros-amd64-bringup/; revision=44174
2009-11-15 16:10:52 +00:00
Timo Kreuzer
36c73e8aee
Don't truncate MI_MAPPING_RANGE_START to ULONG
...
svn path=/branches/ros-amd64-bringup/; revision=44156
2009-11-14 14:49:50 +00:00
Timo Kreuzer
a181e0135a
Pass pointers to MiAddressToPte instead of integer
...
svn path=/branches/ros-amd64-bringup/; revision=44155
2009-11-14 14:45:30 +00:00
Timo Kreuzer
09feec648d
- Remove old debugging code from MiArmInitializePageTable
...
- Fix mapping in MiArmPreparePfnDatabse
We now reach phase 1 of MmArmInitSystem
svn path=/branches/ros-amd64-bringup/; revision=44148
2009-11-14 04:15:21 +00:00
Timo Kreuzer
aa646f4618
The freelist code is an increadible hack. It #defines structure members to other structure members and misuses them. Try to improve the hack by declaring PHYSICAL_PAGE as a unioun of MMPFN and the stuff that is used in the freelist code. Exchange the positions of RmapListHead with MapCount as the former must be pointer sized. More work is required here.
...
svn path=/branches/ros-amd64-bringup/; revision=44147
2009-11-14 04:08:54 +00:00
Timo Kreuzer
d25b422abb
fix x86 build
...
svn path=/branches/ros-amd64-bringup/; revision=44146
2009-11-14 02:11:01 +00:00
Timo Kreuzer
dd9ed9ea92
- Share some more inline functions between the kernel and freeldr
...
- Use __ltr instead of Ke386SetTr
- refactor KiInitializeTss
- Update some Mm conatnts
- Halfplement KeFlushEntireTb
- Clean the mapping of page 0 in KiSystemStartup, as long as we don't clean mappings in freeldr
- Fix a serious bug in KiPageFault, where ebp was used instead of rbp, resulting in recursive page faults as soon as usermode mappings were cleared
- Refactor MmArmInitSystem and related. Pahse 0 initialisation completes here now. we fail later in freelist setup code, which is not 64 bit safe.
svn path=/branches/ros-amd64-bringup/; revision=44144
2009-11-13 23:30:44 +00:00
Timo Kreuzer
bb7f766eff
Initialize MmDebugPte from MiDebugMapping variable instead of using MiAddressToPte for a constant initializer. This way the page can be set dynamically. Use MmDebugPte to determine if ready for mapping physical pages.
...
svn path=/branches/ros-amd64-bringup/; revision=44143
2009-11-13 23:23:53 +00:00
Timo Kreuzer
e9a4673307
Convert KdpDprintf to conditional KDDBGPRINT macros to stop spamming WinDbg on invalid addresses.
...
svn path=/branches/ros-amd64-bringup/; revision=44134
2009-11-13 14:29:39 +00:00
Samuel Serapion
db4d913635
- Enable telnet, and tftpd.
...
- re-add some missing ntdll exports.
- export ctime64, its available.
svn path=/branches/ros-amd64-bringup/; revision=44125
2009-11-13 09:30:39 +00:00
Samuel Serapion
321196255a
- re-add explorer (old one) to build, it builds.
...
- use amd64 specific manifest file.
- still not a valid exe according to windows 7
svn path=/branches/ros-amd64-bringup/; revision=44124
2009-11-13 09:24:35 +00:00
Timo Kreuzer
2c2f893be1
fix a typo
...
svn path=/branches/ros-amd64-bringup/; revision=44123
2009-11-13 02:16:15 +00:00
Timo Kreuzer
2e92cb2a4c
Use the kernel mode address for the gdt/idt
...
svn path=/branches/ros-amd64-bringup/; revision=44095
2009-11-11 04:29:05 +00:00
Timo Kreuzer
d3d5631e62
- Correct implementations of MiAddressToP*e() would help a bit... implement them as inline functions.
...
svn path=/branches/ros-amd64-bringup/; revision=44088
2009-11-11 01:53:48 +00:00
Timo Kreuzer
a501510763
[MM]
...
Implement MmIsAddressValid for amd64.
svn path=/branches/ros-amd64-bringup/; revision=44073
2009-11-10 04:19:43 +00:00
Timo Kreuzer
81a17fc8f4
add missing file
...
svn path=/branches/ros-amd64-bringup/; revision=44072
2009-11-10 03:36:57 +00:00
Timo Kreuzer
14914c99db
fix build of ntoskrnl
...
svn path=/branches/ros-amd64-bringup/; revision=44071
2009-11-10 03:30:58 +00:00
Timo Kreuzer
843b9ee1eb
Merge trunk HEAD (r44067)
...
svn path=/branches/ros-amd64-bringup/; revision=44069
2009-11-10 02:40:48 +00:00
Timo Kreuzer
82c97ac922
[MM]
...
- Fix MiAddressToP*e macros
- move miarm constants
- set MmPfnDatabase address
- fix PageCount for pfn database mapping (round up)
svn path=/branches/ros-amd64-bringup/; revision=44067
2009-11-10 00:54:46 +00:00
Timo Kreuzer
c203c7f36c
don't anable interrupts as long as that's all broken, this way we make it a bit further...
...
svn path=/branches/ros-amd64-bringup/; revision=44066
2009-11-10 00:50:27 +00:00
Timo Kreuzer
c9f7c2317c
Use LoaderMemoryData instead of LoaderSpecialMemory for page tables
...
svn path=/branches/ros-amd64-bringup/; revision=44065
2009-11-10 00:48:09 +00:00
Timo Kreuzer
67918b7bd5
[KE]
...
- implement KiPageFault
svn path=/branches/ros-amd64-bringup/; revision=44064
2009-11-09 23:37:54 +00:00
Stefan Ginsberg
b4835e6bad
- Add KCALLOUT_FRAME to define the kernel callback stack layout during user mode callbacks. Define the NextCallback and FramePointer members of the debugger data block more portably with this.
...
- AMD64's is a copy of x86's to match asm.h's the assembly offsets. ARM's is a stub containing two necessary members to have some offsets for the debugger data block.
- Add ARM stub for KiCallUserMode as this is referenced from the debugger data block.
svn path=/trunk/; revision=44063
2009-11-09 23:19:03 +00:00
Stefan Ginsberg
ccd3b00fd2
- Fix unsigned/signed compare, spotted by Christoph
...
svn path=/trunk/; revision=44062
2009-11-09 23:07:04 +00:00
Stefan Ginsberg
a9f0dd5a8d
- Implement the generic bus handler support and initialization.
...
- Add missing hack flags for ACPI hacks.
- Add the hack flags to the registry.
svn path=/trunk/; revision=44061
2009-11-09 22:59:49 +00:00
KJK::Hyperion
652e881f54
... on the other hand, O_BINARY is a Win32 thing
...
svn path=/trunk/; revision=44060
2009-11-09 22:56:06 +00:00
KJK::Hyperion
f93a056987
modified base/shell/explorer/notifyhook/notifyhook.def
...
modified dll/3rdparty/mesa32/src/drivers/windows/icd/mesa.def
modified dll/nls/idndl/idndl.def
modified dll/nls/normaliz/normaliz.def
modified drivers/video/font/ftfd/freetype.def
Soon, the rbuild "dllname" attribute will have no effect for .def files (only .spec/.pspec): prepare the sources for it by specifying the DLL name in the .def files themselves with the LIBRARY directory
svn path=/trunk/; revision=44059
2009-11-09 22:49:18 +00:00
KJK::Hyperion
34cce6f897
modified tools/pefixup.c
...
MinGW provides a good enough POSIX-like environment to do away with a couple platform checks/hacks
Print error messages on stderr instead of stdout
Don't print anything when pefixup does nothing - "no news is good news"
svn path=/trunk/; revision=44058
2009-11-09 22:42:17 +00:00
Stefan Ginsberg
6fcf0fd7b8
- Set and check for the correct PTE write bits on x86 SMP. The MP kernel is now functional again.
...
svn path=/trunk/; revision=44057
2009-11-09 22:05:36 +00:00
Timo Kreuzer
9edbc02f78
Fix my broken copy pasta, spotted by talley
...
svn path=/branches/ros-amd64-bringup/; revision=44056
2009-11-09 21:49:56 +00:00
Timo Kreuzer
906cec399e
[KE]
...
- Fix KeContextToTrapFrame and KeTrapFrameToContext to use the ExceptionFrame and set CS/SS for CONTEXT_CONTROL flag
- Implement _InternalDispatchException, that sets up the ExceptionRecord and ExceptionFrame and calls KiDispatchException
This fixes wrong register value display in WinDbg
svn path=/branches/ros-amd64-bringup/; revision=44055
2009-11-09 21:44:29 +00:00
Stefan Ginsberg
1a3c56692d
- Fix build with neither KDBG or _WINKD_ defined -- ReactOS KD wrapper uses the safe memory routines too, so only skip kdmemsup.c if compiling for _WINKD_.
...
svn path=/trunk/; revision=44054
2009-11-09 21:38:26 +00:00
Timo Kreuzer
b291738862
[NDK]
...
- Add KEXCEPTION_FRAME
svn path=/branches/ros-amd64-bringup/; revision=44053
2009-11-09 21:03:57 +00:00
Timo Kreuzer
ca606032fe
[NDK]
...
- Add KEXCEPTION_FRAME offsets
svn path=/branches/ros-amd64-bringup/; revision=44052
2009-11-09 19:49:47 +00:00
Johannes Anderwald
43a6379cc0
- Fix bug introduced 18942 revisions ago
...
svn path=/trunk/; revision=44050
2009-11-09 17:43:12 +00:00
Dmitry Gorbachev
db62b33f92
Simple optimization in RApps. Patch by Love Nystrom. Bug #4952 .
...
svn path=/trunk/; revision=44049
2009-11-09 15:34:18 +00:00
Timo Kreuzer
8413bc04b7
fix build of ntoskrnl
...
svn path=/branches/ros-amd64-bringup/; revision=44047
2009-11-09 13:42:36 +00:00
Samuel Serapion
4e273afd0f
Fix ws2_32 64bit build (2 of 2)
...
svn path=/branches/ros-amd64-bringup/; revision=44045
2009-11-09 08:57:37 +00:00
Samuel Serapion
c2da24df73
Fix ws2_32 64bit build (1 of 2)
...
svn path=/branches/ros-amd64-bringup/; revision=44044
2009-11-09 08:56:59 +00:00
Samuel Serapion
bc8ddc9638
Sync with trunk and additional 64bit build hacks^H^H^H^H^H fixes.
...
svn path=/branches/ros-amd64-bringup/; revision=44041
2009-11-09 08:31:11 +00:00
Samuel Serapion
23f1416f6e
Fix 32bit build.
...
svn path=/branches/ros-amd64-bringup/; revision=44040
2009-11-09 08:28:59 +00:00
Samuel Serapion
1f946323bb
Fix mmTaskCreate and mciGetDriverData prototypes per MSDN
...
svn path=/branches/ros-amd64-bringup/; revision=44039
2009-11-09 08:27:48 +00:00
Samuel Serapion
c465970ad0
Fix Build.
...
svn path=/branches/ros-amd64-bringup/; revision=44037
2009-11-09 07:17:03 +00:00
Samuel Serapion
5ad4bf2911
Seems that windows cares about manifests and a mismatched processor architecture is not good. Fix amd64 paint in windows.
...
svn path=/branches/ros-amd64-bringup/; revision=44036
2009-11-09 07:13:48 +00:00
Timo Kreuzer
2e7b3fde50
[MM]
...
- Halfplement MmArmInitSystem, it's broken atm
- Update some variable drfinitions from ULONG to ULONG_PTR
- Add some amd64 specific constants
svn path=/branches/ros-amd64-bringup/; revision=44035
2009-11-09 06:46:31 +00:00
Timo Kreuzer
256a3cb5cc
- Move the hack for MmUpdatePageDir before KeInitializeThread where it belongs.
...
svn path=/branches/ros-amd64-bringup/; revision=44034
2009-11-09 06:29:46 +00:00
Stefan Ginsberg
afd1ab1b6d
- HAL uses HARDWARE_PTE, not MMPTE_HARDWARE, so remove broken SMP fix
...
svn path=/trunk/; revision=44033
2009-11-08 22:17:05 +00:00
Stefan Ginsberg
aaad231bf1
- Fix work around for the cmpxchg8b lock errata work around -- don't set write protection if the kernel hasn't set it yet. Move the code out to HalpBiosDisplayReset so we can keep track of this. Also set the correct bit on SMP systems.
...
svn path=/trunk/; revision=44032
2009-11-08 21:42:28 +00:00