8d5d041590
Find new home for downstream RHEL tests. Upstream them. The set of tests used for fedora gating stays intact: The gating tests are only those having the tier1 tag set in their main.fmf file. The testplan plans/ci.fmf filters the others out from gating. The set of Fedora gating tests stays the same as it was before this change.
75 lines
2.3 KiB
Bash
Executable File
75 lines
2.3 KiB
Bash
Executable File
#!/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 <mcermak@redhat.com>
|
|
#
|
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
#
|
|
# 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 <<EOF
|
|
global dummy
|
|
probe end { printf("dummy: %d\n", dummy); }
|
|
probe kernel.trace("__extent_writepage") { dummy = dummy + 1; }
|
|
EOF
|
|
|
|
cat > reproduce.sh <<EOF
|
|
#!/bin/bash
|
|
|
|
i=0
|
|
while [ True ]; do
|
|
i=\$((i+1))
|
|
echo "Attempt \$i"
|
|
echo 3 > /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
|