overlay: Distinguish the root debugfs path and our dri node

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
Chris Wilson 2013-08-23 15:59:06 +01:00
parent 9574cb1a3d
commit b22e90bc8b
5 changed files with 15 additions and 10 deletions

View File

@ -26,10 +26,12 @@
#include <sys/mount.h> #include <sys/mount.h>
#include <errno.h> #include <errno.h>
#include <stdio.h> #include <stdio.h>
#include <string.h>
#include "debugfs.h" #include "debugfs.h"
char debugfs_path[128]; char debugfs_path[128];
char debugfs_dri_path[128];
int debugfs_init(void) int debugfs_init(void)
{ {
@ -52,15 +54,16 @@ int debugfs_init(void)
return errno; return errno;
find_minor: find_minor:
strcpy(debugfs_path, path);
for (n = 0; n < 16; n++) { for (n = 0; n < 16; n++) {
int len = sprintf(debugfs_path, "%s/dri/%d", path, n); int len = sprintf(debugfs_dri_path, "%s/dri/%d", path, n);
sprintf(debugfs_path + len, "/i915_error_state"); sprintf(debugfs_dri_path + len, "/i915_error_state");
if (stat(debugfs_path, &st) == 0) { if (stat(debugfs_dri_path, &st) == 0) {
debugfs_path[len] = '\0'; debugfs_dri_path[len] = '\0';
return 0; return 0;
} }
} }
debugfs_path[0] = '\0'; debugfs_dri_path[0] = '\0';
return ENOENT; return ENOENT;
} }

View File

@ -26,6 +26,8 @@
#define DEBUGFS_H #define DEBUGFS_H
extern char debugfs_path[128]; extern char debugfs_path[128];
extern char debugfs_dri_path[128];
int debugfs_init(void); int debugfs_init(void);
#endif /* DEBUGFS_H */ #endif /* DEBUGFS_H */

View File

@ -53,7 +53,7 @@ int gem_objects_init(struct gem_objects *obj)
memset(obj, 0, sizeof(*obj)); memset(obj, 0, sizeof(*obj));
sprintf(buf, "%s/i915_gem_objects", debugfs_path); sprintf(buf, "%s/i915_gem_objects", debugfs_dri_path);
fd = open(buf, 0); fd = open(buf, 0);
if (fd < 0) if (fd < 0)
return errno; return errno;
@ -99,7 +99,7 @@ int gem_objects_update(struct gem_objects *obj)
freed = obj->comm; freed = obj->comm;
obj->comm = NULL; obj->comm = NULL;
sprintf(buf, "%s/i915_gem_objects", debugfs_path); sprintf(buf, "%s/i915_gem_objects", debugfs_dri_path);
fd = open(buf, 0); fd = open(buf, 0);
if (fd < 0) { if (fd < 0) {
ret = errno; ret = errno;

View File

@ -38,7 +38,7 @@ int gpu_freq_init(struct gpu_freq *gf)
memset(gf, 0, sizeof(*gf)); memset(gf, 0, sizeof(*gf));
sprintf(buf, "%s/i915_cur_delayinfo", debugfs_path); sprintf(buf, "%s/i915_cur_delayinfo", debugfs_dri_path);
fd = open(buf, 0); fd = open(buf, 0);
if (fd < 0) if (fd < 0)
return gf->error = errno; return gf->error = errno;
@ -85,7 +85,7 @@ int gpu_freq_update(struct gpu_freq *gf)
if (gf->error) if (gf->error)
return gf->error; return gf->error;
sprintf(buf, "%s/i915_cur_delayinfo", debugfs_path); sprintf(buf, "%s/i915_cur_delayinfo", debugfs_dri_path);
fd = open(buf, 0); fd = open(buf, 0);
if (fd < 0) if (fd < 0)
return gf->error = errno; return gf->error = errno;

View File

@ -42,7 +42,7 @@ int power_init(struct power *power)
memset(power, 0, sizeof(*power)); memset(power, 0, sizeof(*power));
sprintf(buf, "%s/i915_energy_uJ", debugfs_path); sprintf(buf, "%s/i915_energy_uJ", debugfs_dri_path);
fd = open(buf, 0); fd = open(buf, 0);
if (fd < 0) if (fd < 0)
return power->error = errno; return power->error = errno;