Gareth Rees
dce60f3ee6
Minor design improvements.
...
Copied from Perforce
Change: 194075
2018-06-21 21:08:57 +01:00
Gareth Rees
fe9064011c
Fix markup errors.
...
Copied from Perforce
Change: 194070
2018-06-21 20:48:34 +01:00
Gareth Rees
3e88befc24
In gcc 7.3, -wextra sets -wimplicit-fallthough=3, which is rather strict about the format of the "fall through" comment.
...
Copied from Perforce
Change: 194064
2018-06-21 17:38:27 +01:00
Gareth Rees
11e6822edf
Bring design.mps.sp.sol.depth.analysis up to date.
...
Copied from Perforce
Change: 194012
2018-06-20 12:55:45 +01:00
Gareth Rees
687f5e0294
Fix issues identified in review by apt.
...
Copied from Perforce
Change: 193982
2018-06-19 14:51:56 +01:00
Gareth Rees
f4f3b215e0
Forktest passes without the need for polling.
...
Copied from Perforce
Change: 193964
2018-06-19 08:59:00 +01:00
Gareth Rees
374ab9c476
No need for empty atfork handlers, can pass null to pthread_atfork.
...
Copied from Perforce
Change: 193963
2018-06-19 08:57:26 +01:00
Gareth Rees
2487cf46c1
Add history entry.
...
Copied from Perforce
Change: 193943
2018-06-18 20:22:00 +01:00
Gareth Rees
e62c3dc0c5
Simplify the wasmarked protocol.
...
Copied from Perforce
Change: 193940
2018-06-18 20:03:13 +01:00
Gareth Rees
3c0d28b98a
Correct reason for why function/23.c does not pass.
...
Copied from Perforce
Change: 193881
2018-06-18 13:18:28 +01:00
Gareth Rees
e4bf4451b6
Fix copy-paste error.
...
Copied from Perforce
Change: 193880
2018-06-18 13:18:02 +01:00
Gareth Rees
3e233329d3
Assertions on the critical path.
...
Copied from Perforce
Change: 193879
2018-06-18 13:17:42 +01:00
Gareth Rees
4aa1ca1b2c
Fix some rst errors.
...
Copied from Perforce
Change: 193862
2018-06-16 19:10:33 +01:00
Gareth Rees
2e18fdbc88
Improve formatting of design docs.
...
Copied from Perforce
Change: 193857
2018-06-16 18:48:50 +01:00
Gareth Rees
7a7c5e5a95
Procedure for adding a new smoke test.
...
Copied from Perforce
Change: 193850
2018-06-15 16:00:09 +01:00
Gareth Rees
1a2fc92690
Forktest relies on polling, so needs the =p flag.
...
Copied from Perforce
Change: 193847
2018-06-15 15:57:23 +01:00
Gareth Rees
00da8664cd
Mach_thread_self() can in theory "return mach_port_null if a resource shortage prevented the reception of the send right" so add a check in each case. (there's nothing we can do about it but at least we can notice.)
...
Copied from Perforce
Change: 193831
2018-06-15 12:54:28 +01:00
Gareth Rees
fd9f9c41d0
It's safe to register a thread multiple times on macos, so there is no need for the guard.
...
Copied from Perforce
Change: 193828
2018-06-15 12:44:51 +01:00
Gareth Rees
d6f4e26dc6
Cross-reference from release notes to supported platforms.
...
Copied from Perforce
Change: 193827
2018-06-15 12:42:49 +01:00
Gareth Rees
c4a840d676
Rename "mac os x" and "os x" to "macos", except for a few cases where for historical accuracy we want to continue to refer to the former name.
...
Copied from Perforce
Change: 193821
2018-06-15 12:15:36 +01:00
Gareth Rees
a7560913c5
Merge branch/2018-06-13/fork.
...
Copied from Perforce
Change: 193816
2018-06-15 11:41:32 +01:00
Gareth Rees
11fff0151d
Fix typo.
...
Copied from Perforce
Change: 193811
2018-06-15 11:15:42 +01:00
Gareth Rees
0662e96899
Refactor atfork code to improve separation of concerns.
...
Copied from Perforce
Change: 193806
2018-06-15 10:58:33 +01:00
Gareth Rees
a3779b8c3b
Start the collection and dereference the objects in the parent as well as the child.
...
Copied from Perforce
Change: 193800
2018-06-15 10:06:59 +01:00
Gareth Rees
7ed378141c
Fix issues identified in review by nb.
...
Copied from Perforce
Change: 193793
2018-06-14 19:31:30 +01:00
Gareth Rees
a865019b13
Update design history. restore accidentally removed check.
...
Copied from Perforce
Change: 193787
2018-06-14 17:55:03 +01:00
Gareth Rees
391c0bf671
Fix rst error; only need to flag forking thraed on macos.
...
Copied from Perforce
Change: 193784
2018-06-14 17:50:29 +01:00
Gareth Rees
e98b2a05c8
Improve comments.
...
Copied from Perforce
Change: 193783
2018-06-14 17:44:41 +01:00
Gareth Rees
fc5c7a9f86
Add a section on fork safety to the manual.
...
Copied from Perforce
Change: 193776
2018-06-14 17:18:08 +01:00
Gareth Rees
78e6d003bb
Fix ansi build.
...
Copied from Perforce
Change: 193769
2018-06-14 16:58:24 +01:00
Gareth Rees
38a08a6a62
Avoid compilation errors from latest msvc.
...
Copied from Perforce
Change: 193768
2018-06-14 16:54:33 +01:00
Gareth Rees
598b64afb4
Support for fork on linux and freebsd.
...
Copied from Perforce
Change: 193765
2018-06-14 16:47:23 +01:00
Gareth Rees
61e24c399a
Take locks before fork(), release them in the parent and reinitialize them in the child.
...
Add forktest target to the Xcode project.
Write design for fork safety and cross-reference from the code.
Update release notes.
Copied from Perforce
Change: 193760
2018-06-14 16:25:08 +01:00
Gareth Rees
2ccdd80953
Extend forktest so that it does allocation before the fork and collection afterwards; this ensures that we hit the read barrier and thus exercise the exception handling.
...
After forking in the child, re-create exception port and exception thread, and re-register the (only) thread with that port.
Copied from Perforce
Change: 193755
2018-06-14 12:54:35 +01:00
Gareth Rees
47fc093662
Add fork test case (fails on os x if pthread_atfork is not called).
...
pthread_atfork handlers on OS X: in the child, update the mach port for the forking thread and move all other threads to the dead ring.
Copied from Perforce
Change: 193746
2018-06-13 17:09:07 +01:00
Gareth Rees
a8edcb7aa4
Fix typo in user guide: "stack_root" not "reg_root".
...
Copied from Perforce
Change: 193741
2018-06-13 15:42:23 +01:00
Gareth Rees
1b5cb807b4
Branching master to branch/2018-06-13/fork.
...
Copied from Perforce
Change: 193731
2018-06-13 14:06:46 +01:00
Gareth Rees
169b8dcaf6
Avoid using deprecated function mps_fix and deprecated macro mps_fix in the test cases; use mps_fix12 instead.
...
Copied from Perforce
Change: 193726
2018-06-13 13:59:14 +01:00
Gareth Rees
ed39d66d77
Add cross-references from mps_arena_has_addr to mps_addr_pool (and vice versa), to decrease the likelihood that developers will miss these functions.
...
Copied from Perforce
Change: 193721
2018-06-13 10:56:47 +01:00
Gareth Rees
57e2dbccf3
Make mps manual sphinx extensions compatible with recent versions of sphinx:
...
1. Don't use the html_use_smartypants directive (smartquotes are on by default now).
2. Don't call make_admonition but inherit from BaseAdmonition instead.
3. Set the title of an admonition via the visit method instead of hacking the title node (which is now non-existent as a result of item 2).
Copied from Perforce
Change: 193550
2018-02-12 16:49:42 +00:00
Gareth Rees
51986addd1
Avoid warning about duplicate definition of class functin.
...
Copied from Perforce
Change: 193549
2018-02-12 16:39:16 +00:00
Gareth Rees
ead26bad95
Format methods must be async-signal-safe on posix.
...
Copied from Perforce
Change: 193472
2017-12-21 14:04:47 +00:00
Gareth Rees
e45e52a6f5
Platforms fri3ll and fri6ll are supported, so add them to overview.
...
Copied from Perforce
Change: 193383
ServerID: perforce.ravenbrook.com
2017-11-03 14:34:20 +00:00
Gareth Rees
729d9ed32c
Fix broken link.
...
Copied from Perforce
Change: 192963
ServerID: perforce.ravenbrook.com
2017-03-10 09:38:22 +00:00
Gareth Rees
b9ae05b94f
Remove undocumented plinth function mps_lib_assert_fail_expr and rewrite assertp macro to call documented plinth function mps_lib_assert_fail instead.
...
Copied from Perforce
Change: 192941
ServerID: perforce.ravenbrook.com
2017-03-04 11:17:11 +00:00
Gareth Rees
e9df5d6a35
Remove used epvmdefaultsubsequentsegsize.
...
Copied from Perforce
Change: 192938
ServerID: perforce.ravenbrook.com
2017-03-04 11:02:31 +00:00
Gareth Rees
cccb1c1e3c
Documentation improvements.
...
Copied from Perforce
Change: 192905
ServerID: perforce.ravenbrook.com
2017-02-18 09:38:15 +00:00
Gareth Rees
4af5b181b3
Fix typos.
...
Copied from Perforce
Change: 192890
ServerID: perforce.ravenbrook.com
2017-02-11 11:30:15 +00:00
Gareth Rees
0ad43e18f7
Add release 1.116.0 to the version index.
...
Update branch and release tools so that releases get automatically added to the version index.
Copied from Perforce
Change: 192761
ServerID: perforce.ravenbrook.com
2016-11-13 11:08:30 +00:00
Gareth Rees
c14d96d9ec
Update tag references in design documents so that they work in the design directory, and in the manual.
...
Copied from Perforce
Change: 192748
ServerID: perforce.ravenbrook.com
2016-11-11 10:20:02 +00:00