#!/bin/bash # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # # runtest.sh of /tools/systemtap/Regression/stapio-possible-circular-locking-dependency # Description: Test for BZ#1020207 (stapio possible circular locking dependency) # Author: Martin Cermak # # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # # Copyright (c) 2014 Red Hat, Inc. # # This copyrighted material is made available to anyone wishing # to use, modify, copy, or redistribute it subject to the terms # and conditions of the GNU General Public License version 2. # # This program is distributed in the hope that it will be # useful, but WITHOUT ANY WARRANTY; without even the implied # warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public # License along with this program; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, # Boston, MA 02110-1301, USA. # # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Include Beaker environment . /usr/share/beakerlib/beakerlib.sh || exit 1 rlJournalStart rlPhaseStartSetup rlRun "TMPDIR=\$(mktemp -d)" rlRun "pushd $TMPDIR" cat > test5.stap < reproduce.sh < /proc/sys/vm/drop_caches stap test5.stap -c "sleep 2" if dmesg 2>&1 | grep "possible circular locking dependency detected"; then dmesg exit 1 fi done exit 0 EOF rlRun "chmod +x reproduce.sh" rlPhaseEnd rlPhaseStartTest TO=180 # timeout seconds # when timeout TO is hit, exitcode 124 is returned rlRun "timeout $TO ./reproduce.sh" 0,124 # if issue doesn't get reproduced within TO, the test will pass rlPhaseEnd rlPhaseStartCleanup rlRun "popd" rlRun "rm -r $TMPDIR" rlPhaseEnd rlJournalPrintText rlJournalEnd