Message ID | 20230720-kms-kunit-actions-rework-v2-5-175017bd56ab@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm: kunit: Switch to kunit actions | expand |
Hi Maxime, kernel test robot noticed the following build warnings: [auto build test WARNING on c58c49dd89324b18a812762a2bfa5a0458e4f252] url: https://github.com/intel-lab-lkp/linux/commits/Maxime-Ripard/drm-tests-helpers-Switch-to-kunit-actions/20230720-191901 base: c58c49dd89324b18a812762a2bfa5a0458e4f252 patch link: https://lore.kernel.org/r/20230720-kms-kunit-actions-rework-v2-5-175017bd56ab%40kernel.org patch subject: [PATCH v2 05/11] drm/tests: helpers: Create a helper to allocate a locking ctx config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20230720/202307202244.26VyeZKj-lkp@intel.com/config) compiler: alpha-linux-gcc (GCC) 12.3.0 reproduce: (https://download.01.org/0day-ci/archive/20230720/202307202244.26VyeZKj-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202307202244.26VyeZKj-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/gpu/drm/tests/drm_kunit_helpers.c:145: warning: expecting prototype for drm_kunit_helper_context_alloc(). Prototype was for drm_kunit_helper_acquire_ctx_alloc() instead vim +145 drivers/gpu/drm/tests/drm_kunit_helpers.c 130 131 /** 132 * drm_kunit_helper_context_alloc - Allocates an acquire context 133 * @test: The test context object 134 * 135 * Allocates and initializes a modeset acquire context. 136 * 137 * The context is tied to the kunit test context, so we must not call 138 * drm_modeset_acquire_fini() on it, it will be done so automatically. 139 * 140 * Returns: 141 * An ERR_PTR on error, a pointer to the newly allocated context otherwise 142 */ 143 struct drm_modeset_acquire_ctx * 144 drm_kunit_helper_acquire_ctx_alloc(struct kunit *test) > 145 { 146 struct drm_modeset_acquire_ctx *ctx; 147 int ret; 148 149 ctx = kunit_kzalloc(test, sizeof(*ctx), GFP_KERNEL); 150 KUNIT_ASSERT_NOT_NULL(test, ctx); 151 152 drm_modeset_acquire_init(ctx, 0); 153 154 ret = kunit_add_action_or_reset(test, 155 action_drm_release_context, 156 ctx); 157 if (ret) 158 return ERR_PTR(ret); 159 160 return ctx; 161 } 162 EXPORT_SYMBOL_GPL(drm_kunit_helper_acquire_ctx_alloc); 163
diff --git a/drivers/gpu/drm/tests/drm_kunit_helpers.c b/drivers/gpu/drm/tests/drm_kunit_helpers.c index 5856beb7f7d7..5130d4553262 100644 --- a/drivers/gpu/drm/tests/drm_kunit_helpers.c +++ b/drivers/gpu/drm/tests/drm_kunit_helpers.c @@ -120,5 +120,46 @@ __drm_kunit_helper_alloc_drm_device_with_driver(struct kunit *test, } EXPORT_SYMBOL_GPL(__drm_kunit_helper_alloc_drm_device_with_driver); +static void action_drm_release_context(void *ptr) +{ + struct drm_modeset_acquire_ctx *ctx = ptr; + + drm_modeset_drop_locks(ctx); + drm_modeset_acquire_fini(ctx); +} + +/** + * drm_kunit_helper_context_alloc - Allocates an acquire context + * @test: The test context object + * + * Allocates and initializes a modeset acquire context. + * + * The context is tied to the kunit test context, so we must not call + * drm_modeset_acquire_fini() on it, it will be done so automatically. + * + * Returns: + * An ERR_PTR on error, a pointer to the newly allocated context otherwise + */ +struct drm_modeset_acquire_ctx * +drm_kunit_helper_acquire_ctx_alloc(struct kunit *test) +{ + struct drm_modeset_acquire_ctx *ctx; + int ret; + + ctx = kunit_kzalloc(test, sizeof(*ctx), GFP_KERNEL); + KUNIT_ASSERT_NOT_NULL(test, ctx); + + drm_modeset_acquire_init(ctx, 0); + + ret = kunit_add_action_or_reset(test, + action_drm_release_context, + ctx); + if (ret) + return ERR_PTR(ret); + + return ctx; +} +EXPORT_SYMBOL_GPL(drm_kunit_helper_acquire_ctx_alloc); + MODULE_AUTHOR("Maxime Ripard <maxime@cerno.tech>"); MODULE_LICENSE("GPL"); diff --git a/include/drm/drm_kunit_helpers.h b/include/drm/drm_kunit_helpers.h index ed013fdcc1ff..4ba5e10653c6 100644 --- a/include/drm/drm_kunit_helpers.h +++ b/include/drm/drm_kunit_helpers.h @@ -87,5 +87,7 @@ __drm_kunit_helper_alloc_drm_device(struct kunit *test, sizeof(_type), \ offsetof(_type, _member), \ _feat)) +struct drm_modeset_acquire_ctx * +drm_kunit_helper_acquire_ctx_alloc(struct kunit *test); #endif // DRM_KUNIT_HELPERS_H_