[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87lefbhfgi.fsf@minerva.mail-host-address-is-not-set>
Date: Wed, 19 Jul 2023 21:24:45 +0200
From: Javier Martinez Canillas <javierm@...hat.com>
To: suijingfeng <suijingfeng@...ngson.cn>,
Maxime Ripard <mripard@...nel.org>,
David Airlie <airlied@...il.com>,
Daniel Vetter <daniel@...ll.ch>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Thomas Zimmermann <tzimmermann@...e.de>,
Emma Anholt <emma@...olt.net>
Cc: linux-kernel@...r.kernel.org, dri-devel@...ts.freedesktop.org
Subject: Re: [05/11] drm/tests: helpers: Create an helper to allocate a
locking ctx
suijingfeng <suijingfeng@...ngson.cn> writes:
> Hi,
>
> On 2023/7/10 15:47, Maxime Ripard wrote:
>> As we get more and more tests, the locking context initialisation
[...]
>> +/**
>> + * 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);
>
> Because kunit_kzalloc() is also managed,
>
> Is there any possibility that kfree(ctx) get called before
> action_drm_release_context(ctx) ?
>
> Currently, I can't find where the order is guaranteed.
>
It isn't documented indeed in Documentation/dev-tools/kunit/usage.rst but
the kunit_add_action() kernel-doc says:
"All functions registered with kunit_add_action() will execute in the
opposite order to that they were registered in".
And now that kunit_kzalloc() and friends are also implemented using the
cleanup actions, it will be part of that execution chain.
Probably the kunit docs can make this more clear.
--
Best regards,
Javier Martinez Canillas
Core Platforms
Red Hat
Powered by blists - more mailing lists