From: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
To: Chunming Zhou <zhoucm1@amd.com>,
"Zhou, David(ChunMing)" <David1.Zhou@amd.com>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH] drm/syncobj: return meaningful value to user space
Date: Thu, 18 Jul 2019 17:08:35 +0300 [thread overview]
Message-ID: <36d29516-42e7-6ce5-88fc-a005ed4432d6@intel.com> (raw)
In-Reply-To: <d7085a57-b9fc-c5d8-bea2-10cabb80f0f8@amd.com>
On 18/07/2019 16:02, Chunming Zhou wrote:
> 在 2019/7/18 19:31, Lionel Landwerlin 写道:
>> On 18/07/2019 14:13, Chunming Zhou wrote:
>>> if WAIT_FOR_SUBMIT isn't set and in the meanwhile no underlying fence
>>> on syncobj,
>>> then return non-block error code to user sapce.
>>>
>>> Signed-off-by: Chunming Zhou <david1.zhou@amd.com>
>>> ---
>>> drivers/gpu/drm/drm_syncobj.c | 4 ++--
>>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/drm_syncobj.c
>>> b/drivers/gpu/drm/drm_syncobj.c
>>> index 361a01a08c18..929f7c64f9a2 100644
>>> --- a/drivers/gpu/drm/drm_syncobj.c
>>> +++ b/drivers/gpu/drm/drm_syncobj.c
>>> @@ -252,7 +252,7 @@ int drm_syncobj_find_fence(struct drm_file
>>> *file_private,
>>> return 0;
>>> dma_fence_put(*fence);
>>> } else {
>>> - ret = -EINVAL;
>>> + ret = -ENOTBLK;
>>> }
>>> if (!(flags & DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT))
>>> @@ -832,7 +832,7 @@ static signed long
>>> drm_syncobj_array_wait_timeout(struct drm_syncobj **syncobjs,
>>> if (flags & DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT) {
>>> continue;
>>> } else {
>>> - timeout = -EINVAL;
>>> + timeout = -ENOTBLK;
>>> goto cleanup_entries;
>>> }
>>> }
>>
>> This would break existing tests for binary syncobjs.
> How does this breaks binary syncobj?
This is used in the submission path of several drivers.
Changing the error code will change what the drivers are reporting to
userspace and could break tests.
i915 doesn't use that function so it's not affected but
lima/panfrost/vc4 seem to be.
>
>
>> Is this really what we want?
> I want to use this meaningful return value to judge if WaitBeforeSignal
> happens.
>
> I think this is the cheapest change for that.
I thought the plan was to add a new ioctl to query the last submitted value.
Did I misunderstand?
Thanks,
-Lionel
>
> -David
>
>
>>
>> -Lionel
>>
>>
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2019-07-18 14:08 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-18 11:13 [PATCH] drm/syncobj: return meaningful value to user space Chunming Zhou
2019-07-18 11:18 ` Chris Wilson
2019-07-18 13:04 ` Chunming Zhou
2019-07-18 13:10 ` Chris Wilson
2019-07-18 13:15 ` Chunming Zhou
2019-07-18 13:23 ` Chris Wilson
2019-07-18 13:24 ` Chunming Zhou
2019-07-18 11:31 ` Lionel Landwerlin
2019-07-18 13:02 ` Chunming Zhou
2019-07-18 14:08 ` Lionel Landwerlin [this message]
2019-07-18 14:33 ` Chunming Zhou
2019-07-19 8:13 ` Lionel Landwerlin
2019-07-19 8:31 ` zhoucm1
2019-07-22 8:46 ` Lionel Landwerlin
2019-07-22 10:11 ` zhoucm1
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=36d29516-42e7-6ce5-88fc-a005ed4432d6@intel.com \
--to=lionel.g.landwerlin@intel.com \
--cc=David1.Zhou@amd.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=zhoucm1@amd.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox