https://github.com/richiejp/fuzzy-sync
Standalone Fuzzy Sync library, extracted from the Linux Test Project
https://github.com/richiejp/fuzzy-sync
Last synced: 4 months ago
JSON representation
Standalone Fuzzy Sync library, extracted from the Linux Test Project
- Host: GitHub
- URL: https://github.com/richiejp/fuzzy-sync
- Owner: richiejp
- License: gpl-2.0
- Created: 2020-12-23T08:07:46.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-10-02T16:07:34.000Z (almost 2 years ago)
- Last Synced: 2025-03-06T10:23:03.751Z (4 months ago)
- Language: C
- Homepage:
- Size: 35.2 KB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Fuzzy Sync
This is a standalone version of the Linux Test Project's Fuzzy Sync C
library. The original was developed to reliably and quickly reproduce
data races within the Linux kernel from an unprivileged user land test
process.This version was manually extracted from the LTP. The original can be
found at the following link. The original is stable now, but still
receives updates
https://github.com/linux-test-project/ltp/blob/master/include/tst_fuzzy_sync.h## Usage
The entire library is contained within a single header, either copy it
into your project or fork this project and extend it with more
executables.To build this project and run the example test do.
```
$ mkdir build && cd build
$ cmake .. [-DCMAKE_BUILD_TYPE=Debug]
$ cmake --build .
$ ctest -V # or make test
```You may then continue by copying `test/a_rare_data_race.c` and the
relevant part of `CMakeLists.txt` to add new tests. E.g```
$ cp test/a_rare_data_race.c test/a_new_test.c
$ echo "fzsync_test(a_new_test)" >> CMakeLists.txt
```## Further info
The test is derived from the example given in the following article
https://richiejp.com/a-rare-data-race