@@ -150,14 +150,22 @@ static void test_prepare(struct kunit *test)
150150static void test_prepare_array (struct kunit * test )
151151{
152152 struct drm_exec_priv * priv = test -> priv ;
153- struct drm_gem_object gobj1 = { };
154- struct drm_gem_object gobj2 = { };
155- struct drm_gem_object * array [] = { & gobj1 , & gobj2 };
153+ struct drm_gem_object * gobj1 ;
154+ struct drm_gem_object * gobj2 ;
155+ struct drm_gem_object * array [] = {
156+ (gobj1 = kunit_kzalloc (test , sizeof (* gobj1 ), GFP_KERNEL )),
157+ (gobj2 = kunit_kzalloc (test , sizeof (* gobj2 ), GFP_KERNEL )),
158+ };
156159 struct drm_exec exec ;
157160 int ret ;
158161
159- drm_gem_private_object_init (priv -> drm , & gobj1 , PAGE_SIZE );
160- drm_gem_private_object_init (priv -> drm , & gobj2 , PAGE_SIZE );
162+ if (!gobj1 || !gobj2 ) {
163+ KUNIT_FAIL (test , "Failed to allocate GEM objects.\n" );
164+ return ;
165+ }
166+
167+ drm_gem_private_object_init (priv -> drm , gobj1 , PAGE_SIZE );
168+ drm_gem_private_object_init (priv -> drm , gobj2 , PAGE_SIZE );
161169
162170 drm_exec_init (& exec , DRM_EXEC_INTERRUPTIBLE_WAIT , 0 );
163171 drm_exec_until_all_locked (& exec )
@@ -166,8 +174,8 @@ static void test_prepare_array(struct kunit *test)
166174 KUNIT_EXPECT_EQ (test , ret , 0 );
167175 drm_exec_fini (& exec );
168176
169- drm_gem_private_object_fini (& gobj1 );
170- drm_gem_private_object_fini (& gobj2 );
177+ drm_gem_private_object_fini (gobj1 );
178+ drm_gem_private_object_fini (gobj2 );
171179}
172180
173181static void test_multiple_loops (struct kunit * test )
0 commit comments