diff --git a/mps/design/object-debug.txt b/mps/design/object-debug.txt index 1c9a03cb9ad..627f8352c3a 100644 --- a/mps/design/object-debug.txt +++ b/mps/design/object-debug.txt @@ -296,10 +296,6 @@ allocate the tag. We free the block allocated for the object and fail the allocation, so that the client gets a chance to do whatever low-memory actions they might want to do. -.. note:: - - Should this depend on whether there is anything in the reservoir? - This breaks the one-to-one relationship between tags and objects, so some checks cannot be made, but we do count the "lost" tags. diff --git a/mps/design/poolawl.txt b/mps/design/poolawl.txt index b8b74820645..609d236320e 100644 --- a/mps/design/poolawl.txt +++ b/mps/design/poolawl.txt @@ -481,7 +481,7 @@ _`.fun.awlsegcreate.where`: The segment is allocated using a generation preference, using the generation number stored in the ``AWLStruct`` (the ``gen`` field), see `.poolstruct.gen`_ above. -``Res awlSegInit(Seg seg, Pool pool, Addr base, Size size, Bool reservoirPermit, va_list args)`` +``Res awlSegInit(Seg seg, Pool pool, Addr base, Size size, ArgList args)`` _`.fun.awlseginit`: Init method for ``AWLSegClass``, called for ``SegAlloc()`` whenever an ``AWLSeg`` is created (see diff --git a/mps/design/protocol.txt b/mps/design/protocol.txt index bddebf3f2a3..4dca17bcf97 100644 --- a/mps/design/protocol.txt +++ b/mps/design/protocol.txt @@ -417,7 +417,7 @@ failure-case code for an "init" method, making use of the "finish" anti-method:: static Res mySegInit(Seg seg, Pool pool, Addr base, Size size, - Bool reservoirPermit, va_list args) + ArgList args) { SegClass super; MYSeg myseg; @@ -437,12 +437,12 @@ anti-method:: /* Initialize the superclass fields first via next-method call */ super = (SegClass)SUPERCLASS(MYSegClass); - res = super->init(seg, pool, base, size, reservoirPermit, args); + res = super->init(seg, pool, base, size, args); if(res != ResOK) goto failNextMethods; /* Create an object after the next-method call */ - res = ControlAlloc(&obj1, arena, sizeof(OBJ1Struct), reservoirPermit); + res = ControlAlloc(&obj1, arena, sizeof(OBJ1Struct)); if(res != ResOK) goto failObj1; diff --git a/mps/manual/source/topic/telemetry.rst b/mps/manual/source/topic/telemetry.rst index 5ee6bb000e1..0f107985c20 100644 --- a/mps/manual/source/topic/telemetry.rst +++ b/mps/manual/source/topic/telemetry.rst @@ -125,14 +125,14 @@ as the `Time Stamp Counter `_ on IA-32 and x86-64, if one is available. All numbers are given in hexadecimal. :: - 000AE03973336E3C 002B VMCreate vm:00000001003FC000 base:00000001003FD000 limit:00000001003FE000 - 000AE0397333BC6D 002D VMMap vm:00000001003FC000 base:00000001003FD000 limit:00000001003FE000 - 000AE0397334DF9F 001A Intern stringId:0000000000000002 string:"Reservoir" - 000AE0397334E0A0 001B Label address:00000001078C85B8["Reservoir"] stringId:0000000000000002 - 000AE03973352375 0015 PoolInit pool:00000001003FD328 arena:00000001003FD000 poolClass:00000001078C85B8["Reservoir"] - 000AE039733592F9 002B VMCreate vm:00000001003FE000 base:00000001003FF000 limit:000000010992F000 - 000AE0397335C8B5 002D VMMap vm:00000001003FE000 base:00000001003FF000 limit:0000000107930000 - 000AE03973361D5A 0005 ArenaCreateVM arena:00000001003FD000 userSize:0000000002000000 chunkSize:0000000002000000 + 000021C9DB3812C7 0075 EventClockSync clock:0000000000001EE3 + 000021C9DB39E2FB 002B VMInit vm:00007FFF5429C4B8 base:000000010BA4A000 limit:000000010BA4B000 + 000021C9DB3A5630 002D VMMap vm:00007FFF5429C4B8 base:000000010BA4A000 limit:000000010BA4B000 + 000021C9DB3E6BAA 001A Intern stringId:0000000000000002 string:"MFS" + 000021C9DB3E6E17 001B Label address:000000010BA0C5D8["MFS"] stringId:0000000000000002 + 000021C9DB3EB6F8 0044 PoolInitMFS pool:000000010BA4A360 arena:000000010BA4A000 extendBy:0000000000001000 extendSelf:False unitSize:0000000000000030 + 000021C9DB3EFE3B 002B VMInit vm:00007FFF5429C3D0 base:000000010BC84000 limit:000000010CC24000 + 000021C9DB3F33F3 002D VMMap vm:00007FFF5429C3D0 base:000000010BC84000 limit:000000010BC85000 You can search through the telemetry for events related to particular addresses of interest. @@ -269,14 +269,14 @@ Here's some example output. The first column contains the timestamp of the event, the second column contains the event type, and remaining columns contain parameters related to the event. :: - 000AE03973336E3C 2B 1003FC000 1003FD000 1003FE000 - 000AE0397333BC6D 2D 1003FC000 1003FD000 1003FE000 - 000AE0397334DF9F 1A 2 "Reservoir" - 000AE0397334E0A0 1B 1078C85B8 2 - 000AE03973352375 15 1003FD328 1003FD000 1078C85B8 - 000AE039733592F9 2B 1003FE000 1003FF000 10992F000 - 000AE0397335C8B5 2D 1003FE000 1003FF000 107930000 - 000AE03973361D5A 5 1003FD000 2000000 2000000 + 000021C9DB3812C7 75 1EE3 + 000021C9DB39E2FB 2B 7FFF5429C4B8 10BA4A000 10BA4B000 + 000021C9DB3A5630 2D 7FFF5429C4B8 10BA4A000 10BA4B000 + 000021C9DB3E6BAA 1A 2 "MFS" + 000021C9DB3E6E17 1B 10BA0C5D8 2 + 000021C9DB3EB6F8 44 10BA4A360 10BA4A000 1000 0 30 + 000021C9DB3EFE3B 2B 7FFF5429C3D0 10BC84000 10CC24000 + 000021C9DB3F33F3 2D 7FFF5429C3D0 10BC84000 10BC85000 .. index::