dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] drm/hisilicon: Use drmm_kzalloc() instead of devm_kzalloc()
@ 2020-07-02  1:21 Tian Tao
  2020-07-02  6:42 ` Thomas Zimmermann
  2020-07-02 13:16 ` Daniel Vetter
  0 siblings, 2 replies; 5+ messages in thread
From: Tian Tao @ 2020-07-02  1:21 UTC (permalink / raw)
  To: puck.chen, airlied, daniel, tzimmermann, kraxel,
	alexander.deucher, tglx, dri-devel, xinliang.liu, linux-kernel
  Cc: inuxarm

using the new API drmm_kzalloc() instead of devm_kzalloc()

Signed-off-by: Tian Tao <tiantao6@hisilicon.com>
---
 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
index a6fd0c2..2f20704 100644
--- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
+++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
@@ -23,6 +23,7 @@
 #include <drm/drm_print.h>
 #include <drm/drm_probe_helper.h>
 #include <drm/drm_vblank.h>
+#include <drm/drm_managed.h>
 
 #include "hibmc_drm_drv.h"
 #include "hibmc_drm_regs.h"
@@ -267,7 +268,7 @@ static int hibmc_load(struct drm_device *dev)
 	struct hibmc_drm_private *priv;
 	int ret;
 
-	priv = devm_kzalloc(dev->dev, sizeof(*priv), GFP_KERNEL);
+	priv = drmm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
 	if (!priv) {
 		DRM_ERROR("no memory to allocate for hibmc_drm_private\n");
 		return -ENOMEM;
-- 
2.7.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/hisilicon: Use drmm_kzalloc() instead of devm_kzalloc()
  2020-07-02  1:21 [PATCH] drm/hisilicon: Use drmm_kzalloc() instead of devm_kzalloc() Tian Tao
@ 2020-07-02  6:42 ` Thomas Zimmermann
  2020-07-02  7:04   ` 答复: " tiantao (H)
  2020-07-02 13:16 ` Daniel Vetter
  1 sibling, 1 reply; 5+ messages in thread
From: Thomas Zimmermann @ 2020-07-02  6:42 UTC (permalink / raw)
  To: Tian Tao, puck.chen, airlied, daniel, kraxel, alexander.deucher,
	tglx, dri-devel, xinliang.liu, linux-kernel
  Cc: inuxarm


[-- Attachment #1.1.1: Type: text/plain, Size: 1468 bytes --]

Hi

Am 02.07.20 um 03:21 schrieb Tian Tao:
> using the new API drmm_kzalloc() instead of devm_kzalloc()
> 
> Signed-off-by: Tian Tao <tiantao6@hisilicon.com>
> ---
>  drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> index a6fd0c2..2f20704 100644
> --- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> +++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> @@ -23,6 +23,7 @@
>  #include <drm/drm_print.h>
>  #include <drm/drm_probe_helper.h>
>  #include <drm/drm_vblank.h>
> +#include <drm/drm_managed.h>

Please keep the DRM include statements sorted alphabetically.

With this fixed

Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>

>  
>  #include "hibmc_drm_drv.h"
>  #include "hibmc_drm_regs.h"
> @@ -267,7 +268,7 @@ static int hibmc_load(struct drm_device *dev)
>  	struct hibmc_drm_private *priv;
>  	int ret;
>  
> -	priv = devm_kzalloc(dev->dev, sizeof(*priv), GFP_KERNEL);
> +	priv = drmm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
>  	if (!priv) {
>  		DRM_ERROR("no memory to allocate for hibmc_drm_private\n");
>  		return -ENOMEM;
> 

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 516 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* 答复: [PATCH] drm/hisilicon: Use drmm_kzalloc() instead of devm_kzalloc()
  2020-07-02  6:42 ` Thomas Zimmermann
@ 2020-07-02  7:04   ` tiantao (H)
  0 siblings, 0 replies; 5+ messages in thread
From: tiantao (H) @ 2020-07-02  7:04 UTC (permalink / raw)
  To: Thomas Zimmermann, Chenfeng (puck),
	airlied, daniel, kraxel, alexander.deucher, tglx, dri-devel,
	xinliang.liu, linux-kernel
  Cc: Linuxarm

Hi:

	Thanks for the help with the review code. I will send v2 to fixed this.

Best

-----邮件原件-----
发件人: Thomas Zimmermann [mailto:tzimmermann@suse.de] 
发送时间: 2020年7月2日 14:43
收件人: tiantao (H) <tiantao6@hisilicon.com>; Chenfeng (puck) <puck.chen@hisilicon.com>; airlied@linux.ie; daniel@ffwll.ch; kraxel@redhat.com; alexander.deucher@amd.com; tglx@linutronix.de; dri-devel@lists.freedesktop.org; xinliang.liu@linaro.org; linux-kernel@vger.kernel.org
抄送: inuxarm@huawei.com
主题: Re: [PATCH] drm/hisilicon: Use drmm_kzalloc() instead of devm_kzalloc()

Hi

Am 02.07.20 um 03:21 schrieb Tian Tao:
> using the new API drmm_kzalloc() instead of devm_kzalloc()
> 
> Signed-off-by: Tian Tao <tiantao6@hisilicon.com>
> ---
>  drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> index a6fd0c2..2f20704 100644
> --- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> +++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> @@ -23,6 +23,7 @@
>  #include <drm/drm_print.h>
>  #include <drm/drm_probe_helper.h>
>  #include <drm/drm_vblank.h>
> +#include <drm/drm_managed.h>

Please keep the DRM include statements sorted alphabetically.

With this fixed

Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>

>  
>  #include "hibmc_drm_drv.h"
>  #include "hibmc_drm_regs.h"
> @@ -267,7 +268,7 @@ static int hibmc_load(struct drm_device *dev)
>  	struct hibmc_drm_private *priv;
>  	int ret;
>  
> -	priv = devm_kzalloc(dev->dev, sizeof(*priv), GFP_KERNEL);
> +	priv = drmm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
>  	if (!priv) {
>  		DRM_ERROR("no memory to allocate for hibmc_drm_private\n");
>  		return -ENOMEM;
> 

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/hisilicon: Use drmm_kzalloc() instead of devm_kzalloc()
  2020-07-02  1:21 [PATCH] drm/hisilicon: Use drmm_kzalloc() instead of devm_kzalloc() Tian Tao
  2020-07-02  6:42 ` Thomas Zimmermann
@ 2020-07-02 13:16 ` Daniel Vetter
  2020-07-02 14:07   ` Thomas Zimmermann
  1 sibling, 1 reply; 5+ messages in thread
From: Daniel Vetter @ 2020-07-02 13:16 UTC (permalink / raw)
  To: Tian Tao
  Cc: airlied, puck.chen, linux-kernel, dri-devel, xinliang.liu,
	kraxel, tzimmermann, alexander.deucher, tglx, inuxarm

On Thu, Jul 02, 2020 at 09:21:54AM +0800, Tian Tao wrote:
> using the new API drmm_kzalloc() instead of devm_kzalloc()
> 
> Signed-off-by: Tian Tao <tiantao6@hisilicon.com>
> ---
>  drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> index a6fd0c2..2f20704 100644
> --- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> +++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
> @@ -23,6 +23,7 @@
>  #include <drm/drm_print.h>
>  #include <drm/drm_probe_helper.h>
>  #include <drm/drm_vblank.h>
> +#include <drm/drm_managed.h>
>  
>  #include "hibmc_drm_drv.h"
>  #include "hibmc_drm_regs.h"
> @@ -267,7 +268,7 @@ static int hibmc_load(struct drm_device *dev)
>  	struct hibmc_drm_private *priv;
>  	int ret;
>  
> -	priv = devm_kzalloc(dev->dev, sizeof(*priv), GFP_KERNEL);
> +	priv = drmm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);

Hm would be nice if hisilicon could entirely switch over to embedding, and
stop using the driver private pointer. Quite a bit more work though. As-is
this change here isn't really brining you closer to that, pretty much all
the lifetime bugs around hotunload are still there.
-Daniel

>  	if (!priv) {
>  		DRM_ERROR("no memory to allocate for hibmc_drm_private\n");
>  		return -ENOMEM;
> -- 
> 2.7.4
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/hisilicon: Use drmm_kzalloc() instead of devm_kzalloc()
  2020-07-02 13:16 ` Daniel Vetter
@ 2020-07-02 14:07   ` Thomas Zimmermann
  0 siblings, 0 replies; 5+ messages in thread
From: Thomas Zimmermann @ 2020-07-02 14:07 UTC (permalink / raw)
  To: Tian Tao, puck.chen, airlied, kraxel, alexander.deucher, tglx,
	dri-devel, xinliang.liu, linux-kernel, inuxarm


[-- Attachment #1.1.1: Type: text/plain, Size: 2050 bytes --]

Hi Daniel

Am 02.07.20 um 15:16 schrieb Daniel Vetter:
> On Thu, Jul 02, 2020 at 09:21:54AM +0800, Tian Tao wrote:
>> using the new API drmm_kzalloc() instead of devm_kzalloc()
>>
>> Signed-off-by: Tian Tao <tiantao6@hisilicon.com>
>> ---
>>  drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
>> index a6fd0c2..2f20704 100644
>> --- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
>> +++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
>> @@ -23,6 +23,7 @@
>>  #include <drm/drm_print.h>
>>  #include <drm/drm_probe_helper.h>
>>  #include <drm/drm_vblank.h>
>> +#include <drm/drm_managed.h>
>>  
>>  #include "hibmc_drm_drv.h"
>>  #include "hibmc_drm_regs.h"
>> @@ -267,7 +268,7 @@ static int hibmc_load(struct drm_device *dev)
>>  	struct hibmc_drm_private *priv;
>>  	int ret;
>>  
>> -	priv = devm_kzalloc(dev->dev, sizeof(*priv), GFP_KERNEL);
>> +	priv = drmm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
> 
> Hm would be nice if hisilicon could entirely switch over to embedding, and
> stop using the driver private pointer. Quite a bit more work though. As-is
> this change here isn't really brining you closer to that, pretty much all
> the lifetime bugs around hotunload are still there.

Well, it's a first step. The follow-up patch for embedding connector and
encoder removes more instances of devm_kzalloc().

Although I have to say, I'd rather review a longer patch series that
fully addresses the problem, instead the current one-by-one approach.

Best regards
Thomas

> -Daniel
> 
>>  	if (!priv) {
>>  		DRM_ERROR("no memory to allocate for hibmc_drm_private\n");
>>  		return -ENOMEM;
>> -- 
>> 2.7.4
>>
> 

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 516 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-07-02 14:07 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-02  1:21 [PATCH] drm/hisilicon: Use drmm_kzalloc() instead of devm_kzalloc() Tian Tao
2020-07-02  6:42 ` Thomas Zimmermann
2020-07-02  7:04   ` 答复: " tiantao (H)
2020-07-02 13:16 ` Daniel Vetter
2020-07-02 14:07   ` Thomas Zimmermann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).