mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-07-25 18:57:41 +00:00
pm_rps: Assert that valid sysfs writes return success
do_writeval now always checks the return value, whether we expect success or a specific error. Also add new macro writeval_inval to simplify repeated use of do_writeval to test for EINVAL return code. Signed-off-by: Jeff McGee <jeff.mcgee@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
265efbb2c4
commit
44b5d7b330
@ -79,11 +79,18 @@ static int do_writeval(FILE *filp, int val, int lerrno)
|
|||||||
int ret;
|
int ret;
|
||||||
rewind(filp);
|
rewind(filp);
|
||||||
ret = fprintf(filp, "%d", val);
|
ret = fprintf(filp, "%d", val);
|
||||||
if (ret && lerrno)
|
if (lerrno) {
|
||||||
igt_assert(errno = lerrno);
|
/* Expecting specific error */
|
||||||
|
igt_assert(ret == EOF && errno == lerrno);
|
||||||
|
} else {
|
||||||
|
/* Expecting no error */
|
||||||
|
igt_assert(ret != EOF);
|
||||||
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
#define writeval(filp, val) do_writeval(filp, val, 0)
|
#define writeval(filp, val) do_writeval(filp, val, 0)
|
||||||
|
#define writeval_inval(filp, val) do_writeval(filp, val, EINVAL)
|
||||||
|
|
||||||
#define fcur (readval(stuff[CUR].filp))
|
#define fcur (readval(stuff[CUR].filp))
|
||||||
#define fmin (readval(stuff[MIN].filp))
|
#define fmin (readval(stuff[MIN].filp))
|
||||||
@ -170,16 +177,16 @@ igt_simple_main
|
|||||||
checkit();
|
checkit();
|
||||||
|
|
||||||
/* And some errors */
|
/* And some errors */
|
||||||
writeval(stuff[MIN].filp, frpn - 1);
|
writeval_inval(stuff[MIN].filp, frpn - 1);
|
||||||
writeval(stuff[MAX].filp, frp0 + 1000);
|
writeval_inval(stuff[MAX].filp, frp0 + 1000);
|
||||||
checkit();
|
checkit();
|
||||||
|
|
||||||
writeval(stuff[MIN].filp, fmax + 1000);
|
writeval_inval(stuff[MIN].filp, fmax + 1000);
|
||||||
writeval(stuff[MAX].filp, fmin - 1);
|
writeval_inval(stuff[MAX].filp, fmin - 1);
|
||||||
checkit();
|
checkit();
|
||||||
|
|
||||||
do_writeval(stuff[MIN].filp, 0x11111110, EINVAL);
|
writeval_inval(stuff[MIN].filp, 0x11111110);
|
||||||
do_writeval(stuff[MAX].filp, 0, EINVAL);
|
writeval_inval(stuff[MAX].filp, 0);
|
||||||
|
|
||||||
writeval(stuff[MIN].filp, origmin);
|
writeval(stuff[MIN].filp, origmin);
|
||||||
writeval(stuff[MAX].filp, origmax);
|
writeval(stuff[MAX].filp, origmax);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user