From: Thomas Zimmermann <tzimmermann@suse.de>
To: Gerd Hoffmann <kraxel@redhat.com>, Nirmoy Das <nirmoy.aiemd@gmail.com>
Cc: thellstrom@vmware.com, airlied@linux.ie, kenny.ho@amd.com,
brian.welty@intel.com, dri-devel@lists.freedesktop.org,
nirmoy.das@amd.com, linux-graphics-maintainer@vmware.com,
amd-gfx@lists.freedesktop.org,
Daniel Vetter <daniel.vetter@ffwll.ch>,
alexander.deucher@amd.com, sean@poorly.run,
christian.koenig@amd.com, bskeggs@redhat.com
Subject: Re: [PATCH 6/8] drm/vram-helper: don't use ttm bo->offset v3
Date: Thu, 5 Mar 2020 15:26:05 +0100 [thread overview]
Message-ID: <6d7146b9-4ac1-e861-334f-950de790321d@suse.de> (raw)
In-Reply-To: <20200305140749.5oggp4gh6hozsh7j@sirius.home.kraxel.org>
[-- Attachment #1.1.1: Type: text/plain, Size: 2241 bytes --]
Hi
Am 05.03.20 um 15:07 schrieb Gerd Hoffmann:
> On Thu, Mar 05, 2020 at 02:29:08PM +0100, Nirmoy Das wrote:
>> Calculate GEM VRAM bo's offset within vram-helper without depending on
>> bo->offset.
>>
>> Signed-off-by: Nirmoy Das <nirmoy.das@amd.com>
>> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
>> ---
>> drivers/gpu/drm/drm_gem_vram_helper.c | 9 ++++++++-
>> 1 file changed, 8 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/drm_gem_vram_helper.c b/drivers/gpu/drm/drm_gem_vram_helper.c
>> index 92a11bb42365..2749c2d25ac4 100644
>> --- a/drivers/gpu/drm/drm_gem_vram_helper.c
>> +++ b/drivers/gpu/drm/drm_gem_vram_helper.c
>> @@ -198,6 +198,13 @@ u64 drm_gem_vram_mmap_offset(struct drm_gem_vram_object *gbo)
>> }
>> EXPORT_SYMBOL(drm_gem_vram_mmap_offset);
>>
>> +static s64 drm_gem_vram_pg_offset(struct drm_gem_vram_object *gbo)
>> +{
>> + if (WARN_ON_ONCE(!gbo->bo.mem.mm_node))
>> + return 0;
>
> returns 0 on error.
>
>> + return gbo->bo.mem.start;
>> +}
>> +
>> /**
>> * drm_gem_vram_offset() - \
>> Returns a GEM VRAM object's offset in video memory
>> @@ -214,7 +221,7 @@ s64 drm_gem_vram_offset(struct drm_gem_vram_object *gbo)
>> {
>> if (WARN_ON_ONCE(!gbo->pin_count))
>> return (s64)-ENODEV;
>
> returns -errno on error.
>
>> - return gbo->bo.offset;
>> + return drm_gem_vram_pg_offset(gbo) << PAGE_SHIFT;
>
> And given that one calls the other behavior on error should better be
> consistent ...
It is expected that the offset is valid if pin_count is positive.
Anything else would be a massive ref-counting bug. And that's been the
behavior of the old code as well.
But I agree that the current patch is inconsistent. I suggest changing
the return type of drm_gem_vram_pg_offset() to u64.
Best regards
Thomas
>
> cheers,
> Gerd
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
>
--
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: 488 bytes --]
[-- Attachment #2: Type: text/plain, Size: 154 bytes --]
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de>
To: Gerd Hoffmann <kraxel@redhat.com>, Nirmoy Das <nirmoy.aiemd@gmail.com>
Cc: thellstrom@vmware.com, airlied@linux.ie, kenny.ho@amd.com,
brian.welty@intel.com, dri-devel@lists.freedesktop.org,
nirmoy.das@amd.com, linux-graphics-maintainer@vmware.com,
amd-gfx@lists.freedesktop.org,
Daniel Vetter <daniel.vetter@ffwll.ch>,
alexander.deucher@amd.com, sean@poorly.run,
christian.koenig@amd.com, bskeggs@redhat.com
Subject: Re: [PATCH 6/8] drm/vram-helper: don't use ttm bo->offset v3
Date: Thu, 5 Mar 2020 15:26:05 +0100 [thread overview]
Message-ID: <6d7146b9-4ac1-e861-334f-950de790321d@suse.de> (raw)
In-Reply-To: <20200305140749.5oggp4gh6hozsh7j@sirius.home.kraxel.org>
[-- Attachment #1.1.1: Type: text/plain, Size: 2241 bytes --]
Hi
Am 05.03.20 um 15:07 schrieb Gerd Hoffmann:
> On Thu, Mar 05, 2020 at 02:29:08PM +0100, Nirmoy Das wrote:
>> Calculate GEM VRAM bo's offset within vram-helper without depending on
>> bo->offset.
>>
>> Signed-off-by: Nirmoy Das <nirmoy.das@amd.com>
>> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
>> ---
>> drivers/gpu/drm/drm_gem_vram_helper.c | 9 ++++++++-
>> 1 file changed, 8 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/drm_gem_vram_helper.c b/drivers/gpu/drm/drm_gem_vram_helper.c
>> index 92a11bb42365..2749c2d25ac4 100644
>> --- a/drivers/gpu/drm/drm_gem_vram_helper.c
>> +++ b/drivers/gpu/drm/drm_gem_vram_helper.c
>> @@ -198,6 +198,13 @@ u64 drm_gem_vram_mmap_offset(struct drm_gem_vram_object *gbo)
>> }
>> EXPORT_SYMBOL(drm_gem_vram_mmap_offset);
>>
>> +static s64 drm_gem_vram_pg_offset(struct drm_gem_vram_object *gbo)
>> +{
>> + if (WARN_ON_ONCE(!gbo->bo.mem.mm_node))
>> + return 0;
>
> returns 0 on error.
>
>> + return gbo->bo.mem.start;
>> +}
>> +
>> /**
>> * drm_gem_vram_offset() - \
>> Returns a GEM VRAM object's offset in video memory
>> @@ -214,7 +221,7 @@ s64 drm_gem_vram_offset(struct drm_gem_vram_object *gbo)
>> {
>> if (WARN_ON_ONCE(!gbo->pin_count))
>> return (s64)-ENODEV;
>
> returns -errno on error.
>
>> - return gbo->bo.offset;
>> + return drm_gem_vram_pg_offset(gbo) << PAGE_SHIFT;
>
> And given that one calls the other behavior on error should better be
> consistent ...
It is expected that the offset is valid if pin_count is positive.
Anything else would be a massive ref-counting bug. And that's been the
behavior of the old code as well.
But I agree that the current patch is inconsistent. I suggest changing
the return type of drm_gem_vram_pg_offset() to u64.
Best regards
Thomas
>
> cheers,
> Gerd
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
>
--
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: 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
next prev parent reply other threads:[~2020-03-05 14:26 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-05 13:29 [PATCH v4 0/8] do not store GPU address in TTM Nirmoy Das
2020-03-05 13:29 ` Nirmoy Das
2020-03-05 13:29 ` [PATCH 1/8] drm/amdgpu: move ttm bo->offset to amdgpu_bo Nirmoy Das
2020-03-05 13:29 ` Nirmoy Das
2020-03-05 19:11 ` Luben Tuikov
2020-03-05 19:11 ` Luben Tuikov
2020-03-05 13:29 ` [PATCH 2/8] drm/radeon: don't use ttm bo->offset Nirmoy Das
2020-03-05 13:29 ` Nirmoy Das
2020-03-05 19:19 ` Luben Tuikov
2020-03-05 19:19 ` Luben Tuikov
2020-03-05 19:37 ` Ho, Kenny
2020-03-05 19:37 ` Ho, Kenny
2020-03-05 20:18 ` Luben Tuikov
2020-03-05 20:18 ` Luben Tuikov
2020-03-05 13:29 ` [PATCH 3/8] drm/vmwgfx: " Nirmoy Das
2020-03-05 13:29 ` Nirmoy Das
2020-03-05 13:29 ` [PATCH 4/8] drm/nouveau: don't use ttm bo->offset v3 Nirmoy Das
2020-03-05 13:29 ` Nirmoy Das
2020-03-05 13:33 ` Christian König
2020-03-05 13:33 ` Christian König
2020-03-05 19:23 ` Luben Tuikov
2020-03-05 19:23 ` Luben Tuikov
2020-03-05 13:29 ` [PATCH 5/8] drm/qxl: don't use ttm bo->offset Nirmoy Das
2020-03-05 13:29 ` Nirmoy Das
2020-03-05 13:29 ` [PATCH 6/8] drm/vram-helper: don't use ttm bo->offset v3 Nirmoy Das
2020-03-05 13:29 ` Nirmoy Das
2020-03-05 14:07 ` Gerd Hoffmann
2020-03-05 14:07 ` Gerd Hoffmann
2020-03-05 14:26 ` Thomas Zimmermann [this message]
2020-03-05 14:26 ` Thomas Zimmermann
2020-03-05 14:35 ` Nirmoy
2020-03-05 14:35 ` Nirmoy
2020-03-05 14:34 ` Christian König
2020-03-05 14:34 ` Christian König
2020-03-05 13:29 ` [PATCH 7/8] drm/bochs: use drm_gem_vram_offset to get bo offset v2 Nirmoy Das
2020-03-05 13:29 ` Nirmoy Das
2020-03-05 13:29 ` [PATCH 8/8] drm/ttm: do not keep GPU dependent addresses Nirmoy Das
2020-03-05 13:29 ` Nirmoy Das
2020-03-05 13:34 ` Christian König
2020-03-05 13:34 ` Christian König
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=6d7146b9-4ac1-e861-334f-950de790321d@suse.de \
--to=tzimmermann@suse.de \
--cc=airlied@linux.ie \
--cc=alexander.deucher@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=brian.welty@intel.com \
--cc=bskeggs@redhat.com \
--cc=christian.koenig@amd.com \
--cc=daniel.vetter@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=kenny.ho@amd.com \
--cc=kraxel@redhat.com \
--cc=linux-graphics-maintainer@vmware.com \
--cc=nirmoy.aiemd@gmail.com \
--cc=nirmoy.das@amd.com \
--cc=sean@poorly.run \
--cc=thellstrom@vmware.com \
/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.