aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows/zloop.yml
Commit message (Collapse)AuthorAgeFilesLines
* Replace EXTRA_DIST with dist_noinst_DATABrian Behlendorf2022-05-261-1/+1
| | | | | | | | | | | | | | | The EXTRA_DIST variable is ignored when used in the FALSE conditional of a Makefile.am. This results in the `make dist` target omitting these files from the generated tarball unless CONFIG_USER is defined. This issue can be avoided by switching to use the dist_noinst_DATA variable which is handled as expected by autoconf. This change also adds support for --with-config=dist as an alias for --with-config=srpm and updates the GitHub workflows to use it. Reviewed-by: Ahelenia Ziemiańska <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #13459 Closes #13505
* ztest: reduce runtile of zloop.sh in CIBrian Behlendorf2022-05-121-2/+3
| | | | | | | | | | | | | | | The zloop.sh script is primarily designed to randomly stress the DMU and SPA layers. This can result in some unrealistic (or even impossible) scenarios being tested which then fail. Since the longer we run zloop.sh the more likely this is to occur this commit reduces the runtime. The intention being that normally this will result in a clean CI run unless the PR does introduce serious breaking change. Reviewed-by: George Melikov <[email protected]> Reviewed-by: Tony Hutter <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #13453
* Extract workflows dependenciesDamian Szuberski2022-02-071-10/+5
| | | | | | | | | | | | | | | | | | | | - Move build dependencies moved to `.github/workflows/build-dependencies.txt` shared among workflows. - Change `ubuntu-latest` -> `ubuntu-20.04` to avoid unexpected runner environment updates in `zloop` workflow. - Change `ubuntu-20.04` -> `ubuntu-latest` to track changes in runner environment in `checkstyle` workflow. - Kernel buffer is flushed before ZTS invocation to avoid storing the same data after each test case run. - `make` is invoked with consistent set of options to reduce clutter in logs. Reviewed-by: George Melikov <[email protected]> Signed-off-by: szubersk <[email protected]> Closes #13037
* Add `--enable-asan` and `--enable-ubsan` switchesDamian Szuberski2022-02-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | `configure` now accepts `--enable-asan` and `--enable-ubsan` switches which results in passing `-fsanitize=address` and `-fsanitize=undefined`, respectively, to the compiler. Those flags are enabled in GitHub workflows for ZTS and zloop. Errors reported by both instrumentations are corrected, except for: - Memory leak reporting is (temporarily) suppressed. The cost of fixing them is relatively high compared to the gains. - Checksum computing functions in `module/zcommon/zfs_fletcher*` have UBSan errors suppressed. It is completely impractical to enforce 64-byte payload alignment there due to performance impact. - There's no ASan heap poisoning in `module/zstd/lib/zstd.c`. A custom memory allocator is used there rendering that measure unfeasible. - Memory leaks detection has to be suppressed for `cmd/zvol_id`. `zvol_id` is run by udev with the help of `ptrace(2)`. Tracing is incompatible with memory leaks detection. Reviewed-by: Ahelenia Ziemiańska <[email protected]> Reviewed-by: George Melikov <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: szubersk <[email protected]> Closes #12928
* Removed Python 2 and Python 3.5- supportDamian Szuberski2022-01-131-1/+0
| | | | | | | | | | | | Deprecation of Python versions below 3.6 gives opportunity to unify the build and install requirements for OpenZFS packages. The minimal supported Python version is 3.6 as this is the most recent Python package CentOS/RHEL 7 users can get. Reviewed-by: Brian Behlendorf <[email protected]> Reviewed-by: Rich Ercolani <[email protected]> Reviewed-by: John Kennedy <[email protected]> Signed-off-by: szubersk <[email protected]> Closes #12925
* zloop: Add a max iterations option, use default run/pass timesRyan Moeller2021-07-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | It is useful to have control over the number of iterations of zloop so we can easily produce "x core dumps found *in y iterations*" metrics. Using random values for run/pass times doesn't improve coverage in a meaningful way. Randomizing run time could be seen as a compromise between running a greater variety of shorter tests versus a smaller variety of longer tests within a fixed time span. However, it is not desirable when running a fixed number of iterations. Pass time already incorporates randomness within ztest. Either parameter can be passed to ztest explicitly if the defaults are not satisfactory. Reviewed-by: Brian Behlendorf <[email protected]> Reviewed-by: George Melikov <[email protected]> Reviewed-by: John Kennedy <[email protected]> Signed-off-by: Ryan Moeller <[email protected]> Closes #12411
* Correct a flaw in the Python 3 version checkingRich Ercolani2021-06-081-2/+2
| | | | | | | | | | | | | | | It turns out the ax_python_devel.m4 version check assumes that ("3.X+1.0" >= "3.X.0") is True in Python, which is not when X+1 is 10 or above and X is not. (Also presumably X+1=100 and ...) So let's remake the check to behave consistently, using the "packaging" or (if absent) the "distlib" modules. (Also, update the Github workflows to use the new packages.) Reviewed-by: Brian Behlendorf <[email protected]> Reviewed-by: John Kennedy <[email protected]> Signed-off-by: Rich Ercolani <[email protected]> Closes: #12073
* CI: add zloop workflowGeorge Melikov2020-12-101-0/+67
Run ztest via zloop for 20 minutes, total run time is ~30 minutes. Signed-off-by: George Melikov <[email protected]>