Hello all,
I am trying to get some info on leaked memory on an application I am working on. I would like to ask you if you are using memguard and if you know if it works fine on X5000. I am experiencing an ISI crash if I run memguard and have it enabled when I run my application.
The version I used with memguard was compiled with -gstabs, which as much as I know is necessary to get information about the line of the program when you check specific memory addresses. But I might be wrong as well.
Do you know if a newer version than the one that is available on OS4Depot exists? Are you using other applications to check for memory leaks and other possible issues?
Do I need to use the debug version of kernel when I do such checks?
I tried also on a microAmigaOne that I have, where memguard didn't crash when it was enabled, but the results all pointed to kernel.
Below is the output I got.
New Shell process 7 7.Programs:Programming/MemGuard> MemGuard Client=MediaVault.debug MemGuard 1.15 (2.1.2009) installed. CTRL-C : unassigned CTRL-D : print munglist CTRL-E : enable/disable MemGuard CTRL-F : show some internal stats NOTE: To stop this program you must reboot! 0 buckets of 1024 used, max chain size 0, avg 0, total 0 0 bytes overhead caused by walls 1 MemHeaders allocated, that's 65504 bytes, 57280 bytes are free 0 allocations were tracked by this program, 0 are already freed Task: [8] "MediaVault.debug" (69D67820) -- 6A2B0040 = AllocVecTagList(3988, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2C0040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (67F375D0) -- 6A1C2138 = AllocPooled(6783DF60, 131) LR 7FD067CC : "LIBS:bsdsocket.library" offset 0000 segment 367CC CTR 7FAEDA98 : "MemGuard" offset 0000 segment 8A98 Task: [6] "MediaVault.debug" (67F375D0) -- 6A1C2040 = AllocVecTagList(1044, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (67DC7280) -- 6A1C2248 = AllocPooled(6783DF60, 165) LR 7FD067CC : "LIBS:bsdsocket.library" offset 0000 segment 367CC CTR 7FAEDA98 : "MemGuard" offset 0000 segment 8A98 Task: [8] "MediaVault.debug" (69D67820) -- 67019610 = AllocVecTagList(1172, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2C4040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67631040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 675E2040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (67F237E0) -- 67680750 = AllocVecTagList(32, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2C1380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67751040 = AllocVecTagList(8212, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744610 = AllocVecTagList(28, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 678C0040 = AllocVecTagList(32788, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744B10 = AllocVecTagList(16, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67019040 = AllocVecTagList(1172, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68227040 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68227440 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68227840 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 680C9040 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68227C40 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 680C9440 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 680C9840 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 680C9C40 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2C8040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744E30 = AllocVecTagList(15, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (67DC7280) -- 67754040 = AllocVecTagList(8340, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67764040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67883040 = AllocVecTagList(32788, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 675D6040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6821A040 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6821A440 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6821A840 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6821AC40 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744C50 = AllocVecTagList(20, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2926C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2B26C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2C26C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (67DC7280) -- 675C4180 = AllocVecTagList(32, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 675E06C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6701A780 = AllocVecTagList(1232, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2AC040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744A70 = AllocVecTagList(16, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744F70 = AllocVecTagList(12, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68C53040 = AllocVecTagList(1172, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 678B7040 = AllocVecTagList(32788, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 675DA040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2C9380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67626380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67765380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 675D7380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744D90 = AllocVecTagList(16, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6701A1B0 = AllocVecTagList(1172, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (67F375D0) -- 67726380 = AllocVecTagList(32, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 682C89A0 = AllocVecTagList(84, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 676336C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 678C9040 = AllocVecTagList(32788, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 66F05E10 = AllocVecTagList(16, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (67F375D0) -- 6774B040 = AllocVecTagList(8340, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6787A040 = AllocVecTagList(32788, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 677446B0 = AllocVecTagList(28, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67E14C40 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744BB0 = AllocVecTagList(10, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6762D040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67A79040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67019BE0 = AllocVecTagList(1172, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 675DE040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2AD380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 69C83780 = AllocVecTagList(1172, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 677449D0 = AllocVecTagList(20, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68FA1380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 675DB380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744ED0 = AllocVecTagList(20, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 66F05550 = AllocVecTagList(28, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2CA6C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67F36440 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 676276C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 66F05A50 = AllocVecTagList(28, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 66FC6040 = AllocVecTagList(10772, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EC7040 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6813BAD0 = AllocVecTagList(40, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67F36C40 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EC7440 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6782E040 = AllocVecTagList(32788, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 675D86C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EC7840 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 69C831B0 = AllocVecTagList(1172, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67744CF0 = AllocVecTagList(23, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (680CA590) -- 676A5CF0 = AllocVecTagList(32, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68C541B0 = AllocVecTagList(1172, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68F98040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EC9040 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EC9440 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EC9840 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6762E380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EC9C40 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EAA040 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EAA440 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 66F05190 = AllocVecTagList(32, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EAA840 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6A2AE6C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 66F05690 = AllocVecTagList(20, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67EAAC40 = AllocVecTagList(820, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68FA26C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 675DC6C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 66F054B0 = AllocVecTagList(28, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68F9C040 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67E5E040 = AllocVecTagList(16404, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 66F04BD0 = AllocVecTagList(128, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 66F04CD0 = AllocVecTagList(128, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68F99380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 6762F6C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (67F375D0) -- 67D2E760 = AllocVec(672, 00010001) LR 0143660C : "Kickstart/kernel" offset 0000 segment 3660C CTR 7FAED930 : "MemGuard" offset 0000 segment 8930 Task: [8] "MediaVault.debug" (69D67820) -- 66F05CD0 = AllocVecTagList(12, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 67A7B6C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68F9D380 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [8] "MediaVault.debug" (69D67820) -- 68F9A6C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 Task: [6] "MediaVault.debug" (67F375D0) -- 67D7B9E0 = AllocVec(1948, 00010001) LR 0145CF34 : "Kickstart/kernel" offset 0000 segment 5CF34 CTR 7FAED930 : "MemGuard" offset 0000 segment 8930 Task: [8] "MediaVault.debug" (69D67820) -- 68F9E6C0 = AllocVecTagList(4116, AVT_Type, 00001000, ...) LR 014325B8 : "Kickstart/kernel" offset 0000 segment 325B8 CTR 7FAEDBC4 : "MemGuard" offset 0000 segment 8BC4 119 buckets of 1024 used, max chain size 2, avg 1, total 132 16896 bytes overhead caused by walls 2 MemHeaders allocated, that's 131008 bytes, 114176 bytes are free 24412 allocations were tracked by this program, 24280 are already freed
Hello George,
Memguard is known to NOT work on the X5000, and possibly on other systems. Whether it's a hardware thing or a Final Edition thing I don't know. All I can say is that it definitely worked fine on my Sam440 before OS4.1 FE.
AmigaOne X5000-020 / 2GB RAM / Sapphire Pulse Radeon RX 560 / AmigaOS 4.1 Final Edition Update 2
@trixie
Thank you for your reply. I have to investigate it more and see what we can get from it.
The biggest problem that I recall from years ago about discussions regarding programs like this, was that they didn't work properly with the memory pools and task-centic private buffers, they also made some asumptions about internal constructs like AllocVec() allocations having the size at -4 offset, there were other issues, but it's too long ago, I don't remember the specifics.
I think someone told me that one of them would track all memory allocated by a process but didn't know that some allocations are done at run-time by various OS components like dos.library that were not released straight away. For example, when a program starts in a new process, and that program calls say SetDate() for the first time, or any API function that takes a string name parameter for that matter, DOS will allocate a 4K buffer for a private memory list stored in that process' structure, for later use.
Every time after that when the program calls a string-input-name function, it reuses that same path buffer, rather than constantly allocating and freeing them all the time, which takes quite some time when you do it a lot.
Only when the process ends (or crashes) do these private buffers get freed, unfortunately these tools apparently don't know about this behaviour and complains when a synchronous CLI launched program exits, that it hasn't freed the 4K buffer, because as you know, the same CLI processes is reused over and over again until ENDCLI is issued.
So, it will be difficult to make one of these kind of tools, not only because there is internal system knowledge required to do so, but has to be updated frequently due to the constant evolution of the various API's.
I know that Thomas has a way of tracking memory in Exec, but that method doesn't have an API for third part tools to use, AFAIK.