2024-02-26 11:06:47

by Marco Pagani

[permalink] [raw]
Subject: [PATCH] drm/test/shmem: set a DMA mask for the mock device

Set a DMA mask for the mock device to avoid warnings generated in
dma_map_sgtable().

Reported-by: Guenter Roeck <[email protected]>
Signed-off-by: Marco Pagani <[email protected]>
---
drivers/gpu/drm/tests/drm_gem_shmem_test.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/tests/drm_gem_shmem_test.c b/drivers/gpu/drm/tests/drm_gem_shmem_test.c
index 91202e40cde9..d691b29a4312 100644
--- a/drivers/gpu/drm/tests/drm_gem_shmem_test.c
+++ b/drivers/gpu/drm/tests/drm_gem_shmem_test.c
@@ -341,11 +341,15 @@ static int drm_gem_shmem_test_init(struct kunit *test)
{
struct device *dev;
struct drm_device *drm_dev;
+ int ret;

/* Allocate a parent device */
dev = drm_kunit_helper_alloc_device(test);
KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dev);

+ ret = dma_coerce_mask_and_coherent(dev, DMA_BIT_MASK(64));
+ KUNIT_EXPECT_EQ(test, ret, 0);
+
/*
* The DRM core will automatically initialize the GEM core and create
* a DRM Memory Manager object which provides an address space pool
--
2.43.2



2024-02-26 11:27:07

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] drm/test/shmem: set a DMA mask for the mock device

Hi,

On Mon, Feb 26, 2024 at 12:00:27PM +0100, Marco Pagani wrote:
> Set a DMA mask for the mock device to avoid warnings generated in
> dma_map_sgtable().
>
> Reported-by: Guenter Roeck <[email protected]>
> Signed-off-by: Marco Pagani <[email protected]>

I've submitted last week this patch:
https://lore.kernel.org/all/[email protected]/

Which should be equivalent, but fixes the issue for all users in the
tree.

Maxime


Attachments:
(No filename) (471.00 B)
signature.asc (235.00 B)
Download all attachments

2024-02-26 15:51:52

by Marco Pagani

[permalink] [raw]
Subject: Re: [PATCH] drm/test/shmem: set a DMA mask for the mock device


On 2024-02-26 12:26, Maxime Ripard wrote:
> Hi,
>
> On Mon, Feb 26, 2024 at 12:00:27PM +0100, Marco Pagani wrote:
>> Set a DMA mask for the mock device to avoid warnings generated in
>> dma_map_sgtable().
>>
>> Reported-by: Guenter Roeck <[email protected]>
>> Signed-off-by: Marco Pagani <[email protected]>
>
> I've submitted last week this patch:
> https://lore.kernel.org/all/[email protected]/
>
> Which should be equivalent, but fixes the issue for all users in the
> tree.

Hi, thanks for letting me know. Fixing this issue for all DRM tests that were
using platform devices through the helpers makes perfect sense to me. I'm a
little more thoughtful about setting the mask for all KUnit tests that use fake
devices since there may be specific use cases. Just one curiosity: why setting
the default mask manually instead of using one of the dma_set_*() functions?

Thanks,
Marco


2024-02-27 16:36:04

by Maxime Ripard

[permalink] [raw]
Subject: Re: [PATCH] drm/test/shmem: set a DMA mask for the mock device

Hi,

On Mon, Feb 26, 2024 at 04:48:51PM +0100, Marco Pagani wrote:
>
> On 2024-02-26 12:26, Maxime Ripard wrote:
> > Hi,
> >
> > On Mon, Feb 26, 2024 at 12:00:27PM +0100, Marco Pagani wrote:
> >> Set a DMA mask for the mock device to avoid warnings generated in
> >> dma_map_sgtable().
> >>
> >> Reported-by: Guenter Roeck <[email protected]>
> >> Signed-off-by: Marco Pagani <[email protected]>
> >
> > I've submitted last week this patch:
> > https://lore.kernel.org/all/[email protected]/
> >
> > Which should be equivalent, but fixes the issue for all users in the
> > tree.
>
> Hi, thanks for letting me know. Fixing this issue for all DRM tests that were
> using platform devices through the helpers makes perfect sense to me. I'm a
> little more thoughtful about setting the mask for all KUnit tests that use fake
> devices since there may be specific use cases. Just one curiosity: why setting
> the default mask manually instead of using one of the dma_set_*() functions?

I think the (well, mine at least) expectation is that a kunit device is
a device that can be used in all reasonable contexts. Setting up the
device to be able to use any DMA-related function (or functions that use
a DMA-related function) makes total sense to me.

But it's a discussion worth having I think, so it would make sense to
raise this point with the kunit maintainers if you feel like it.

Maxime


Attachments:
(No filename) (1.42 kB)
signature.asc (235.00 B)
Download all attachments