Author: greatlrd
Date: Sat Mar 3 13:33:22 2007
New Revision: 25968
URL: http://svn.reactos.org/svn/reactos?rev=25968&view=rev
Log:
update my private doc
Modified:
branches/ros-branch-0_3_1/reactos/regress_greatlord.rtf
Modified: branches/ros-branch-0_3_1/reactos/regress_greatlord.rtf
URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_3_1/reactos/regres…
==============================================================================
--- branches/ros-branch-0_3_1/reactos/regress_greatlord.rtf (original)
+++ branches/ros-branch-0_3_1/reactos/regress_greatlord.rtf Sat Mar 3 13:33:22 2007
@@ -13,16 +13,19 @@
\par
\par
\par
-\b VMWARE\par
+\b Real Hardware / VMWARE\par
\par
-\b0 1. AMD64 CPU with 32/64 bits OS VBE drv will not working in 3 boot\line\par
- workaround : powerdown the virtualmachine before you boot to 3 boot then wait \line few second. then power it up. it works for me. \par
+\b0 1. AMD 64/AMD XP CPU with 32/64 bits OS VBE drv will not working in 3 boot\line\par
+ workaround : none \par
\line posible fix/patch : ntoskrnl/ke/trap.s line 1559 \par
it is \lang1024\f1 NotV86: function that need handling of\par
CheckPrivilegedInstruction2 implement when it\par
is done. This bug will maybe disaper or maybe\line some other serius bug will popup. \lang1033\f0\par
\par
-2. VMWARE own display drv can not change the reslutions in ReactOS.\line workaround : unkonwn \b\par
+\par
+\b VMWARE\par
+\par
+\b0 1. VMWARE own display drv can not change the reslutions in ReactOS.\line workaround : unkonwn \b\par
\b0 posible fix/patch : check if all key have been created as they should.\par
if not we need fix our vmware drv install to create \line thuse keys. posible regress is the cmlib that \par
correct behovir of some api.\par
@@ -43,6 +46,12 @@
6. OpenGL\line\line\b Known regress from 0.3.0 to 0.3.1 branch\b0\par
1. cmd md\par
2. vmware can not change resultions. \par
+\par
+\b Known problem \par
+\b0 pseh can go into a loop, in some conditions,\par
+but it is not a bug in pseh, it some where else\par
+some value getting fill in wrong or restore wrong\par
+\line\par
\b\line\par
\par
}
Author: ion
Date: Sat Mar 3 08:41:14 2007
New Revision: 25966
URL: http://svn.reactos.org/svn/reactos?rev=25966&view=rev
Log:
- Copy the entire drivers in memory, not just their mappable sections, since WinDBG (and probably other things) use "SizeOfImage" in the header to figure out when the image ends, but we map considerably less, creating overlaps.
Modified:
trunk/reactos/boot/freeldr/freeldr/arch/i386/loader.c
Modified: trunk/reactos/boot/freeldr/freeldr/arch/i386/loader.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/arch/…
==============================================================================
--- trunk/reactos/boot/freeldr/freeldr/arch/i386/loader.c (original)
+++ trunk/reactos/boot/freeldr/freeldr/arch/i386/loader.c Sat Mar 3 08:41:14 2007
@@ -545,29 +545,13 @@
NtHeader = RtlImageNtHeader(Base);
Section = IMAGE_FIRST_SECTION(NtHeader);
- /* Determine the size of the module */
- for (i = 0; i < NtHeader->FileHeader.NumberOfSections; i++)
- {
- /* Skip this section if we're not supposed to load it */
- if (!(Section[i].Characteristics & IMAGE_SCN_TYPE_NOLOAD))
- {
- /* Add the size of this section into the total size */
- Size = Section[i].VirtualAddress + Section[i].Misc.VirtualSize;
- DriverSize = max(DriverSize, Size);
- }
- }
-
- /* Round up the driver size to section alignment */
- DriverSize = ROUND_UP(DriverSize, NtHeader->OptionalHeader.SectionAlignment);
-
/* Allocate memory for the driver */
+ DriverSize = NtHeader->OptionalHeader.SizeOfImage;
LoadBase = MmAllocateMemoryAtAddress(DriverSize, LoadBase);
ASSERT(LoadBase);
/* Copy headers over */
- RtlMoveMemory(LoadBase,
- Base,
- NtHeader->OptionalHeader.SizeOfHeaders);
+ RtlMoveMemory(LoadBase, Base, NtHeader->OptionalHeader.SizeOfHeaders);
/* Copy image sections into virtual section */
for (i = 0; i < NtHeader->FileHeader.NumberOfSections; i++)
@@ -644,7 +628,7 @@
NextModuleBase = ROUND_UP(NextModuleBase + ImageSize, PAGE_SIZE);
/* Successful load! */
- //DbgPrint("Image: %s loaded at: %p\n", Name, ImageBase);
+ DbgPrint("Image: %s loaded at: %p\n", Name, ImageBase);
/* Load HAL if this is the kernel */
if (ImageType == 1) FrLdrLoadImage("hal.dll", 10, FALSE);