Skip to content

Commit c7795db

Browse files
MatiasVaraepilys
authored andcommitted
Update README with Kani proofs
Update README with Kani proofs. Signed-off-by: Matias Ezequiel Vara Larsen <[email protected]>
1 parent cca4675 commit c7795db

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,32 @@ need to unblock the pipeline by following the Buildkite run link in the PR and
107107
click on the corresponding
108108
[unblock pipeline button](https://buildkite.com/docs/pipelines/block-step).
109109

110+
## Kani proofs
111+
We run Kani proofs for each PR and on merges to the main branch. The proofs
112+
check conformance of the virtio-queue implementation to requirements from the
113+
virtio specification. Different than a unit test, a proof is checked for every
114+
possible input thus enforcing conformance. To run Kani locally, please first
115+
follow this
116+
[link](https://model-checking.github.io/kani/install-guide.html#installing-the-latest-version)
117+
to install it. Then, to run all the proofs in all packages, use the following
118+
command:
119+
120+
```bash
121+
cargo kani
122+
```
123+
124+
To run the proofs in a single package, run:
125+
126+
```bash
127+
cargo kani --package virtio-queue
128+
```
129+
130+
To run a single proof, run:
131+
132+
```bash
133+
cargo kani --exact --harness queue::verification::verify_spec_2_7_7_2
134+
```
135+
110136
## License
111137

112138
This project is licensed under either of

0 commit comments

Comments
 (0)