Changeset 7244 in vbox
- Timestamp:
- Mar 3, 2008 4:21:39 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/r0drv/alloc-r0drv.cpp
r7042 r7244 122 122 #ifdef RTR0MEM_STRICT 123 123 pHdr->cbReq = cb; 124 memcpy((uint8_t *)(pHdr + 1) + cb, &g_abFence[0], sizeof(g_abFence));124 memcpy((uint8_t *)(pHdr + 1) + cb, &g_abFence[0], RTR0MEM_FENCE_EXTRA); 125 125 #endif 126 126 return pHdr + 1; … … 148 148 #ifdef RTR0MEM_STRICT 149 149 pHdr->cbReq = cb; 150 memcpy((uint8_t *)(pHdr + 1) + cb, &g_abFence[0], sizeof(g_abFence));150 memcpy((uint8_t *)(pHdr + 1) + cb, &g_abFence[0], RTR0MEM_FENCE_EXTRA); 151 151 return memset(pHdr + 1, 0, cb); 152 152 #else … … 187 187 #ifdef RTR0MEM_STRICT 188 188 pHdrNew->cbReq = cbNew; 189 memcpy((uint8_t *)(pHdrNew + 1) + cbNew, &g_abFence[0], sizeof(g_abFence));190 AssertReleaseMsg(!memcmp((uint8_t *)(pHdrOld + 1) + pHdrOld->cbReq, &g_abFence[0], sizeof(g_abFence)),189 memcpy((uint8_t *)(pHdrNew + 1) + cbNew, &g_abFence[0], RTR0MEM_FENCE_EXTRA); 190 AssertReleaseMsg(!memcmp((uint8_t *)(pHdrOld + 1) + pHdrOld->cbReq, &g_abFence[0], RTR0MEM_FENCE_EXTRA), 191 191 ("pHdr=%p pvOld=%p cb=%zu cbNew=%zu\n" 192 192 "fence: %.*Rhxs\n" 193 193 "expected: %.*Rhxs\n", 194 194 pHdrOld, pvOld, pHdrOld->cb, cbNew, 195 sizeof(g_abFence), (uint8_t *)(pHdrOld + 1) + pHdrOld->cb,196 sizeof(g_abFence), &g_abFence[0]));195 RTR0MEM_FENCE_EXTRA, (uint8_t *)(pHdrOld + 1) + pHdrOld->cb, 196 RTR0MEM_FENCE_EXTRA, &g_abFence[0])); 197 197 #endif 198 198 rtMemFree(pHdrOld); … … 223 223 Assert(!(pHdr->fFlags & RTMEMHDR_FLAG_EXEC)); 224 224 #ifdef RTR0MEM_STRICT 225 AssertReleaseMsg(!memcmp((uint8_t *)(pHdr + 1) + pHdr->cbReq, &g_abFence[0], sizeof(g_abFence)),225 AssertReleaseMsg(!memcmp((uint8_t *)(pHdr + 1) + pHdr->cbReq, &g_abFence[0], RTR0MEM_FENCE_EXTRA), 226 226 ("pHdr=%p pv=%p cb=%zu\n" 227 227 "fence: %.*Rhxs\n" 228 228 "expected: %.*Rhxs\n", 229 229 pHdr, pv, pHdr->cb, pv, 230 sizeof(g_abFence), (uint8_t *)(pHdr + 1) + pHdr->cb,231 sizeof(g_abFence), &g_abFence[0]));230 RTR0MEM_FENCE_EXTRA, (uint8_t *)(pHdr + 1) + pHdr->cb, 231 RTR0MEM_FENCE_EXTRA, &g_abFence[0])); 232 232 #endif 233 233 rtMemFree(pHdr); … … 247 247 RTDECL(void *) RTMemExecAlloc(size_t cb) 248 248 { 249 PRTMEMHDR pHdr = rtMemAlloc(cb , RTMEMHDR_FLAG_EXEC);249 PRTMEMHDR pHdr = rtMemAlloc(cb + RTR0MEM_FENCE_EXTRA, RTMEMHDR_FLAG_EXEC); 250 250 if (pHdr) 251 251 { 252 252 #ifdef RTR0MEM_STRICT 253 memcpy((uint8_t *)(pHdr + 1) + cb, &g_abFence[0], sizeof(g_abFence));253 memcpy((uint8_t *)(pHdr + 1) + cb, &g_abFence[0], RTR0MEM_FENCE_EXTRA); 254 254 #endif 255 255 return pHdr + 1; … … 273 273 { 274 274 #ifdef RTR0MEM_STRICT 275 AssertReleaseMsg(!memcmp((uint8_t *)(pHdr + 1) + pHdr->cbReq, &g_abFence[0], sizeof(g_abFence)),275 AssertReleaseMsg(!memcmp((uint8_t *)(pHdr + 1) + pHdr->cbReq, &g_abFence[0], RTR0MEM_FENCE_EXTRA), 276 276 ("pHdr=%p pv=%p cb=%zu\n" 277 277 "fence: %.*Rhxs\n" 278 278 "expected: %.*Rhxs\n", 279 279 pHdr, pv, pHdr->cb, 280 sizeof(g_abFence), (uint8_t *)(pHdr + 1) + pHdr->cb,281 sizeof(g_abFence), &g_abFence[0]));280 RTR0MEM_FENCE_EXTRA, (uint8_t *)(pHdr + 1) + pHdr->cb, 281 RTR0MEM_FENCE_EXTRA, &g_abFence[0])); 282 282 #endif 283 283 rtMemFree(pHdr);
Note:
See TracChangeset
for help on using the changeset viewer.