All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
To: Stanimir Varbanov <stanimir.varbanov@linaro.org>,
	Stephen Boyd <swboyd@chromium.org>
Cc: Robin Murphy <robin.murphy@arm.com>,
	mchehab@kernel.org, linux-media@vger.kernel.org,
	linux-arm-msm@vger.kernel.org,
	linux-arm-msm-owner@vger.kernel.org
Subject: Re: [PATCH] media: venus: core: Drop local dma_parms
Date: Fri, 02 Oct 2020 18:15:03 +0530	[thread overview]
Message-ID: <7dacfcb3d8cb7e99e348f00ee15f917a@codeaurora.org> (raw)
In-Reply-To: <a2f96ef5-1e67-7bc7-39e1-448b2196aef1@linaro.org>

On 2020-10-02 16:57, Stanimir Varbanov wrote:
> 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@arm.com>
>>> ---
>>>  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 ?

+Stephen reported this, this was recently backported to 5.4 kernel
where playing youtube with dma api debug enabled would throw this
warning and I am almost 100% certain this is the commit which caused
the warning to appear again.

Thanks,
Sai

-- 
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a 
member
of Code Aurora Forum, hosted by The Linux Foundation

  reply	other threads:[~2020-10-02 12:45 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-03 21:14 [PATCH] media: venus: core: Drop local dma_parms Robin Murphy
2020-09-04 11:36 ` Kieran Bingham
2020-09-04 20:26 ` Stanimir Varbanov
2020-09-10 14:36   ` Robin Murphy
2020-10-02  8:06 ` Sai Prakash Ranjan
2020-10-02 11:27   ` Stanimir Varbanov
2020-10-02 12:45     ` Sai Prakash Ranjan [this message]
2020-10-06  1:02       ` Stephen Boyd
2020-10-06  5:23         ` Sai Prakash Ranjan
2020-10-14 16:09           ` Robin Murphy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7dacfcb3d8cb7e99e348f00ee15f917a@codeaurora.org \
    --to=saiprakash.ranjan@codeaurora.org \
    --cc=linux-arm-msm-owner@vger.kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=robin.murphy@arm.com \
    --cc=stanimir.varbanov@linaro.org \
    --cc=swboyd@chromium.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.