Changeset 1582
- Timestamp:
- Oct 12, 2004, 12:56:56 AM (21 years ago)
- Location:
- trunk/src/emx/src/lib/sys
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/emx/src/lib/sys/DosAllocMemEx.c
-
Property cvs2svn:cvs-rev
changed from
1.2
to1.3
r1581 r1582 45 45 *******************************************************************************/ 46 46 static int allocAtAddress(void *pvReq, ULONG cbReq, ULONG fReq); 47 #ifdef DEBUG_ME 48 static void dumpMemFlags(void *pvIn); 49 #endif 50 47 51 48 52 … … 82 86 */ 83 87 FS_SAVE_LOAD(); 88 #ifdef DEBUG_ME 89 LIBCLOG_MSG2("Before:\n"); 90 if (flFlags & OBJ_LOCATION) 91 dumpMemFlags(*ppv); 92 else if (flFlags & OBJ_ANY) 93 dumpMemFlags((void *)0x20000001); 94 else 95 dumpMemFlags((void *)0x10000001); 96 #endif 84 97 if (flFlags & OBJ_LOCATION) 85 98 rc = allocAtAddress(*ppv, cb, flFlags & ~(OBJ_LOCATION | OBJ_FORK)); 86 99 else 87 100 rc = DosAllocMem(ppv, cb, flFlags & ~(OBJ_FORK)); 101 #ifdef DEBUG_ME 102 LIBCLOG_MSG2("After:\n"); 103 dumpMemFlags(*ppv); 104 #endif 88 105 if (rc) 89 106 { … … 193 210 } 194 211 195 rc = DosAllocMem( pvNew, cbReq, fReq);212 rc = DosAllocMem(&pvNew, cbReq, fReq); 196 213 if (rc || (char *)pvNew > (char *)pvReq) 197 214 break; /* we failed! */ … … 222 239 } 223 240 241 #ifdef DEBUG_ME 242 /** 243 * Dumps the flags of a memory region. 244 * @param pv Address in that region. 245 */ 246 static void dumpMemFlags(void *pvIn) 247 { 248 LIBCLOG_MSG2("address size flags (dumpMemFlags)\n"); 249 void *pv = (uintptr_t)pvIn < 0x20000000 ? (char *)0x10000 : (char *)0x20000000; 250 void *pvMax = (uintptr_t)pvIn < 0x20000000 ? (char *)0x20000000 : (char *)0xc0000000; 251 int fLastErr = 0; 252 while ((uintptr_t)pv < (uintptr_t)pvMax) 253 { 254 ULONG flRegion = ~0; 255 ULONG cbRegion = ~0; 256 APIRET rc = DosQueryMem(pv, &cbRegion, &flRegion); 257 if (!rc) 258 { 259 LIBCLOG_MSG2("%08lx %08lx %08lx\n", (ULONG)pv, cbRegion, flRegion); 260 pv = (char *)pv + ((cbRegion + 0xfff) & ~0xfff); 261 fLastErr = 0; 262 } 263 else 264 { 265 if (!fLastErr) 266 LIBCLOG_MSG2("%08lx rc=%ld\n", (ULONG)pv, rc); 267 fLastErr = 1; 268 pv = (char *)(((uintptr_t)pv + 0x1fff) & ~0xfff); 269 } 270 } 271 } 272 #endif -
Property cvs2svn:cvs-rev
changed from
-
trunk/src/emx/src/lib/sys/DosEx.c
-
Property cvs2svn:cvs-rev
changed from
1.4
to1.5
r1581 r1582 976 976 { 977 977 int rc; 978 rc = DosAllocMemEx(&pEntry->u.MemAlloc.pv, pEntry->u.MemAlloc.cb, pEntry->u.MemAlloc.flFlags);979 LIBC_ASSERTM(!rc, "DosAllocMemEx(={%p},%#lx,%#lx ) -> rc=%d\n",978 rc = DosAllocMemEx(&pEntry->u.MemAlloc.pv, pEntry->u.MemAlloc.cb, (pEntry->u.MemAlloc.flFlags & ~OBJ_FORK) | OBJ_LOCATION); 979 LIBC_ASSERTM(!rc, "DosAllocMemEx(={%p},%#lx,%#lx | OBJ_LOCATION) -> rc=%d\n", 980 980 pEntry->u.MemAlloc.pv, pEntry->u.MemAlloc.cb, pEntry->u.MemAlloc.flFlags, rc); 981 981 if (rc) -
Property cvs2svn:cvs-rev
changed from
-
trunk/src/emx/src/lib/sys/libcfork.c
-
Property cvs2svn:cvs-rev
changed from
1.5
to1.6
r1581 r1582 134 134 static int forkBthCallbacksCompare(const void *pv1, const void *pv2); 135 135 static int forkBthCallbacksCall(__LIBC_PFORKCALLBACK *papCallbacks, __LIBC_PFORKHANDLE pForkHandle, __LIBC_FORKOP enmOperation); 136 static void forkBthDumpMemFlags(void *pv); 137 136 138 137 139 … … 2058 2060 if (rc) 2059 2061 { 2062 forkBthDumpMemFlags(pChunk->pv); 2060 2063 LIBC_ASSERTM_FAILED("DosSetMem(%p, %08x, %08lx) failed with rc=%d\n", pChunk->pv, pChunk->cbVirt, flFlags, rc); 2061 2064 rc = -__libc_native2errno(rc); … … 2433 2436 } 2434 2437 2438 /** 2439 * Dumps the flags of a memory region. 2440 * @param pv Address in that region. 2441 */ 2442 static void forkBthDumpMemFlags(void *pvIn) 2443 { 2444 #if 0 2445 LIBCLOG_MSG2("address size flags (forkBthDumpMemFlags)\n"); 2446 void *pv = (uintptr_t)pvIn < 0x20000000 ? (char *)0x10000 : (char *)0x20000000; 2447 void *pvMax = (uintptr_t)pvIn < 0x20000000 ? (char *)0x20000000 : (char *)0xc0000000; 2448 int fLastErr = 0; 2449 while ((uintptr_t)pv < (uintptr_t)pvMax) 2450 { 2451 ULONG flRegion = ~0; 2452 ULONG cbRegion = ~0; 2453 APIRET rc = DosQueryMem(pv, &cbRegion, &flRegion); 2454 if (!rc) 2455 { 2456 LIBCLOG_MSG2("%08lx %08lx %08lx\n", (ULONG)pv, cbRegion, flRegion); 2457 pv = (char *)pv + ((cbRegion + 0xfff) & ~0xfff); 2458 fLastErr = 0; 2459 } 2460 else 2461 { 2462 if (!fLastErr) 2463 LIBCLOG_MSG2("%08lx rc=%ld\n", (ULONG)pv, rc); 2464 fLastErr = 1; 2465 pv = (char *)(((uintptr_t)pv + 0x1fff) & ~0xfff); 2466 } 2467 } 2468 #endif 2469 } 2470 -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.