Re: [PATCH] kunit: Setup DMA masks on the kunit device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Feb 21, 2024 at 01:53:24PM +0100, Maxime Ripard wrote:
> Commit d393acce7b3f ("drm/tests: Switch to kunit devices") switched the
> DRM device creation helpers from an ad-hoc implementation to the new
> kunit device creation helpers introduced in commit d03c720e03bd ("kunit:
> Add APIs for managing devices").
> 
> However, while the DRM helpers were using a platform_device, the kunit
> helpers are using a dedicated bus and device type.
> 
> That situation creates small differences in the initialisation, and one
> of them is that the kunit devices do not have the DMA masks setup. In
> turn, this means that we can't do any kind of DMA buffer allocation
> anymore, which creates a regression on some (downstream for now) tests.
> 

This is wrong. The mainline kernel crashes for me without this patch.

With v6.8-rc6:

[    6.401720]         ok 3 Above the allocation limit
[    6.407679] ------------[ cut here ]------------
[    6.407927] WARNING: CPU: 1 PID: 1592 at kernel/dma/mapping.c:503 dma_alloc_attrs+0x36/0x60
...
[    6.413161]     # ttm_pool_alloc_basic: ASSERTION FAILED at drivers/gpu/drm/ttm/tests/ttm_pool_test.c:162
[    6.413161]     Expected err == 0, but
[    6.413161]         err == -12 (0xfffffffffffffff4)
[    6.416872]         not ok 4 One page, with coherent DMA mappings enabled
[    6.420623] ------------[ cut here ]------------
[    6.420900] list_add corruption. prev->next should be next (ffffffff86d3e930), but was 6b6b6b6b6b6b6b6b. (prev=ffff8f3143621e20).

and downhill from there. Granted, this is due to bad cleanup in the
ttm unit tests after a failure, but the offending code causing that failure
is already in the mainline kernel.

> Let's set up a default DMA mask that should work on any platform to fix
> it.
> 
> Fixes: d03c720e03bd ("kunit: Add APIs for managing devices")
> Signed-off-by: Maxime Ripard <mripard@xxxxxxxxxx>

Tested-by: Guenter Roeck <linux@xxxxxxxxxxxx>

Guenter




[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux