| #!/bin/sh |
| # SPDX-License-Identifier: GPL-2.0-or-later |
| # description: Test deadline monitors trigger no reaction |
| # requires: available_reactors deadline:monitor printk:reactor stress-ng:program |
| |
| load() { # returns true if there was a reaction |
| local lines_before |
| lines_before=$(dmesg | wc -l) |
| stress-ng --cpu 2 --sched deadline --sched-period 100000000 \ |
| --sched-deadline 100000000 --sched-runtime 20000000 -t 5 & |
| stress-ng --cpu 2 --sched rr --sched-prio 50 --cyclic 1 \ |
| --cyclic-policy rr --cyclic-prio 50 -t 5 & |
| wait |
| dmesg | tail -n +$((lines_before + 1)) | grep -q "rv: monitor [a-z]\+ does not allow event" |
| } |
| |
| echo 1 > monitors/deadline/enable |
| echo printk > monitors/deadline/reactors |
| |
| ! load || false |
| |
| echo nop > monitors/deadline/reactors |
| echo 0 > monitors/deadline/enable |