Gareth Rees
af0f431eda
Use https: instead of http: when linking to the ravenbrook web site.
2020-08-30 10:13:03 +01:00
Gareth Rees
d55dc069ab
Merge branch 'branch/2020-08-24/eintr'
2020-08-30 09:24:08 +01:00
Gareth Rees
c13b7610d3
Set sa_restart flag when calling sigaction().
...
This ensures that if a mutator thread is blocked in a system call when
the MPS handles a signal, the system call will not fail with EINTR but
instead will be restarted.
Add a test case for the thread suspend and resume signals.
2020-08-30 09:23:35 +01:00
Gareth Rees
be2f670e42
Merge branch 'branch/2020-08-23/macos-build'
2020-08-30 09:08:38 +01:00
Gareth Rees
d14044dd1a
Traceid is a typedef for unsigned so we mustn't negate it.
...
This was not caught by testing because we don't support multiple
traces and so tr->id is always zero.
2020-08-29 18:56:46 +01:00
Gareth Rees
d55a7f147c
Fix build on macos 10.15 with clang 11.0.
...
We no longer need the -Wno-extended-offsetof or -Wno-invalid-offsetof
compiler options, since the nonstandard uses of offsetof() were
fixed (see job003619), so they can just be removed.
2020-08-23 16:17:36 +01:00
Peter Jackson
4de2606846
Publish licence updates in code directory.
...
Publish minor changes to readme and configure files in main directory.
Main directory and code directory licence texts are now fully updated.
Copied from Perforce
Change: 196994
2020-06-11 17:05:40 +01:00
Gareth Rees
ee6ddafcbd
Avoid warning from gcc 5.4.0.
...
Copied from Perforce
Change: 196419
2019-10-10 15:18:03 +01:00
Gareth Rees
84b26d639e
The makefile rule for building a generic target no longer depends on the content of extra_targets, since this is designed to be configurable.
...
Copied from Perforce
Change: 196414
2019-10-10 14:37:38 +01:00
Gareth Rees
c83b1a0323
Avoid an "extended" (non-standards-conforming) call to offsetof.
...
Copied from Perforce
Change: 196195
2019-06-05 16:31:13 +01:00
Gareth Rees
94b2f5a36e
Remove -wno-extended-offsetof flag, no longer needed and not compatible with all the versions of clang that we need to support.
...
Copied from Perforce
Change: 196189
2019-06-05 14:33:43 +01:00
Gareth Rees
00b7596287
Revert change 196178, submitted on wrong branch.
...
Copied from Perforce
Change: 196185
2019-06-05 10:36:50 +01:00
Gareth Rees
6f34daf790
Call mps_arena_create_k, not mps_arena_create.
...
Copied from Perforce
Change: 196181
2019-06-04 15:40:38 +01:00
Gareth Rees
6e116da468
Restore assembly code (removed in change 194595) for spilling callee-save registers on fr and li platforms.
...
Copied from Perforce
Change: 196178
2019-06-04 14:09:05 +01:00
Gareth Rees
e410c28276
Change the type of writeff to avoid compiler warnings from gcc 8.
...
Copied from Perforce
Change: 196063
2019-03-14 15:17:47 +00:00
Gareth Rees
9b201f56c3
Simulate just one allocation failure each time.
...
Copied from Perforce
Change: 195983
2019-02-07 11:57:16 +00:00
Gareth Rees
7f6f4c323b
Add a flag to fotest.c so that oomalloc knows when to return error codes, avoiding confusion between the test's pool and the mps's own pool.
...
Copied from Perforce
Change: 195974
2019-02-07 10:21:32 +00:00
Gareth Rees
d245671303
Update urls (mostly http -> https).
...
Copied from Perforce
Change: 195858
2018-12-10 13:07:41 +00:00
Gareth Rees
4eda4e85c7
Use tags with dots; regularize design references from code.
...
Copied from Perforce
Change: 195761
2018-11-29 17:12:29 +00:00
Gareth Rees
5faa229dd0
Change http to https for links to {info,www}.ravenbrook.com.
...
Copied from Perforce
Change: 195719
2018-11-22 12:34:46 +00:00
Richard Brooksby
bf37e11ba9
Improving clarity with some hyphens.
...
Copied from Perforce
Change: 195688
2018-11-19 21:12:15 +00:00
Richard Brooksby
89aae0a96e
Fixing copy-paste error in comment.
...
Copied from Perforce
Change: 195683
2018-11-19 20:56:45 +00:00
Alistair Turnbull
520a1c9ef6
To guarantee at least one failure while maintaining test coverage, use oomalloc on the
...
first loop iteration and with 50% probability thereafter.
Copied from Perforce
Change: 195278
2018-10-17 17:12:14 +01:00
Alistair Turnbull
6361d8d0ae
Implement review suggestions:
...
- https://info.ravenbrook.com/mail/2018/10/09/07-29-18/0/
- https://info.ravenbrook.com/mail/2018/10/09/12-04-39/0/
Fix the code for shuffling an array.
Ensure that oomAlloc is always used at least once.
TODO: Find a principled way of computing `testSetSIZE`.
Copied from Perforce
Change: 195272
2018-10-16 18:03:45 +01:00
Gareth Rees
1ec8c4a141
Improve handling of telemetry events on the critical path:
...
1. Being on the critical path is a property of the code location where the event is emitted, not of the event type, so indicate this using EVENT_CRITICAL macros rather than a field in the event table.
2. Compile out events on the critical path in hot varieties.
3. Remove TraceFixWhite event (redundant with TraceFixSeg).
4. No need for special handling of PoolFree event -- this are already skipped in hot varieties by dispatching directly to the pool class via PoolFreeMacro.
Copied from Perforce
Change: 195261
2018-10-15 14:22:16 +01:00
Gareth Rees
50f25c43ae
Fix mpseventsql, broken by change 195250.
...
Copied from Perforce
Change: 195258
2018-10-15 11:55:51 +01:00
Gareth Rees
c024758d0a
Convenience target for building mpseventsql.
...
Copied from Perforce
Change: 195251
2018-10-14 14:59:15 +01:00
Gareth Rees
4a789a4b0d
Update mpseventsql to handle event parameter documentation.
...
Copied from Perforce
Change: 195250
2018-10-14 14:59:01 +01:00
Gareth Rees
cbf9885146
Document the event parameters.
...
Split event ArenaAccess into ArenaAccessBegin and ArenaAccessEnd to avoid the need for the count field.
New events SegReclaim and SegScan.
Delete some redundant events: AMCFinish (PoolFinish), AMCFix, AMCFixForward, AMCFixInPlace (TraceFix), AMCGenCreate (GenInit), AMCGenDestroy (GenFinish), AMCInit (PoolInitAMC), AMCReclaim (SegReclaim), AMCScanBegin, AMCScanEnd (SegScan), ArenaWriteFaults (ArenaAccessBegin), PoolInitMV, TraceScanSeg (SegScan).
Add result code field to events ArenaAllocFail, CommitLimitSet, SegAllocFail.
Remove arena field from events PoolInitAMS, PoolInitMFS, PoolInitMVFF (already appeared in generic PoolInit event).
Copied from Perforce
Change: 195247
2018-10-14 14:04:40 +01:00
Gareth Rees
803703fb74
Merge branch/2018-06-20/monitor into the master sources.
...
Copied from Perforce
Change: 195235
2018-10-13 12:22:24 +01:00
Gareth Rees
77506b67e7
There's no point keeping the definitions of old events, especially since we have changed the event format. name events consistently with initial capital letters and put them in alphabetical order.
...
Copied from Perforce
Change: 195231
2018-10-12 13:01:12 +01:00
Gareth Rees
882d86bac1
Remove call to pause_end from tracedestroy; see < https://info.ravenbrook.com/mail/2018/10/12/10-20-07/0/ >
...
The MPS passes the number of system pools to the monitor via the ArenaCreate events, to avoid the monitor having to know how many this is.
Copied from Perforce
Change: 195227
2018-10-12 12:35:55 +01:00
Alistair Turnbull
c6314435bb
Remove job4014 machinery, which is no longer needed.
...
Copied from Perforce
Change: 195211
2018-10-08 17:25:22 +01:00
Alistair Turnbull
681b897b3c
Add flag is_failure_our_problem to fotest.c.
...
Copied from Perforce
Change: 195210
2018-10-08 17:19:18 +01:00
Gareth Rees
aa9f8bef8a
Fix issue identified in review < https://info.ravenbrook.com/mail/2018/09/22/15-55-52/0/ >
...
Copied from Perforce
Change: 195142
2018-09-23 23:00:59 +01:00
Gareth Rees
de33a1f68d
Move assignment so as to avoid "variable 'warmest' might be clobbered by 'longjmp'".
...
Copied from Perforce
Change: 195136
2018-09-23 20:31:52 +01:00
David Lovemore
8c14e1a600
Address issue 5 found in review < https://info.ravenbrook.com/mail/2018/09/22/11-42-19/0/ >
...
Copied from Perforce
Change: 195133
2018-09-23 05:36:19 +01:00
Gareth Rees
c2ee5a02dc
Don't specify macosx_deployment_target in the xcode project -- this avoids complaints from xcode 10.0 without preventing compilation on old versions of macos.
...
Copied from Perforce
Change: 195108
2018-09-18 18:18:50 +01:00
Gareth Rees
6a6bf7f52e
Remove unused function rangetreeinit and rename rangetreeinitfromrange to rangetreeinit.
...
Copied from Perforce
Change: 195094
2018-09-18 15:37:13 +01:00
Gareth Rees
94e3f8895b
Update xcode project for xcode 10.0.
...
Xcode 10.0 no longer supports building for IA-32, so the MPS can no longer support building for xci3ll using Xcode.
Revise example Scheme interpreter so that it can be compiled even if getopt.h includes unistd.h (as it does on macOS).
Copied from Perforce
Change: 195090
2018-09-18 15:00:45 +01:00
Gareth Rees
df34ac67df
Remove support for macos 10.4 and 10.5, because xcode 10.0 does not support these versions.
...
Copied from Perforce
Change: 195087
2018-09-18 14:18:52 +01:00
Gareth Rees
56d1c0bc12
More cross-references.
...
Copied from Perforce
Change: 195084
2018-09-18 12:55:54 +01:00
Gareth Rees
a07f027f02
Guide for new developers.
...
Documentation design.
Expand test case design.
Copied from Perforce
Change: 195083
2018-09-18 12:50:29 +01:00
Gareth Rees
1506a09b79
Clearer about what kind of checks we might add.
...
Copied from Perforce
Change: 195078
2018-09-16 23:11:34 +01:00
Gareth Rees
5ec88060f4
Add source for some of the monitor requirements.
...
Add missing design cross-references.
Fix typo: "even" for "event".
Copied from Perforce
Change: 195075
2018-09-16 12:43:46 +01:00
Gareth Rees
d2d2895c03
Catch-up merge from master sources at changelevel 194022 to branch/2018-06-20/monitor.
...
Copied from Perforce
Change: 195071
2018-09-15 21:29:28 +01:00
Gareth Rees
0c8dc0dac5
Address issues found in review < https://info.ravenbrook.com/mail/2018/09/13/15-44-23/0/ >
...
Copied from Perforce
Change: 195057
2018-09-13 16:47:51 +01:00
Gareth Rees
bfe482e9e8
Avoid division by zero.
...
Copied from Perforce
Change: 194983
2018-08-14 09:51:41 +01:00
Gareth Rees
09066b0ef4
Describe values uniformly as bytes (not kilobytes).
...
Copied from Perforce
Change: 194982
2018-08-14 09:44:15 +01:00
Gareth Rees
0bf8ab8610
Make use of mrgrefpartref in mrgmessagefinalizationref.
...
Copied from Perforce
Change: 194979
2018-08-14 09:25:43 +01:00