On 10/2/20 11:06 AM, Sai Prakash Ranjan wrote: > Hi Robin, > > On 2020-09-04 02:44, Robin Murphy wrote: >> Since commit 9495b7e92f71 ("driver core: platform: Initialize dma_parms >> for platform devices"), struct platform_device already provides a >> dma_parms structure, so we can save allocating another one. >> >> Also the DMA segment size is simply a size, not a bitmask. >> >> Signed-off-by: Robin Murphy <robin.murphy@xxxxxxx> >> --- >> drivers/media/platform/qcom/venus/core.c | 8 +------- >> 1 file changed, 1 insertion(+), 7 deletions(-) >> >> diff --git a/drivers/media/platform/qcom/venus/core.c >> b/drivers/media/platform/qcom/venus/core.c >> index 203c6538044f..2fa9275d75ff 100644 >> --- a/drivers/media/platform/qcom/venus/core.c >> +++ b/drivers/media/platform/qcom/venus/core.c >> @@ -226,13 +226,7 @@ static int venus_probe(struct platform_device *pdev) >> if (ret) >> return ret; >> >> - if (!dev->dma_parms) { >> - dev->dma_parms = devm_kzalloc(dev, sizeof(*dev->dma_parms), >> - GFP_KERNEL); >> - if (!dev->dma_parms) >> - return -ENOMEM; >> - } >> - dma_set_max_seg_size(dev, DMA_BIT_MASK(32)); >> + dma_set_max_seg_size(dev, UINT_MAX); >> >> INIT_LIST_HEAD(&core->instances); >> mutex_init(&core->lock); > > This reintroduced dma api debug warning which the original commit was > addressing or rather thought it addressed. > > DMA-API: qcom-venus aa00000.video-codec: mapping sg segment longer than > device claims to support [len=4194304] [max=65536] > WARNING: CPU: 3 PID: 5365 at kernel/dma/debug.c:1225 > debug_dma_map_sg+0x1ac/0x2c8 > <...> > pstate: 60400009 (nZCv daif +PAN -UAO) > pc : debug_dma_map_sg+0x1ac/0x2c8 > lr : debug_dma_map_sg+0x1ac/0x2c8 > sp : ffffff8016517850 > x29: ffffff8016517860 x28: 0000000000010000 > x27: 00000000ffffffff x26: ffffff80da45eb00 > x25: ffffffd03c465000 x24: ffffffd03b3c1000 > x23: ffffff803e262d80 x22: ffffff80d9a0d010 > x21: 0000000000000001 x20: 0000000000000001 > x19: 0000000000000001 x18: 00000000ffff0a10 > x17: ffffffd03b84a000 x16: 0000000000000037 > x15: ffffffd03a950610 x14: 0000000000000001 > x13: 0000000000000000 x12: 00000000a3b31442 > x11: 0000000000000000 x10: dfffffd000000001 > x9 : f544368f90c5ee00 x8 : f544368f90c5ee00 > x7 : ffffffd03af5d570 x6 : 0000000000000000 > x5 : 0000000000000080 x4 : 0000000000000001 > x3 : ffffffd03a9174b0 x2 : 0000000000000001 > x1 : 0000000000000008 x0 : 000000000000007a > Call trace: > debug_dma_map_sg+0x1ac/0x2c8 > vb2_dma_sg_alloc+0x274/0x2f4 [videobuf2_dma_sg] > __vb2_queue_alloc+0x14c/0x3b0 [videobuf2_common] > vb2_core_reqbufs+0x234/0x374 [videobuf2_common] > vb2_reqbufs+0x4c/0x64 [videobuf2_v4l2] > v4l2_m2m_reqbufs+0x50/0x84 [v4l2_mem2mem] > v4l2_m2m_ioctl_reqbufs+0x2c/0x38 [v4l2_mem2mem] > v4l_reqbufs+0x4c/0x5c > __video_do_ioctl+0x2cc/0x3e0 > video_usercopy+0x3b0/0x910 > video_ioctl2+0x38/0x48 > v4l2_ioctl+0x6c/0x80 > do_video_ioctl+0xb54/0x2708 > v4l2_compat_ioctl32+0x5c/0xcc > __se_compat_sys_ioctl+0x100/0x2064 > __arm64_compat_sys_ioctl+0x20/0x2c > el0_svc_common+0xa8/0x178 > el0_svc_compat_handler+0x2c/0x40 > el0_svc_compat+0x8/0x10 > > Thanks, > Sai > Do you have the mentioned above commit when you see this warning ? -- regards, Stan