All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] staging/vboxvideo: Replace ttm_bo_unref with ttm_bo_put
@ 2018-09-10  9:36 Thomas Zimmermann
  0 siblings, 0 replies; 6+ messages in thread
From: Thomas Zimmermann @ 2018-09-10  9:36 UTC (permalink / raw)
  To: gregkh, hdegoede, michael.thayer, dri-devel; +Cc: Thomas Zimmermann

The function ttm_bo_put releases a reference to a TTM buffer object. The
function's name is more aligned to the Linux kernel convention of naming
ref-counting function _get and _put.

A call to ttm_bo_unref takes the address of the TTM BO object's pointer and
clears the pointer's value to NULL. This is not necessary in most cases and
sometimes even worked around by the calling code. A call to ttm_bo_put only
releases the reference without clearing the pointer.

The current behaviour of cleaning the pointer is kept in the calling code,
but should be removed if not required in a later patch.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
 drivers/staging/vboxvideo/vbox_main.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/vboxvideo/vbox_main.c b/drivers/staging/vboxvideo/vbox_main.c
index 429f6a453619..b6cff31903b3 100644
--- a/drivers/staging/vboxvideo/vbox_main.c
+++ b/drivers/staging/vboxvideo/vbox_main.c
@@ -490,9 +490,8 @@ static void vbox_bo_unref(struct vbox_bo **bo)
 		return;
 
 	tbo = &((*bo)->bo);
-	ttm_bo_unref(&tbo);
-	if (!tbo)
-		*bo = NULL;
+	ttm_bo_put(tbo);
+	*bo = NULL;
 }
 
 void vbox_gem_free_object(struct drm_gem_object *obj)
-- 
2.18.0

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

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

* Re: [PATCH] staging/vboxvideo: Replace ttm_bo_unref with ttm_bo_put
  2018-09-10  8:39   ` Thomas Zimmermann
@ 2018-09-10  8:42     ` Greg KH
  0 siblings, 0 replies; 6+ messages in thread
From: Greg KH @ 2018-09-10  8:42 UTC (permalink / raw)
  To: Thomas Zimmermann; +Cc: hdegoede, michael.thayer, dri-devel

On Mon, Sep 10, 2018 at 10:39:57AM +0200, Thomas Zimmermann wrote:
> Hi Greg
> 
> Am 02.08.2018 um 09:29 schrieb Greg KH:
> > On Tue, Jul 31, 2018 at 08:37:35AM +0200, Thomas Zimmermann wrote:
> >> The function ttm_bo_put releases a reference to a TTM buffer object. The
> >> function's name is more aligned to the Linux kernel convention of naming
> >> ref-counting function _get and _put.
> >>
> >> A call to ttm_bo_unref takes the address of the TTM BO object's pointer and
> >> clears the pointer's value to NULL. This is not necessary in most cases and
> >> sometimes even worked around by the calling code. A call to ttm_bo_put only
> >> releases the reference without clearing the pointer.
> >>
> >> The current behaviour of cleaning the pointer is kept in the calling code,
> >> but should be removed if not required in a later patch.
> >>
> >> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
> >> ---
> >>  drivers/staging/vboxvideo/vbox_main.c | 5 ++---
> >>  1 file changed, 2 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/drivers/staging/vboxvideo/vbox_main.c b/drivers/staging/vboxvideo/vbox_main.c
> >> index 9d2018cd544e..fc7293b756b2 100644
> >> --- a/drivers/staging/vboxvideo/vbox_main.c
> >> +++ b/drivers/staging/vboxvideo/vbox_main.c
> >> @@ -490,9 +490,8 @@ static void vbox_bo_unref(struct vbox_bo **bo)
> >>  		return;
> >>  
> >>  	tbo = &((*bo)->bo);
> >> -	ttm_bo_unref(&tbo);
> >> -	if (!tbo)
> >> -		*bo = NULL;
> >> +	ttm_bo_put(tbo);
> > 
> > This function is not in my tree, so it causes a build error.  I guess
> > merge this through the drm tree?
> 
> The required function ttm_bo_put() is now available in mainline. [1] Can
> you please try again merging the patch? Thanks!

Sure, can you resend it please?  This one is long gone from my patch
queue.

thanks,

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

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

* Re: [PATCH] staging/vboxvideo: Replace ttm_bo_unref with ttm_bo_put
  2018-08-02  7:29 ` Greg KH
  2018-08-02  7:52   ` Thomas Zimmermann
@ 2018-09-10  8:39   ` Thomas Zimmermann
  2018-09-10  8:42     ` Greg KH
  1 sibling, 1 reply; 6+ messages in thread
From: Thomas Zimmermann @ 2018-09-10  8:39 UTC (permalink / raw)
  To: Greg KH; +Cc: hdegoede, michael.thayer, dri-devel


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

Hi Greg

Am 02.08.2018 um 09:29 schrieb Greg KH:
> On Tue, Jul 31, 2018 at 08:37:35AM +0200, Thomas Zimmermann wrote:
>> The function ttm_bo_put releases a reference to a TTM buffer object. The
>> function's name is more aligned to the Linux kernel convention of naming
>> ref-counting function _get and _put.
>>
>> A call to ttm_bo_unref takes the address of the TTM BO object's pointer and
>> clears the pointer's value to NULL. This is not necessary in most cases and
>> sometimes even worked around by the calling code. A call to ttm_bo_put only
>> releases the reference without clearing the pointer.
>>
>> The current behaviour of cleaning the pointer is kept in the calling code,
>> but should be removed if not required in a later patch.
>>
>> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
>> ---
>>  drivers/staging/vboxvideo/vbox_main.c | 5 ++---
>>  1 file changed, 2 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/staging/vboxvideo/vbox_main.c b/drivers/staging/vboxvideo/vbox_main.c
>> index 9d2018cd544e..fc7293b756b2 100644
>> --- a/drivers/staging/vboxvideo/vbox_main.c
>> +++ b/drivers/staging/vboxvideo/vbox_main.c
>> @@ -490,9 +490,8 @@ static void vbox_bo_unref(struct vbox_bo **bo)
>>  		return;
>>  
>>  	tbo = &((*bo)->bo);
>> -	ttm_bo_unref(&tbo);
>> -	if (!tbo)
>> -		*bo = NULL;
>> +	ttm_bo_put(tbo);
> 
> This function is not in my tree, so it causes a build error.  I guess
> merge this through the drm tree?

The required function ttm_bo_put() is now available in mainline. [1] Can
you please try again merging the patch? Thanks!

Best regards
Thomas

[1]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=89c815ef07a1db0ac2cc09d06cb2d5c3d86d6322

> thanks,
> 
> greg k-h
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
> 

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Linux GmbH, Maxfeldstr. 5, D-90409 Nürnberg
Tel: +49-911-74053-0; Fax: +49-911-7417755;  https://www.suse.com/
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard,
Graham Norton, HRB 21284 (AG Nürnberg)


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 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] 6+ messages in thread

* Re: [PATCH] staging/vboxvideo: Replace ttm_bo_unref with ttm_bo_put
  2018-08-02  7:29 ` Greg KH
@ 2018-08-02  7:52   ` Thomas Zimmermann
  2018-09-10  8:39   ` Thomas Zimmermann
  1 sibling, 0 replies; 6+ messages in thread
From: Thomas Zimmermann @ 2018-08-02  7:52 UTC (permalink / raw)
  To: Greg KH; +Cc: hdegoede, michael.thayer, dri-devel


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

Hi

Am 02.08.2018 um 09:29 schrieb Greg KH:
>>  	tbo = &((*bo)->bo);
>> -	ttm_bo_unref(&tbo);
>> -	if (!tbo)
>> -		*bo = NULL;
>> +	ttm_bo_put(tbo);
> 
> This function is not in my tree, so it causes a build error.  I guess
> merge this through the drm tree?

Yes. These functions have been accepted into TTM and are present in
drm-tip. Apparently the respective patches have not yet propagated
towards upstream.

Best regards
Thomas

> thanks,
> 
> greg k-h
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
> 

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Linux GmbH, Maxfeldstr. 5, D-90409 Nürnberg
Tel: +49-911-74053-0; Fax: +49-911-7417755;  https://www.suse.com/
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard,
Graham Norton, HRB 21284 (AG Nürnberg)


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 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] 6+ messages in thread

* Re: [PATCH] staging/vboxvideo: Replace ttm_bo_unref with ttm_bo_put
  2018-07-31  6:37 Thomas Zimmermann
@ 2018-08-02  7:29 ` Greg KH
  2018-08-02  7:52   ` Thomas Zimmermann
  2018-09-10  8:39   ` Thomas Zimmermann
  0 siblings, 2 replies; 6+ messages in thread
From: Greg KH @ 2018-08-02  7:29 UTC (permalink / raw)
  To: Thomas Zimmermann; +Cc: hdegoede, michael.thayer, dri-devel

On Tue, Jul 31, 2018 at 08:37:35AM +0200, Thomas Zimmermann wrote:
> The function ttm_bo_put releases a reference to a TTM buffer object. The
> function's name is more aligned to the Linux kernel convention of naming
> ref-counting function _get and _put.
> 
> A call to ttm_bo_unref takes the address of the TTM BO object's pointer and
> clears the pointer's value to NULL. This is not necessary in most cases and
> sometimes even worked around by the calling code. A call to ttm_bo_put only
> releases the reference without clearing the pointer.
> 
> The current behaviour of cleaning the pointer is kept in the calling code,
> but should be removed if not required in a later patch.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
> ---
>  drivers/staging/vboxvideo/vbox_main.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/staging/vboxvideo/vbox_main.c b/drivers/staging/vboxvideo/vbox_main.c
> index 9d2018cd544e..fc7293b756b2 100644
> --- a/drivers/staging/vboxvideo/vbox_main.c
> +++ b/drivers/staging/vboxvideo/vbox_main.c
> @@ -490,9 +490,8 @@ static void vbox_bo_unref(struct vbox_bo **bo)
>  		return;
>  
>  	tbo = &((*bo)->bo);
> -	ttm_bo_unref(&tbo);
> -	if (!tbo)
> -		*bo = NULL;
> +	ttm_bo_put(tbo);

This function is not in my tree, so it causes a build error.  I guess
merge this through the drm tree?

thanks,

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

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

* [PATCH] staging/vboxvideo: Replace ttm_bo_unref with ttm_bo_put
@ 2018-07-31  6:37 Thomas Zimmermann
  2018-08-02  7:29 ` Greg KH
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Zimmermann @ 2018-07-31  6:37 UTC (permalink / raw)
  To: gregkh, hdegoede, michael.thayer, dri-devel; +Cc: Thomas Zimmermann

The function ttm_bo_put releases a reference to a TTM buffer object. The
function's name is more aligned to the Linux kernel convention of naming
ref-counting function _get and _put.

A call to ttm_bo_unref takes the address of the TTM BO object's pointer and
clears the pointer's value to NULL. This is not necessary in most cases and
sometimes even worked around by the calling code. A call to ttm_bo_put only
releases the reference without clearing the pointer.

The current behaviour of cleaning the pointer is kept in the calling code,
but should be removed if not required in a later patch.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
 drivers/staging/vboxvideo/vbox_main.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/vboxvideo/vbox_main.c b/drivers/staging/vboxvideo/vbox_main.c
index 9d2018cd544e..fc7293b756b2 100644
--- a/drivers/staging/vboxvideo/vbox_main.c
+++ b/drivers/staging/vboxvideo/vbox_main.c
@@ -490,9 +490,8 @@ static void vbox_bo_unref(struct vbox_bo **bo)
 		return;
 
 	tbo = &((*bo)->bo);
-	ttm_bo_unref(&tbo);
-	if (!tbo)
-		*bo = NULL;
+	ttm_bo_put(tbo);
+	*bo = NULL;
 }
 
 void vbox_gem_free_object(struct drm_gem_object *obj)
-- 
2.18.0

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

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

end of thread, other threads:[~2018-09-10  9:36 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-10  9:36 [PATCH] staging/vboxvideo: Replace ttm_bo_unref with ttm_bo_put Thomas Zimmermann
  -- strict thread matches above, loose matches on Subject: below --
2018-07-31  6:37 Thomas Zimmermann
2018-08-02  7:29 ` Greg KH
2018-08-02  7:52   ` Thomas Zimmermann
2018-09-10  8:39   ` Thomas Zimmermann
2018-09-10  8:42     ` Greg KH

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.