Skip to content

Commit 56d7bd7

Browse files
ahajdamatt-auld
authored andcommitted
drm/i915/selftests: add igt_vma_move_to_active_unlocked
All calls to i915_vma_move_to_active are surrounded by vma lock and/or there are multiple local helpers for it in particular tests. Let's replace it by common helper. The patch should not introduce functional changes. Signed-off-by: Andrzej Hajda <[email protected]> Reviewed-by: Matthew Auld <[email protected]> Signed-off-by: Matthew Auld <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
1 parent 2a76fc8 commit 56d7bd7

File tree

6 files changed

+29
-68
lines changed

6 files changed

+29
-68
lines changed

drivers/gpu/drm/i915/gem/selftests/i915_gem_client_blt.c

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#include "gt/intel_gt_regs.h"
1414
#include "gem/i915_gem_lmem.h"
1515

16+
#include "gem/selftests/igt_gem_utils.h"
1617
#include "selftests/igt_flush_test.h"
1718
#include "selftests/mock_drm.h"
1819
#include "selftests/i915_random.h"
@@ -457,19 +458,6 @@ static int verify_buffer(const struct tiled_blits *t,
457458
return ret;
458459
}
459460

460-
static int move_to_active(struct i915_vma *vma,
461-
struct i915_request *rq,
462-
unsigned int flags)
463-
{
464-
int err;
465-
466-
i915_vma_lock(vma);
467-
err = i915_vma_move_to_active(vma, rq, flags);
468-
i915_vma_unlock(vma);
469-
470-
return err;
471-
}
472-
473461
static int pin_buffer(struct i915_vma *vma, u64 addr)
474462
{
475463
int err;
@@ -523,11 +511,11 @@ tiled_blit(struct tiled_blits *t,
523511
goto err_bb;
524512
}
525513

526-
err = move_to_active(t->batch, rq, 0);
514+
err = igt_vma_move_to_active_unlocked(t->batch, rq, 0);
527515
if (!err)
528-
err = move_to_active(src->vma, rq, 0);
516+
err = igt_vma_move_to_active_unlocked(src->vma, rq, 0);
529517
if (!err)
530-
err = move_to_active(dst->vma, rq, 0);
518+
err = igt_vma_move_to_active_unlocked(dst->vma, rq, 0);
531519
if (!err)
532520
err = rq->engine->emit_bb_start(rq,
533521
t->batch->node.start,

drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.h

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99

1010
#include <linux/types.h>
1111

12+
#include "i915_vma.h"
13+
1214
struct i915_request;
1315
struct i915_gem_context;
1416
struct i915_vma;
@@ -29,4 +31,16 @@ int igt_gpu_fill_dw(struct intel_context *ce,
2931
struct i915_vma *vma, u64 offset,
3032
unsigned long count, u32 val);
3133

34+
static inline int __must_check
35+
igt_vma_move_to_active_unlocked(struct i915_vma *vma, struct i915_request *rq,
36+
unsigned int flags)
37+
{
38+
int err;
39+
40+
i915_vma_lock(vma);
41+
err = _i915_vma_move_to_active(vma, rq, &rq->fence, flags);
42+
i915_vma_unlock(vma);
43+
return err;
44+
}
45+
3246
#endif /* __IGT_GEM_UTILS_H__ */

drivers/gpu/drm/i915/gt/selftest_hangcheck.c

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -99,19 +99,6 @@ static u64 hws_address(const struct i915_vma *hws,
9999
return hws->node.start + offset_in_page(sizeof(u32)*rq->fence.context);
100100
}
101101

102-
static int move_to_active(struct i915_vma *vma,
103-
struct i915_request *rq,
104-
unsigned int flags)
105-
{
106-
int err;
107-
108-
i915_vma_lock(vma);
109-
err = i915_vma_move_to_active(vma, rq, flags);
110-
i915_vma_unlock(vma);
111-
112-
return err;
113-
}
114-
115102
static struct i915_request *
116103
hang_create_request(struct hang *h, struct intel_engine_cs *engine)
117104
{
@@ -172,11 +159,11 @@ hang_create_request(struct hang *h, struct intel_engine_cs *engine)
172159
goto unpin_hws;
173160
}
174161

175-
err = move_to_active(vma, rq, 0);
162+
err = igt_vma_move_to_active_unlocked(vma, rq, 0);
176163
if (err)
177164
goto cancel_rq;
178165

179-
err = move_to_active(hws, rq, 0);
166+
err = igt_vma_move_to_active_unlocked(hws, rq, 0);
180167
if (err)
181168
goto cancel_rq;
182169

@@ -1516,13 +1503,10 @@ static int __igt_reset_evict_vma(struct intel_gt *gt,
15161503
}
15171504
}
15181505

1519-
i915_vma_lock(arg.vma);
1520-
err = i915_vma_move_to_active(arg.vma, rq, flags);
1506+
err = igt_vma_move_to_active_unlocked(arg.vma, rq, flags);
15211507
if (err)
15221508
pr_err("[%s] Move to active failed: %d!\n", engine->name, err);
15231509

1524-
i915_vma_unlock(arg.vma);
1525-
15261510
if (flags & EXEC_OBJECT_NEEDS_FENCE)
15271511
i915_vma_unpin_fence(arg.vma);
15281512
i915_vma_unpin(arg.vma);

drivers/gpu/drm/i915/gt/selftest_lrc.c

Lines changed: 5 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1049,19 +1049,6 @@ store_context(struct intel_context *ce, struct i915_vma *scratch)
10491049
return batch;
10501050
}
10511051

1052-
static int move_to_active(struct i915_request *rq,
1053-
struct i915_vma *vma,
1054-
unsigned int flags)
1055-
{
1056-
int err;
1057-
1058-
i915_vma_lock(vma);
1059-
err = i915_vma_move_to_active(vma, rq, flags);
1060-
i915_vma_unlock(vma);
1061-
1062-
return err;
1063-
}
1064-
10651052
static struct i915_request *
10661053
record_registers(struct intel_context *ce,
10671054
struct i915_vma *before,
@@ -1087,19 +1074,19 @@ record_registers(struct intel_context *ce,
10871074
if (IS_ERR(rq))
10881075
goto err_after;
10891076

1090-
err = move_to_active(rq, before, EXEC_OBJECT_WRITE);
1077+
err = igt_vma_move_to_active_unlocked(before, rq, EXEC_OBJECT_WRITE);
10911078
if (err)
10921079
goto err_rq;
10931080

1094-
err = move_to_active(rq, b_before, 0);
1081+
err = igt_vma_move_to_active_unlocked(b_before, rq, 0);
10951082
if (err)
10961083
goto err_rq;
10971084

1098-
err = move_to_active(rq, after, EXEC_OBJECT_WRITE);
1085+
err = igt_vma_move_to_active_unlocked(after, rq, EXEC_OBJECT_WRITE);
10991086
if (err)
11001087
goto err_rq;
11011088

1102-
err = move_to_active(rq, b_after, 0);
1089+
err = igt_vma_move_to_active_unlocked(b_after, rq, 0);
11031090
if (err)
11041091
goto err_rq;
11051092

@@ -1237,7 +1224,7 @@ static int poison_registers(struct intel_context *ce, u32 poison, u32 *sema)
12371224
goto err_batch;
12381225
}
12391226

1240-
err = move_to_active(rq, batch, 0);
1227+
err = igt_vma_move_to_active_unlocked(batch, rq, 0);
12411228
if (err)
12421229
goto err_rq;
12431230

drivers/gpu/drm/i915/gt/selftest_mocs.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
#include "gt/intel_gpu_commands.h"
88
#include "i915_selftest.h"
99

10+
#include "gem/selftests/igt_gem_utils.h"
1011
#include "gem/selftests/mock_context.h"
1112
#include "selftests/igt_reset.h"
1213
#include "selftests/igt_spinner.h"

drivers/gpu/drm/i915/selftests/igt_spinner.c

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -119,19 +119,6 @@ static u64 hws_address(const struct i915_vma *hws,
119119
return hws->node.start + seqno_offset(rq->fence.context);
120120
}
121121

122-
static int move_to_active(struct i915_vma *vma,
123-
struct i915_request *rq,
124-
unsigned int flags)
125-
{
126-
int err;
127-
128-
i915_vma_lock(vma);
129-
err = i915_vma_move_to_active(vma, rq, flags);
130-
i915_vma_unlock(vma);
131-
132-
return err;
133-
}
134-
135122
struct i915_request *
136123
igt_spinner_create_request(struct igt_spinner *spin,
137124
struct intel_context *ce,
@@ -162,11 +149,11 @@ igt_spinner_create_request(struct igt_spinner *spin,
162149
if (IS_ERR(rq))
163150
return ERR_CAST(rq);
164151

165-
err = move_to_active(vma, rq, 0);
152+
err = igt_vma_move_to_active_unlocked(vma, rq, 0);
166153
if (err)
167154
goto cancel_rq;
168155

169-
err = move_to_active(hws, rq, 0);
156+
err = igt_vma_move_to_active_unlocked(hws, rq, 0);
170157
if (err)
171158
goto cancel_rq;
172159

0 commit comments

Comments
 (0)