18c2ecf20Sopenharmony_ci#!/bin/sh
28c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
38c2ecf20Sopenharmony_ci# description: event trigger - test stacktrace-trigger
48c2ecf20Sopenharmony_ci# requires: set_event events/sched/sched_process_fork/trigger
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_cifail() { #msg
78c2ecf20Sopenharmony_ci    echo $1
88c2ecf20Sopenharmony_ci    exit_fail
98c2ecf20Sopenharmony_ci}
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ciFEATURE=`grep stacktrace events/sched/sched_process_fork/trigger`
128c2ecf20Sopenharmony_ciif [ -z "$FEATURE" ]; then
138c2ecf20Sopenharmony_ci    echo "stacktrace trigger is not supported"
148c2ecf20Sopenharmony_ci    exit_unsupported
158c2ecf20Sopenharmony_cifi
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ciecho "Test stacktrace trigger"
188c2ecf20Sopenharmony_ciecho 0 > trace
198c2ecf20Sopenharmony_ciecho 0 > options/stacktrace
208c2ecf20Sopenharmony_ciecho 'stacktrace' > events/sched/sched_process_fork/trigger
218c2ecf20Sopenharmony_ci( echo "forked")
228c2ecf20Sopenharmony_cigrep "<stack trace>" trace > /dev/null || \
238c2ecf20Sopenharmony_ci    fail "stacktrace trigger on sched_process_fork did not work"
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_cireset_trigger
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ciecho "Test stacktrace semantic errors"
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci! echo "stacktrace:foo" > events/sched/sched_process_fork/trigger
308c2ecf20Sopenharmony_ciecho "stacktrace" > events/sched/sched_process_fork/trigger
318c2ecf20Sopenharmony_ci! echo "stacktrace" > events/sched/sched_process_fork/trigger
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ciexit 0
34