MPS issues

Job Priority Title
job003499 critical The MPS issues list looks scary
job001092 essential MPS is not integrated with public cool projects.
job001549 essential MPS assert !AMS_IS_INVALID_COLOUR(seg, i) poolams.c AMSFix
job001621 essential Can't use threads on OS X.
job003359 essential Ambiguous interior pointers do not keep objects alive
job003370 essential Assertion failure in AMS: "grey == TraceSetEMPTY || SegRankSet(seg) != RankSetEMPTY"
job003371 essential MPS spends too much time making system calls
job003384 essential Collector goes mad when low on address space
job003385 essential Performance is poor in large address space
job003439 essential MPS is too hard to use
job003474 essential amcssth test failure on lii6gc and fri3gc
job003494 essential Re-entrancy failure in LDReset
job003496 essential Assertion failure in mps_arena_roots_walk
job003497 essential Messages from assertions sound like bugs in the MPS
job000537 optional Many design documents missing
job000548 optional AMS grain colour doesn't agree with design doc
job000549 optional Blackening an AMS segment can break
job000550 optional BufferEmpty on AMS in mid-collection can break
job001149 optional MPS does not provide sufficient information about addresses
job001150 optional MPS doesn't provide enough feedback information about what it is doing or what it has done
job001151 optional Format methods can't look at other data
job001152 optional The MPS can't be used to simulate a smaller machine
job001550 optional MPS poolams.c AMSFix omits checks: clientRef is within seg; bit index is valid
job001659 optional Culprit analysis is too hard.
job001666 optional No guarantee that all weak references to an object die together.
job001687 optional AWL does not recycle memory to the arena.
job001707 optional VM Arena never shrinks a generation zone set preferences.
job001887 optional MPS mps_arena_committed() is wrong when using mps_arena_class_cl (client arena)
job002175 optional MPS unaligned references are not detected by AMC pools
job003302 optional mps_arena_create fails with deep consistency checks
job003352 optional Instruction emulation not supported on OS X or x86-64
job003387 optional Multiple arenas can corrupt telemetry stream
job003388 optional telemetry system API can corrupt telemetry stream
job003455 optional Frequent ramps can mess up the ramping algorithm and cause performance problems
job003471 optional mps_root_create_table is hard to use without punning
job003476 optional No automated testrun target on Windows
job003477 optional MPS is hard to build and debug on Windows
job003495 optional Assertion failure if you try to create a small arena
job003505 optional MPS incurs large overhead on barrier hits
job003506 optional awlutth test case fails on lii6gc
job003513 optional Arena extension callbacks are undocumented
job003515 optional Can't collect diverse MPS messages in order
job003520 optional MVT assertion gcseg->buffer == NULL in djbench
job003522 optional PoolFix is on the critical path but contains checks
job003523 optional Accessing to weak tables on 64-bit causes them to be scanned.
job000543 nice No MPS programmer's guide
job000677 nice Insufficient stuff has been converted from MMinfo to Ravenbrook Project repository
job000742 nice Some niggles annoy DRJ
job000814 nice Configura cannot manage Lightworks objects with the MPS
job001161 nice there is no human-helpful map of MPS files
job001357 nice Configura cannot use Win32 fibers
job001384 nice MPS unclear constraints on avgSize argument to PoolMV mps_pool_create
job001386 nice MPS website has no FAQ
job001571 nice MPS multiple traces would not work
job001676 nice AMC does not implement weakness in emergency fixing.
job001681 nice AMCHeaderFix is an unnecessary copy.
job001682 nice AMCWalk does not honour its contract
job001688 nice AMC repeatedly allocates and initialises identical SegPrefs
job001708 nice VM Arena's segment placement policy could be improved.
job001709 nice VM Arena uses up zones too quickly.
job001715 nice MPS fails to lower barrier when hit: multiple hits cause slowdown (CONJECTURE)
job001789 nice MPS auto_header format is not tested by main test files
job003318 nice No interface to get collection number from a gc start message
job003324 nice Manual contains little about performance of interface
job003325 nice Purpose of the "class" method of an object format is unclear
job003326 nice Purpose of mps_arena_class_vmnz is unclear
job003327 nice Purpose of reservoirs is unclear
job003328 nice Possible improvement to reserve/commit protocol
job003342 nice mps_arena_unsafe functions are bogus
job003343 nice Documentation could say more about meaning of result codes
job003344 nice Purpose of allocation frames/SNC pool class are unclear
job003348 nice Unclear what happens if a thread dies while registered
job003351 nice Debugging pool classes are hard to use
job003353 nice Collection start reason hard to analyze
job003357 nice AWL is awkward to use
job003374 nice No documentation about low memory situations
job003448 nice mps_arena_vm_growth is not documented
job003480 nice awluthe test failure on OS X
job003482 nice Test suite doesn't test error paths
job003484 nice MPS has predictable address space layout
job003485 nice Information about cause of errors is lost
job003487 nice Pool debug options are awkward to pass
job003493 nice No recovery mode after assertion failure
job003502 nice Race condition in EventInit()
job003508 nice Little in manual about in-band headers
job003509 nice MVT and MVFF use segments unnecessarily
job003524 nice Arena states are confusing