ntel-gpu-tools/tests/drm_lib.sh
Chris Wilson e50ae9596c tests/hangman: Be lenient towards a non-existent sysfs error state
As /sys/class/drm/cardX/error is a new interface for 3.11, we need to be
quiet when it does not exist or else we upset the automated tests.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66533
2013-07-03 08:17:18 +01:00

44 lines
811 B
Bash
Executable File

#!/bin/sh
die() {
echo "$@"
exit 1
}
if [ -d /debug/dri ] ; then
debugfs_path=/debug/dri
fi
if [ -d /sys/kernel/debug/dri ] ; then
debugfs_path=/sys/kernel/debug/dri
fi
i915_dfs_path=x
for dir in `ls $debugfs_path` ; do
if [ -f $debugfs_path/$dir/i915_error_state ] ; then
i915_dfs_path=$debugfs_path/$dir
break
fi
done
if [ $i915_dfs_path = "x" ] ; then
die " i915 debugfs path not found."
fi
# read everything we can
if [ `cat $i915_dfs_path/clients | wc -l` -gt "2" ] ; then
die "ERROR: other drm clients running"
fi
if [ -d /sys/class/drm ] ; then
sysfs_path=/sys/class/drm
fi
i915_sfs_path=
for dir in `ls $sysfs_path` ; do
if [ -f $sysfs_path/$dir/error ] ; then
i915_sfs_path=$sysfs_path/$dir
break
fi
done
# sysfs may not exist as the 'error' is a new interface in 3.11