Skip to content

Regression tests cannot be generalized and be used with other architectures #520

@EAlexJ

Description

@EAlexJ

The current tests were written with some assumptions that do not work out for other architectures.

In getting the tests working on a virtual RISC-V platform(32 and 64 bit), I ran into the following issues:

  • counters are not marked volatile, at higher optimization levels some tests deadlock
  • some memory tests do not provide pools large enough to accommodate the required amount of blocks when working with a 64-bit system. Due to the overhead being larger the pools end up providing too few blocks, thus failing the tests
  • some pointers are only 4 byte aligned, again not working on a 64-bit system which requires 8 byte alignment
  • in some instances, there is "resonance" and the test does not progress. The test expects an interrupt during a small window, but I encountered cases where this window is always missed. This is exacerbated by the fact that on a virtual platforms instructions are always taking the same amount of time. In one instance there already is code to include a perturbation, but in my setup this was not large enough to make the test complete in a sensible time

While some of these points can be addressed pretty straight-forward, I would like to start a discussion, especially on the resonance issue.

Metadata

Metadata

Assignees

Labels

bugSomething isn't workinghardwareNew hardware or architecture support request

Type

No type

Projects

Status

Discussion

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions