mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-07-24 10:27:15 +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;
|
||||
rewind(filp);
|
||||
ret = fprintf(filp, "%d", val);
|
||||
if (ret && lerrno)
|
||||
igt_assert(errno = lerrno);
|
||||
if (lerrno) {
|
||||
/* Expecting specific error */
|
||||
igt_assert(ret == EOF && errno == lerrno);
|
||||
} else {
|
||||
/* Expecting no error */
|
||||
igt_assert(ret != EOF);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
#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 fmin (readval(stuff[MIN].filp))
|
||||
@ -170,16 +177,16 @@ igt_simple_main
|
||||
checkit();
|
||||
|
||||
/* And some errors */
|
||||
writeval(stuff[MIN].filp, frpn - 1);
|
||||
writeval(stuff[MAX].filp, frp0 + 1000);
|
||||
writeval_inval(stuff[MIN].filp, frpn - 1);
|
||||
writeval_inval(stuff[MAX].filp, frp0 + 1000);
|
||||
checkit();
|
||||
|
||||
writeval(stuff[MIN].filp, fmax + 1000);
|
||||
writeval(stuff[MAX].filp, fmin - 1);
|
||||
writeval_inval(stuff[MIN].filp, fmax + 1000);
|
||||
writeval_inval(stuff[MAX].filp, fmin - 1);
|
||||
checkit();
|
||||
|
||||
do_writeval(stuff[MIN].filp, 0x11111110, EINVAL);
|
||||
do_writeval(stuff[MAX].filp, 0, EINVAL);
|
||||
writeval_inval(stuff[MIN].filp, 0x11111110);
|
||||
writeval_inval(stuff[MAX].filp, 0);
|
||||
|
||||
writeval(stuff[MIN].filp, origmin);
|
||||
writeval(stuff[MAX].filp, origmax);
|
||||
|
Loading…
x
Reference in New Issue
Block a user