seL4 / sel4test

Test suite for seL4.
http://sel4.systems
Other
24 stars 60 forks source link

MCS: Add periodic drift test #76

Open Indanz opened 2 years ago

Indanz commented 2 years ago

If this test fails, TIMER_OVERHEAD_TICKS may not be set correctly for the platform. Needs seL4 pull #847 applied to pass.

Signed-off-by: Indan Zupancic Indan.Zupancic@mep-info.com

Indanz commented 2 years ago

Without https://github.com/seL4/seL4/pull/847 this fails with 2498 and 2494 for SMP instead of the expected 2500 on tqma8xqp1gb.

Indanz commented 2 years ago

Correct. The test can be made less strict by reducing the sleep time.

axel-h commented 1 year ago

If I understand this right, the main thread sleeps for (1 second - half-a-period = 1 - 0.000002s) which should guarantee that each of the child threads should be allowed to yield exactly (1 second / period = 2500) times. This means that if a period drifts by more than 80ns for each activation on average the test will fail, but if it's less than 80ns it will pass?

@Indanz Could you add this as a comment that describes the test's details?