intel_error_decode: First try /sys/drm/card0/error for the error-state

As the sysfs is almost always mounted and readable, we have a higher
success rate checking for our error state there than in debugfs.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
Chris Wilson 2013-08-07 23:41:54 +01:00
parent a285f03f56
commit dbbf2e9b24

View File

@ -504,17 +504,21 @@ main(int argc, char *argv[])
if (argc == 1) { if (argc == 1) {
if (isatty(0)) { if (isatty(0)) {
path = "/debug/dri"; path = "/sys/class/drm/card0/error";
error = stat(path, &st); error = stat(path, &st);
if (error != 0) {
path = "/debug/dri";
error = stat(path, &st);
}
if (error != 0) { if (error != 0) {
path = "/sys/kernel/debug/dri"; path = "/sys/kernel/debug/dri";
error = stat(path, &st); error = stat(path, &st);
if (error != 0) { }
errx(1, if (error != 0) {
"Couldn't find i915 debugfs directory.\n\n" errx(1,
"Is debugfs mounted? You might try mounting it with a command such as:\n\n" "Couldn't find i915 debugfs directory.\n\n"
"\tsudo mount -t debugfs debugfs /sys/kernel/debug\n"); "Is debugfs mounted? You might try mounting it with a command such as:\n\n"
} "\tsudo mount -t debugfs debugfs /sys/kernel/debug\n");
} }
} else { } else {
read_data_file(stdin); read_data_file(stdin);