[Linux-stm32] [PATCH] dmaengine: fix NULL pointer in channel unregistration function

Vinod Koul vkoul at kernel.org
Thu Dec 21 16:30:12 UTC 2023


On Wed, 13 Dec 2023 17:04:52 +0100, Amelie Delaunay wrote:
> __dma_async_device_channel_register() can fail. In case of failure,
> chan->local is freed (with free_percpu()), and chan->local is nullified.
> When dma_async_device_unregister() is called (because of managed API or
> intentionally by DMA controller driver), channels are unconditionally
> unregistered, leading to this NULL pointer:
> [    1.318693] Unable to handle kernel NULL pointer dereference at virtual address 00000000000000d0
> [...]
> [    1.484499] Call trace:
> [    1.486930]  device_del+0x40/0x394
> [    1.490314]  device_unregister+0x20/0x7c
> [    1.494220]  __dma_async_device_channel_unregister+0x68/0xc0
> 
> [...]

Applied, thanks!

[1/1] dmaengine: fix NULL pointer in channel unregistration function
      commit: f5c24d94512f1b288262beda4d3dcb9629222fc7

Best regards,
-- 
~Vinod





More information about the Linux-stm32 mailing list