summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2018-03-07 09:39:06 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2018-03-07 18:13:12 +0000
commit4ead0251f2ba52783f2e790e532c660e95121c7b (patch)
tree506b840046cbf106d2760adbacba20cbadcd1af1 /lib
parente3a0ed9855a2e9d77cfd0c770ceadac5b7030e4e (diff)
lib: Use C99 initialisers to clear context parameters
valgrind complains we feed uninitialised stack into the CONTEXT_SETPARAM ioctl. It is unused by the kernel, but valgrind doesn't know that and it's easy enough to clear the struct to prevent the warning. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/igt_gt.c30
1 files changed, 12 insertions, 18 deletions
diff --git a/lib/igt_gt.c b/lib/igt_gt.c
index 799ca1ae3..01aebc670 100644
--- a/lib/igt_gt.c
+++ b/lib/igt_gt.c
@@ -126,11 +126,10 @@ void igt_require_hang_ring(int fd, int ring)
static unsigned context_get_ban(int fd, unsigned ctx)
{
- struct drm_i915_gem_context_param param;
-
- param.param = I915_CONTEXT_PARAM_BANNABLE;
- param.value = 0;
- param.size = 0;
+ struct drm_i915_gem_context_param param = {
+ .ctx_id = ctx,
+ .param = I915_CONTEXT_PARAM_BANNABLE,
+ };
if (__gem_context_get_param(fd, &param) == -EINVAL) {
igt_assert(param.value == 0);
@@ -143,13 +142,11 @@ static unsigned context_get_ban(int fd, unsigned ctx)
static void context_set_ban(int fd, unsigned ctx, unsigned ban)
{
- struct drm_i915_gem_context_param param;
-
- memset(&param, 0, sizeof(param));
- param.ctx_id = ctx;
- param.value = ban;
- param.size = 0;
- param.param = I915_CONTEXT_PARAM_BANNABLE;
+ struct drm_i915_gem_context_param param = {
+ .ctx_id = ctx,
+ .param = I915_CONTEXT_PARAM_BANNABLE,
+ .value = ban,
+ };
if(__gem_context_set_param(fd, &param) == -EINVAL) {
igt_assert(param.value == ban);
@@ -160,7 +157,9 @@ static void context_set_ban(int fd, unsigned ctx, unsigned ban)
igt_hang_t igt_allow_hang(int fd, unsigned ctx, unsigned flags)
{
- struct drm_i915_gem_context_param param;
+ struct drm_i915_gem_context_param param = {
+ .ctx_id = ctx,
+ };
unsigned ban;
igt_assert(igt_sysfs_set_parameter
@@ -172,9 +171,6 @@ igt_hang_t igt_allow_hang(int fd, unsigned ctx, unsigned flags)
if (!igt_check_boolean_env_var("IGT_HANG_WITHOUT_RESET", false))
igt_require(has_gpu_reset(fd));
- param.ctx_id = ctx;
- param.size = 0;
-
if ((flags & HANG_ALLOW_CAPTURE) == 0) {
param.param = I915_CONTEXT_PARAM_NO_ERROR_CAPTURE;
param.value = 1;
@@ -194,7 +190,6 @@ igt_hang_t igt_allow_hang(int fd, unsigned ctx, unsigned flags)
void igt_disallow_hang(int fd, igt_hang_t arg)
{
-
context_set_ban(fd, arg.ctx, arg.ban);
if ((arg.flags & HANG_ALLOW_CAPTURE) == 0) {
@@ -297,7 +292,6 @@ igt_hang_t igt_hang_ctx(int fd,
}
ban = context_get_ban(fd, ctx);
-
if ((flags & HANG_ALLOW_BAN) == 0)
context_set_ban(fd, ctx, 0);