diff mbox

[-next] drm/amdgpu: use kmemdup rather than duplicating its implementation

Message ID 1469722697-15220-1-git-send-email-weiyj.lk@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Wei Yongjun July 28, 2016, 4:18 p.m. UTC
Use kmemdup rather than duplicating its implementation.

Generated by: scripts/coccinelle/api/memdup.cocci

Signed-off-by: Wei Yongjun <weiyj.lk@gmail.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

Sean Paul July 29, 2016, 7:35 p.m. UTC | #1
On Thu, Jul 28, 2016 at 12:18 PM, Wei Yongjun <weiyj.lk@gmail.com> wrote:
> Use kmemdup rather than duplicating its implementation.
>
> Generated by: scripts/coccinelle/api/memdup.cocci
>
> Signed-off-by: Wei Yongjun <weiyj.lk@gmail.com>


Thanks for the patch. I'll apply this to -misc once the merge window is closed.

Acked-by: Sean Paul <seanpaul@chromium.org>


> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
> index a46a64c..b779b5f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
> @@ -296,12 +296,10 @@ int amdgpu_uvd_suspend(struct amdgpu_device *adev)
>         size = amdgpu_bo_size(adev->uvd.vcpu_bo);
>         ptr = adev->uvd.cpu_addr;
>
> -       adev->uvd.saved_bo = kmalloc(size, GFP_KERNEL);
> +       adev->uvd.saved_bo = kmemdup(ptr, size, GFP_KERNEL);
>         if (!adev->uvd.saved_bo)
>                 return -ENOMEM;
>
> -       memcpy(adev->uvd.saved_bo, ptr, size);
> -
>         return 0;
>  }
>
>
>
>
Alex Deucher July 29, 2016, 7:38 p.m. UTC | #2
> -----Original Message-----

> From: Sean Paul [mailto:seanpaul@google.com]

> Sent: Friday, July 29, 2016 3:35 PM

> To: Wei Yongjun

> Cc: Deucher, Alexander; Koenig, Christian; Dave Airlie; Jiang, Sonny; Liu, Leo;

> Nath, Arindam; Zhou, David(ChunMing); Zhou, Jammy; Liu, Monk; dri-devel;

> Linux Kernel Mailing List

> Subject: Re: [PATCH -next] drm/amdgpu: use kmemdup rather than

> duplicating its implementation

> 

> On Thu, Jul 28, 2016 at 12:18 PM, Wei Yongjun <weiyj.lk@gmail.com> wrote:

> > Use kmemdup rather than duplicating its implementation.

> >

> > Generated by: scripts/coccinelle/api/memdup.cocci

> >

> > Signed-off-by: Wei Yongjun <weiyj.lk@gmail.com>

> 

> 

> Thanks for the patch. I'll apply this to -misc once the merge window is closed.

> 

> Acked-by: Sean Paul <seanpaul@chromium.org>


Unless you've already applied this to the misc tree, I'd prefer to take it via the amdgpu tree.

Alex

> 

> 

> > ---

> >  drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 4 +---

> >  1 file changed, 1 insertion(+), 3 deletions(-)

> >

> > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c

> b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c

> > index a46a64c..b779b5f 100644

> > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c

> > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c

> > @@ -296,12 +296,10 @@ int amdgpu_uvd_suspend(struct amdgpu_device

> *adev)

> >         size = amdgpu_bo_size(adev->uvd.vcpu_bo);

> >         ptr = adev->uvd.cpu_addr;

> >

> > -       adev->uvd.saved_bo = kmalloc(size, GFP_KERNEL);

> > +       adev->uvd.saved_bo = kmemdup(ptr, size, GFP_KERNEL);

> >         if (!adev->uvd.saved_bo)

> >                 return -ENOMEM;

> >

> > -       memcpy(adev->uvd.saved_bo, ptr, size);

> > -

> >         return 0;

> >  }

> >

> >

> >

> >
Sean Paul July 29, 2016, 7:40 p.m. UTC | #3
On Fri, Jul 29, 2016 at 3:38 PM, Deucher, Alexander
<Alexander.Deucher@amd.com> wrote:
>> -----Original Message-----
>> From: Sean Paul [mailto:seanpaul@google.com]
>> Sent: Friday, July 29, 2016 3:35 PM
>> To: Wei Yongjun
>> Cc: Deucher, Alexander; Koenig, Christian; Dave Airlie; Jiang, Sonny; Liu, Leo;
>> Nath, Arindam; Zhou, David(ChunMing); Zhou, Jammy; Liu, Monk; dri-devel;
>> Linux Kernel Mailing List
>> Subject: Re: [PATCH -next] drm/amdgpu: use kmemdup rather than
>> duplicating its implementation
>>
>> On Thu, Jul 28, 2016 at 12:18 PM, Wei Yongjun <weiyj.lk@gmail.com> wrote:
>> > Use kmemdup rather than duplicating its implementation.
>> >
>> > Generated by: scripts/coccinelle/api/memdup.cocci
>> >
>> > Signed-off-by: Wei Yongjun <weiyj.lk@gmail.com>
>>
>>
>> Thanks for the patch. I'll apply this to -misc once the merge window is closed.
>>
>> Acked-by: Sean Paul <seanpaul@chromium.org>
>
> Unless you've already applied this to the misc tree, I'd prefer to take it via the amdgpu tree.
>

Nope, it's all yours.

Sean


> Alex
>
>>
>>
>> > ---
>> >  drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 4 +---
>> >  1 file changed, 1 insertion(+), 3 deletions(-)
>> >
>> > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>> > index a46a64c..b779b5f 100644
>> > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>> > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>> > @@ -296,12 +296,10 @@ int amdgpu_uvd_suspend(struct amdgpu_device
>> *adev)
>> >         size = amdgpu_bo_size(adev->uvd.vcpu_bo);
>> >         ptr = adev->uvd.cpu_addr;
>> >
>> > -       adev->uvd.saved_bo = kmalloc(size, GFP_KERNEL);
>> > +       adev->uvd.saved_bo = kmemdup(ptr, size, GFP_KERNEL);
>> >         if (!adev->uvd.saved_bo)
>> >                 return -ENOMEM;
>> >
>> > -       memcpy(adev->uvd.saved_bo, ptr, size);
>> > -
>> >         return 0;
>> >  }
>> >
>> >
>> >
>> >
Nicolai Hähnle Aug. 1, 2016, 12:16 p.m. UTC | #4
On 29.07.2016 20:38, Deucher, Alexander wrote:
>> -----Original Message-----
>> From: Sean Paul [mailto:seanpaul@google.com]
>> Sent: Friday, July 29, 2016 3:35 PM
>> To: Wei Yongjun
>> Cc: Deucher, Alexander; Koenig, Christian; Dave Airlie; Jiang, Sonny; Liu, Leo;
>> Nath, Arindam; Zhou, David(ChunMing); Zhou, Jammy; Liu, Monk; dri-devel;
>> Linux Kernel Mailing List
>> Subject: Re: [PATCH -next] drm/amdgpu: use kmemdup rather than
>> duplicating its implementation
>>
>> On Thu, Jul 28, 2016 at 12:18 PM, Wei Yongjun <weiyj.lk@gmail.com> wrote:
>>> Use kmemdup rather than duplicating its implementation.
>>>
>>> Generated by: scripts/coccinelle/api/memdup.cocci
>>>
>>> Signed-off-by: Wei Yongjun <weiyj.lk@gmail.com>
>>
>>
>> Thanks for the patch. I'll apply this to -misc once the merge window is closed.
>>
>> Acked-by: Sean Paul <seanpaul@chromium.org>
>
> Unless you've already applied this to the misc tree, I'd prefer to take it via the amdgpu tree.

I recall Christian NAKing an almost identical patch some time ago. 
Something about needing memcpy_fromio()?

Yup, it's here: https://lkml.org/lkml/2016/5/19/235

Cheers,
Nicolai

>
> Alex
>
>>
>>
>>> ---
>>>  drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 4 +---
>>>  1 file changed, 1 insertion(+), 3 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>>> index a46a64c..b779b5f 100644
>>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>>> @@ -296,12 +296,10 @@ int amdgpu_uvd_suspend(struct amdgpu_device
>> *adev)
>>>         size = amdgpu_bo_size(adev->uvd.vcpu_bo);
>>>         ptr = adev->uvd.cpu_addr;
>>>
>>> -       adev->uvd.saved_bo = kmalloc(size, GFP_KERNEL);
>>> +       adev->uvd.saved_bo = kmemdup(ptr, size, GFP_KERNEL);
>>>         if (!adev->uvd.saved_bo)
>>>                 return -ENOMEM;
>>>
>>> -       memcpy(adev->uvd.saved_bo, ptr, size);
>>> -
>>>         return 0;
>>>  }
>>>
>>>
>>>
>>>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
>
Christian König Aug. 2, 2016, 1:37 p.m. UTC | #5
Am 01.08.2016 um 14:16 schrieb Nicolai Hähnle:
> On 29.07.2016 20:38, Deucher, Alexander wrote:
>>> -----Original Message-----
>>> From: Sean Paul [mailto:seanpaul@google.com]
>>> Sent: Friday, July 29, 2016 3:35 PM
>>> To: Wei Yongjun
>>> Cc: Deucher, Alexander; Koenig, Christian; Dave Airlie; Jiang, 
>>> Sonny; Liu, Leo;
>>> Nath, Arindam; Zhou, David(ChunMing); Zhou, Jammy; Liu, Monk; 
>>> dri-devel;
>>> Linux Kernel Mailing List
>>> Subject: Re: [PATCH -next] drm/amdgpu: use kmemdup rather than
>>> duplicating its implementation
>>>
>>> On Thu, Jul 28, 2016 at 12:18 PM, Wei Yongjun <weiyj.lk@gmail.com> 
>>> wrote:
>>>> Use kmemdup rather than duplicating its implementation.
>>>>
>>>> Generated by: scripts/coccinelle/api/memdup.cocci
>>>>
>>>> Signed-off-by: Wei Yongjun <weiyj.lk@gmail.com>
>>>
>>>
>>> Thanks for the patch. I'll apply this to -misc once the merge window 
>>> is closed.
>>>
>>> Acked-by: Sean Paul <seanpaul@chromium.org>
>>
>> Unless you've already applied this to the misc tree, I'd prefer to 
>> take it via the amdgpu tree.
>
> I recall Christian NAKing an almost identical patch some time ago. 
> Something about needing memcpy_fromio()?
>
> Yup, it's here: https://lkml.org/lkml/2016/5/19/235

Yes, exactly. We need memcpy_fromio() and memcpy_toio() in the 
suspend/resume functions instead of memcpy.

I just didn't had time to test that yet (and that was unfortunately a 
few month ago already).

So please drop this patch,
Christian.

>
> Cheers,
> Nicolai
>
>>
>> Alex
>>
>>>
>>>
>>>> ---
>>>>  drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 4 +---
>>>>  1 file changed, 1 insertion(+), 3 deletions(-)
>>>>
>>>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>>>> index a46a64c..b779b5f 100644
>>>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>>>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
>>>> @@ -296,12 +296,10 @@ int amdgpu_uvd_suspend(struct amdgpu_device
>>> *adev)
>>>>         size = amdgpu_bo_size(adev->uvd.vcpu_bo);
>>>>         ptr = adev->uvd.cpu_addr;
>>>>
>>>> -       adev->uvd.saved_bo = kmalloc(size, GFP_KERNEL);
>>>> +       adev->uvd.saved_bo = kmemdup(ptr, size, GFP_KERNEL);
>>>>         if (!adev->uvd.saved_bo)
>>>>                 return -ENOMEM;
>>>>
>>>> -       memcpy(adev->uvd.saved_bo, ptr, size);
>>>> -
>>>>         return 0;
>>>>  }
>>>>
>>>>
>>>>
>>>>
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel@lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/dri-devel
>>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff mbox

Patch

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
index a46a64c..b779b5f 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
@@ -296,12 +296,10 @@  int amdgpu_uvd_suspend(struct amdgpu_device *adev)
 	size = amdgpu_bo_size(adev->uvd.vcpu_bo);
 	ptr = adev->uvd.cpu_addr;
 
-	adev->uvd.saved_bo = kmalloc(size, GFP_KERNEL);
+	adev->uvd.saved_bo = kmemdup(ptr, size, GFP_KERNEL);
 	if (!adev->uvd.saved_bo)
 		return -ENOMEM;
 
-	memcpy(adev->uvd.saved_bo, ptr, size);
-
 	return 0;
 }