[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9fb1cd9d-89cb-4f45-9d0c-9f0102e000e6@redhat.com>
Date: Fri, 24 Nov 2023 11:15:12 +0100
From: Marco Pagani <marpagan@...hat.com>
To: Maxime Ripard <mripard@...nel.org>
Cc: Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Thomas Zimmermann <tzimmermann@...e.de>,
David Airlie <airlied@...il.com>,
Daniel Vetter <daniel@...ll.ch>,
Sumit Semwal <sumit.semwal@...aro.org>,
Christian Koenig <christian.koenig@....com>,
Javier Martinez Canillas <javierm@...hat.com>,
linux-kernel@...r.kernel.org, dri-devel@...ts.freedesktop.org,
linux-media@...r.kernel.org, linaro-mm-sig@...ts.linaro.org
Subject: Re: [PATCH v4] drm/test: add a test suite for GEM objects backed by
shmem
On 2023-11-24 09:49, Maxime Ripard wrote:
> Hi,
>
> On Thu, Nov 23, 2023 at 11:01:46AM +0100, Marco Pagani wrote:
>> +static int drm_gem_shmem_test_init(struct kunit *test)
>> +{
>> + struct device *dev;
>> + struct fake_dev {
>> + struct drm_device drm_dev;
>> + } *fdev;
>> +
>
> [...]
>
>> +
>> + /*
>> + * The DRM core will automatically initialize the GEM core and create
>> + * a DRM Memory Manager object which provides an address space pool
>> + * for GEM objects allocation.
>> + */
>> + fdev = drm_kunit_helper_alloc_drm_device(test, dev, struct fake_dev,
>> + drm_dev, DRIVER_GEM);
>> + KUNIT_ASSERT_NOT_ERR_OR_NULL(test, fdev);
>
> Sorry I missed it earlier, but you don't need the intermediate structure
> if you use
>
> struct drm_device *drm;
>
> drm = __drm_kunit_helper_alloc_drm_device(test, dev, sizeof(*drm), 0, DRIVER_GEM);
> KUNIT_ASSERT_NOT_ERR_OR_NULL(test, drm);
>
I prefer to use drm_kunit_helper_alloc_drm_device() with the intermediate
structure. It makes the code clearer, in my opinion. Initially, when
developing the suite, I was using __drm_kunit_helper_alloc_drm_device()
as most test suites do, but I feel the list of arguments including
"sizeof(*drm), 0," is less straightforward to understand.
Thanks,
Marco
Powered by blists - more mailing lists