OSDN Git Service

dmaengine: fix null ptr check for __dma_async_device_channel_register()
authorDave Jiang <dave.jiang@intel.com>
Fri, 31 Jan 2020 17:58:39 +0000 (10:58 -0700)
committerVinod Koul <vkoul@kernel.org>
Mon, 3 Feb 2020 04:17:54 +0000 (09:47 +0530)
Add check to pointer after assignment before accessing members.

Fixes: d2fb0a043838: ("dmaengine: break out channel registration")

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/158049351973.45445.3291586905226032744.stgit@djiang5-desk3.ch.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/dmaengine.c

index 7b1cefc..3432dac 100644 (file)
@@ -962,6 +962,9 @@ static int __dma_async_device_channel_register(struct dma_device *device,
 
        tchan = list_first_entry_or_null(&device->channels,
                                         struct dma_chan, device_node);
+       if (!tchan)
+               return -ENODEV;
+
        if (tchan->dev) {
                idr_ref = tchan->dev->idr_ref;
        } else {