1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 08:43:40 -07:00
Commit graph

190 commits

Author SHA1 Message Date
Richard Brooksby
44f80af1ec Merging branch mps/branch/2016-03-13/without-reservation into master sources.
Copied from Perforce
 Change: 190106
 ServerID: perforce.ravenbrook.com
2016-03-15 13:19:27 +00:00
Richard Brooksby
d54be414d9 Merging branch/2016-03-12/pause into the master sources.
Copied from Perforce
 Change: 190053
 ServerID: perforce.ravenbrook.com
2016-03-15 06:31:08 +00:00
Gareth Rees
2a3c4e0590 Address points made by rb in review <https://info.ravenbrook.com/mail/2016/03/14/18-48-19/0/>
Copied from Perforce
 Change: 190031
 ServerID: perforce.ravenbrook.com
2016-03-14 20:10:14 +00:00
Richard Brooksby
1025b28674 Eliminating withreservoirpermit and all its variants.
Copied from Perforce
 Change: 190005
 ServerID: perforce.ravenbrook.com
2016-03-13 21:04:01 +00:00
Richard Brooksby
cc6262ae66 Basic removal of the reservoir pool from code and design.
Copied from Perforce
 Change: 190000
 ServerID: perforce.ravenbrook.com
2016-03-13 20:32:24 +00:00
Gareth Rees
66e0d30340 Catch-up merge from branch/2015-08-25/tradeoff to branch/2016-03-12/pause (to pick up the morework value in arenapoll).
Copied from Perforce
 Change: 189918
 ServerID: perforce.ravenbrook.com
2016-03-12 20:32:41 +00:00
Gareth Rees
c05c8a5609 Documentation and interface for pause time control (no implementation yet).
Copied from Perforce
 Change: 189915
 ServerID: perforce.ravenbrook.com
2016-03-12 20:25:33 +00:00
Richard Brooksby
32d42e00cd Catch-up merge from master sources to branch/2015-08-25/tradeoff.
Copied from Perforce
 Change: 189891
 ServerID: perforce.ravenbrook.com
2016-03-12 15:13:15 +00:00
Richard Brooksby
804f15dead Removing the mostly unused size component of the closure convention.
Copied from Perforce
 Change: 189503
 ServerID: perforce.ravenbrook.com
2016-03-01 17:20:50 +00:00
Richard Brooksby
e9eeb7688f Improving detail of design.mps.bootstrap.land.sol and cross-referencing from source code.
Copied from Perforce
 Change: 189345
 ServerID: perforce.ravenbrook.com
2016-02-25 23:43:50 +00:00
Richard Brooksby
078ac268d5 Catch-up merge from branch/2015-08-06/config to remove arenaconfigure.
Copied from Perforce
 Change: 189335
 ServerID: perforce.ravenbrook.com
2016-02-25 22:59:06 +00:00
Richard Brooksby
8d622806d0 Removing unused function arenascannable.
Reinstate when needed. See <https://info.ravenbrook.com/mail/2016/02/17/13-05-54/0/>.

Copied from Perforce
 Change: 189292
 ServerID: perforce.ravenbrook.com
2016-02-25 17:09:09 +00:00
Richard Brooksby
f8341520c2 Catch-up merge from master sources.
Copied from Perforce
 Change: 189265
 ServerID: perforce.ravenbrook.com
2016-02-17 11:04:51 +00:00
Richard Brooksby
9939dd3d3b Catch-up merge from master sources.
Copied from Perforce
 Change: 189140
 ServerID: perforce.ravenbrook.com
2016-02-11 23:42:07 +00:00
Richard Brooksby
9eb9063e80 Ensuring landfinish doesn't try treecheck on unmapped memory. see <https://info.ravenbrook.com/mail/2016/02/10/14-42-20/0/>.
Copied from Perforce
 Change: 189121
 ServerID: perforce.ravenbrook.com
2016-02-10 15:14:21 +00:00
Richard Brooksby
43741faecf Catch up merge from master sources.
Copied from Perforce
 Change: 189088
 ServerID: perforce.ravenbrook.com
2016-02-03 16:56:04 +00:00
Richard Brooksby
e732cd64f0 Removing result code from arenasetsparecommitlimit since it can never fail.
See <https://info.ravenbrook.com/mail/2016/01/15/11-56-45/0>.

Copied from Perforce
 Change: 189084
 ServerID: perforce.ravenbrook.com
2016-02-03 16:51:31 +00:00
Richard Brooksby
e64e5b2e25 Backing out the introduction of mps_arena_configure. see <https://info.ravenbrook.com/mail/2016/01/15/11-56-45/0>.
Copied from Perforce
 Change: 189081
 ServerID: perforce.ravenbrook.com
2016-02-03 15:52:05 +00:00
Richard Brooksby
b75a753e91 Removing arena configure method from arena classes.
Copied from Perforce
 Change: 189080
 ServerID: perforce.ravenbrook.com
2016-01-30 20:16:30 +00:00
Richard Brooksby
2dbb15a869 Fixing uninitialised variable warning from gcc 5.2.1.
Copied from Perforce
 Change: 189069
 ServerID: perforce.ravenbrook.com
2016-01-30 19:58:10 +00:00
Richard Brooksby
1ac6033058 Catch-up merge from masters.
Copied from Perforce
 Change: 188928
 ServerID: perforce.ravenbrook.com
2016-01-20 11:04:09 +00:00
Gareth Rees
5ab2c1f66b Add a return value to arenasetsparecommitlimit, as suggested by nb in review.
Copied from Perforce
 Change: 188287
 ServerID: perforce.ravenbrook.com
2015-09-08 16:36:48 +01:00
Gareth Rees
6ea9bc7894 Rename mps_key_arena_commit_limit and mps_key_arena_spare_commit_limit as mps_key_commit_limit and mps_key_spare_commit_limit respectively, as suggested by nb in review.
Copied from Perforce
 Change: 188286
 ServerID: perforce.ravenbrook.com
2015-09-08 16:21:27 +01:00
Gareth Rees
2979b99c64 Aver that results of arenaavail, arenacollectable and arenascannable are non-negative.
Copied from Perforce
 Change: 188207
 ServerID: perforce.ravenbrook.com
2015-09-03 10:12:18 +01:00
Gareth Rees
7cc5a2d8f6 Catch-up merge from branch/2015-08-11/policy to branch/2015-08-25/tradeoff.
Copied from Perforce
 Change: 188176
 ServerID: perforce.ravenbrook.com
2015-08-25 19:35:03 +01:00
Gareth Rees
46280a07ab New function policycollectiontime estimates the time needed to collect the arena. mysterious constants are given names and moved to config.h.
Copied from Perforce
 Change: 188160
 ServerID: perforce.ravenbrook.com
2015-08-21 15:27:14 +01:00
Gareth Rees
2097678a37 New module policy.c.
Copied from Perforce
 Change: 188152
 ServerID: perforce.ravenbrook.com
2015-08-19 15:03:47 +01:00
Gareth Rees
1e2d5dd4d8 Catch-up merge from master sources to branch/2015-08-06/config.
Copied from Perforce
 Change: 188146
 ServerID: perforce.ravenbrook.com
2015-08-14 16:35:07 +01:00
Gareth Rees
008ac14cdb Improve organization and naming of arena's free land initialization and finish code, following review by nb <https://info.ravenbrook.com/mail/2015/08/11/15-52-34/0/>.
Copied from Perforce
 Change: 188143
 ServerID: perforce.ravenbrook.com
2015-08-14 10:30:16 +01:00
Gareth Rees
b5f1802c6b Apply commit limit (and spare commit limit) during arena creation, to avoid exceeding the limit and then discovering that we've done so.
Add test case for arena hitting commit limit during creation.

Copied from Perforce
 Change: 188106
 ServerID: perforce.ravenbrook.com
2015-08-10 15:27:26 +01:00
Gareth Rees
56e56e4ff4 Catch-up merge from branch/2015-08-10/arena-create to branch/2015-08-06/config.
Copied from Perforce
 Change: 188104
 ServerID: perforce.ravenbrook.com
2015-08-10 12:49:36 +01:00
Gareth Rees
a834298be6 Tear down arena correctly if controlinit fails.
Copied from Perforce
 Change: 188100
 ServerID: perforce.ravenbrook.com
2015-08-10 11:43:17 +01:00
Gareth Rees
84347b9bbe Merge branch/2014-09-29/reserved into the master sources.
Copied from Perforce
 Change: 188090
 ServerID: perforce.ravenbrook.com
2015-08-07 16:33:43 +01:00
Gareth Rees
9863533bfc The primary chunk is always the last chunk to be removed, so assert that. review suggestion from rb; see <https://info.ravenbrook.com/mail/2015/08/07/13-56-51/0/>
Copied from Perforce
 Change: 188089
 ServerID: perforce.ravenbrook.com
2015-08-07 16:14:50 +01:00
Gareth Rees
098b4da32d New function mps_arena_configure provides keyword argument interface to changing the properties of an arena.
New keyword arguments MPS_KEY_ARENA_COMMIT_LIMIT and MPS_KEY_SPARE_ARENA_COMMIT_LIMIT can be passed to mps_arena_create_k or mps_arena_configure.
Deprecate mps_arena_commit_limit_set and mps_arena_spare_commit_limit_set.

Copied from Perforce
 Change: 188085
 ServerID: perforce.ravenbrook.com
2015-08-06 17:02:51 +01:00
Gareth Rees
413a36fbcf Fix comment (function is named vmarenamap, not vmarenamap).
Copied from Perforce
 Change: 187965
 ServerID: perforce.ravenbrook.com
2015-06-19 12:01:01 +01:00
Gareth Rees
66dfd1a69a Improved assertion messages when a required keyword argument is not found. instead of "unreachable code", the assertion message is the name of the missing key.
Copied from Perforce
 Change: 187267
 ServerID: perforce.ravenbrook.com
2014-10-14 22:05:30 +01:00
Gareth Rees
aad69b12f1 Make arenahasaddr work for all pools (not just for pools with segments).
Copied from Perforce
 Change: 187108
 ServerID: perforce.ravenbrook.com
2014-10-02 09:13:21 +01:00
Gareth Rees
943471d015 Store reserved address space associated with chunk in a field in the chunkstruct, as suggested by rb in <https://info.ravenbrook.com/mail/2014/10/01/13-55-44/0/>.
Copied from Perforce
 Change: 187104
 ServerID: perforce.ravenbrook.com
2014-10-01 21:40:50 +01:00
Gareth Rees
f01b9b7bb5 Document the behaviour of committed (memory marked as in use) and spare_committed (always zero) in the client arena class.
Account for (and check) committed memory in the client arena class.
Can't check arena->committed <= arena->reserved in ArenaCheck, but can in ClientArenaCheck.
Rename ClientFree to ClientArenaFree to match the naming convention elsewhere.

Copied from Perforce
 Change: 187093
 ServerID: perforce.ravenbrook.com
2014-09-30 20:04:35 +01:00
Gareth Rees
05408fa992 Remove orphaned comment (originally from grm in change 19855) about being unable to "check that limit>=size" (referring to the reservoir). it seems, at least from testing, that this check is good now, so add it to reservoircheck.
Copied from Perforce
 Change: 187092
 ServerID: perforce.ravenbrook.com
2014-09-30 18:57:50 +01:00
Gareth Rees
9436487a05 Instead of iterating over the chunks to compute the total reserved address space, maintain a running total in arenachunkinsert and (new function) arenachunkremoved.
New arena class method chunkReserved handles the class-specific computation of the reserved size of a chunk.

Copied from Perforce
 Change: 187089
 ServerID: perforce.ravenbrook.com
2014-09-29 22:50:46 +01:00
Gareth Rees
a8d9fcc694 Design.mps.ring.naming: "when one structure parent contains one ring of child structures, the field in parent is usually known as childring, and the field in child is known as parentring". so the field in chunkstruct should be named arenaring.
Copied from Perforce
 Change: 187084
 ServerID: perforce.ravenbrook.com
2014-09-29 20:54:00 +01:00
Gareth Rees
2d0f425428 Ensure that code of the form if (condition) statement; is split over two lines, so that it is possible to set a breakpoint on the statement in a debugger.
This change was agreed in 1997 (see <https://info.ravenbrook.com/project/mps/mail/1997/08/19/13-44/0.txt>), so it's about time it was implemented.

Copied from Perforce
 Change: 187071
 ServerID: perforce.ravenbrook.com
2014-09-27 22:57:02 +01:00
Gareth Rees
10afd0ee3b Cast all arguments to the writef function to make it easy to check that none of the necessary casts have been omitted.
New macro WriteFYesNo makes it easy to describe a Boolean.
Describe more structure elements for ABQ, Arena, Buffer, Format, MFS, Root, Seg.

Copied from Perforce
 Change: 187063
 ServerID: perforce.ravenbrook.com
2014-09-27 12:49:30 +01:00
Gareth Rees
456d747b61 Rename segpref to locuspref -- this structure describes preferences for the placement of any kind of address, not just segments.
Add LocusPrefDescribe and use it in MVFFDescribe.

Copied from Perforce
 Change: 187061
 ServerID: perforce.ravenbrook.com
2014-09-27 11:27:00 +01:00
Gareth Rees
77f35a9979 Fix problems identified by nb in review <https://info.ravenbrook.com/mail/2014/07/24/12-21-04/0/>.
Copied from Perforce
 Change: 186945
 ServerID: perforce.ravenbrook.com
2014-08-06 16:18:34 +01:00
Gareth Rees
aadc2f2da6 Catch-up merge from master sources @186573 to branch/2014-05-28/align.
Copied from Perforce
 Change: 186631
 ServerID: perforce.ravenbrook.com
2014-06-14 16:11:20 +01:00
Gareth Rees
341617adf0 More modular to assign the primary chunk in arenachunkinsert.
Copied from Perforce
 Change: 186621
 ServerID: perforce.ravenbrook.com
2014-06-14 14:34:10 +01:00
Gareth Rees
e40740db1c Fix defects found by coverity <https://info.ravenbrook.com/mail/2014/06/13/18-12-37/0/>
Copied from Perforce
 Change: 186604
 ServerID: perforce.ravenbrook.com
2014-06-13 21:45:46 +01:00