mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-10 01:16:18 +00:00
lib: move prefault helpers to igt_debugfs.c
This way all debugfs library code is in one place, ready for some api documentation care. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
55e64989e5
commit
adb28fd71d
@ -425,44 +425,6 @@ void igt_cleanup_aperture_trashers(void)
|
|||||||
free(trash_bos);
|
free(trash_bos);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define PREFAULT_DEBUGFS "/sys/module/i915/parameters/prefault_disable"
|
|
||||||
static void igt_prefault_control(bool enable)
|
|
||||||
{
|
|
||||||
const char *name = PREFAULT_DEBUGFS;
|
|
||||||
int fd;
|
|
||||||
char buf[2] = {'Y', 'N'};
|
|
||||||
int index;
|
|
||||||
|
|
||||||
fd = open(name, O_RDWR);
|
|
||||||
igt_require(fd >= 0);
|
|
||||||
|
|
||||||
if (enable)
|
|
||||||
index = 1;
|
|
||||||
else
|
|
||||||
index = 0;
|
|
||||||
|
|
||||||
igt_require(write(fd, &buf[index], 1) == 1);
|
|
||||||
|
|
||||||
close(fd);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void enable_prefault_at_exit(int sig)
|
|
||||||
{
|
|
||||||
igt_enable_prefault();
|
|
||||||
}
|
|
||||||
|
|
||||||
void igt_disable_prefault(void)
|
|
||||||
{
|
|
||||||
igt_prefault_control(false);
|
|
||||||
|
|
||||||
igt_install_exit_handler(enable_prefault_at_exit);
|
|
||||||
}
|
|
||||||
|
|
||||||
void igt_enable_prefault(void)
|
|
||||||
{
|
|
||||||
igt_prefault_control(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
void igt_system_suspend_autoresume(void)
|
void igt_system_suspend_autoresume(void)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
@ -77,10 +77,6 @@ void igt_cleanup_aperture_trashers(void);
|
|||||||
/* set vt into graphics mode, required to prevent fbcon from interfering */
|
/* set vt into graphics mode, required to prevent fbcon from interfering */
|
||||||
void igt_set_vt_graphics_mode(void);
|
void igt_set_vt_graphics_mode(void);
|
||||||
|
|
||||||
/* prefault disabling, needs the corresponding debugfs interface */
|
|
||||||
void igt_disable_prefault(void);
|
|
||||||
void igt_enable_prefault(void);
|
|
||||||
|
|
||||||
/* suspend and auto-resume system */
|
/* suspend and auto-resume system */
|
||||||
void igt_system_suspend_autoresume(void);
|
void igt_system_suspend_autoresume(void);
|
||||||
|
|
||||||
|
@ -34,6 +34,9 @@
|
|||||||
#include "igt_display.h"
|
#include "igt_display.h"
|
||||||
#include "igt_debugfs.h"
|
#include "igt_debugfs.h"
|
||||||
|
|
||||||
|
/*
|
||||||
|
* General debugfs helpers
|
||||||
|
*/
|
||||||
int igt_debugfs_init(igt_debugfs_t *debugfs)
|
int igt_debugfs_init(igt_debugfs_t *debugfs)
|
||||||
{
|
{
|
||||||
const char *path = "/sys/kernel/debug";
|
const char *path = "/sys/kernel/debug";
|
||||||
@ -376,3 +379,45 @@ void igt_drop_caches_set(uint64_t val)
|
|||||||
igt_assert(nbytes == strlen(data) + 1);
|
igt_assert(nbytes == strlen(data) + 1);
|
||||||
close(fd);
|
close(fd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Prefault control
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define PREFAULT_DEBUGFS "/sys/module/i915/parameters/prefault_disable"
|
||||||
|
static void igt_prefault_control(bool enable)
|
||||||
|
{
|
||||||
|
const char *name = PREFAULT_DEBUGFS;
|
||||||
|
int fd;
|
||||||
|
char buf[2] = {'Y', 'N'};
|
||||||
|
int index;
|
||||||
|
|
||||||
|
fd = open(name, O_RDWR);
|
||||||
|
igt_require(fd >= 0);
|
||||||
|
|
||||||
|
if (enable)
|
||||||
|
index = 1;
|
||||||
|
else
|
||||||
|
index = 0;
|
||||||
|
|
||||||
|
igt_require(write(fd, &buf[index], 1) == 1);
|
||||||
|
|
||||||
|
close(fd);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void enable_prefault_at_exit(int sig)
|
||||||
|
{
|
||||||
|
igt_enable_prefault();
|
||||||
|
}
|
||||||
|
|
||||||
|
void igt_disable_prefault(void)
|
||||||
|
{
|
||||||
|
igt_prefault_control(false);
|
||||||
|
|
||||||
|
igt_install_exit_handler(enable_prefault_at_exit);
|
||||||
|
}
|
||||||
|
|
||||||
|
void igt_enable_prefault(void)
|
||||||
|
{
|
||||||
|
igt_prefault_control(true);
|
||||||
|
}
|
||||||
|
@ -96,4 +96,12 @@ void igt_pipe_crc_collect_crc(igt_pipe_crc_t *pipe_crc, igt_crc_t *out_crc);
|
|||||||
|
|
||||||
void igt_drop_caches_set(uint64_t val);
|
void igt_drop_caches_set(uint64_t val);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Prefault control
|
||||||
|
*/
|
||||||
|
|
||||||
|
void igt_disable_prefault(void);
|
||||||
|
void igt_enable_prefault(void);
|
||||||
|
|
||||||
|
|
||||||
#endif /* __IGT_DEBUGFS_H__ */
|
#endif /* __IGT_DEBUGFS_H__ */
|
||||||
|
@ -41,6 +41,7 @@
|
|||||||
#include "drmtest.h"
|
#include "drmtest.h"
|
||||||
#include "intel_chipset.h"
|
#include "intel_chipset.h"
|
||||||
#include "intel_gpu_tools.h"
|
#include "intel_gpu_tools.h"
|
||||||
|
#include "igt_debugfs.h"
|
||||||
|
|
||||||
/* Testcase: Submit patches with relocations in memory that will fault
|
/* Testcase: Submit patches with relocations in memory that will fault
|
||||||
*
|
*
|
||||||
|
@ -38,6 +38,7 @@
|
|||||||
#include "drm.h"
|
#include "drm.h"
|
||||||
#include "i915_drm.h"
|
#include "i915_drm.h"
|
||||||
#include "drmtest.h"
|
#include "drmtest.h"
|
||||||
|
#include "igt_debugfs.h"
|
||||||
|
|
||||||
static int OBJECT_SIZE = 16*1024*1024;
|
static int OBJECT_SIZE = 16*1024*1024;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user