[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <794b713e-e4f9-0b71-d9eb-168d002ab6a2@kapsi.fi>
Date: Wed, 29 Nov 2017 11:10:46 +0200
From: Mikko Perttunen <cyndis@...si.fi>
To: Dmitry Osipenko <digetx@...il.com>,
Mikko Perttunen <mperttunen@...dia.com>,
thierry.reding@...il.com, jonathanh@...dia.com
Cc: dri-devel@...ts.freedesktop.org, linux-tegra@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 10/10] gpu: host1x: Optionally block when acquiring
channel
On 12.11.2017 13:23, Dmitry Osipenko wrote:
> On 11.11.2017 00:15, Dmitry Osipenko wrote:
>> On 07.11.2017 18:29, Dmitry Osipenko wrote:
>>> On 07.11.2017 16:11, Mikko Perttunen wrote:
>>>> On 05.11.2017 19:14, Dmitry Osipenko wrote:
>>>>> On 05.11.2017 14:01, Mikko Perttunen wrote:
>>>>>> Add an option to host1x_channel_request to interruptibly wait for a
>>>>>> free channel. This allows IOCTLs that acquire a channel to block
>>>>>> the userspace.
>>>>>>
>>>>>
>>>>> Wouldn't it be more optimal to request channel and block after job's pining,
>>>>> when all patching and checks are completed? Note that right now we have locking
>>>>> around submission in DRM, which I suppose should go away by making locking fine
>>>>> grained.
>>>>
>>>> That would be possible, but I don't think it should matter much since contention
>>>> here should not be the common case.
>>>>
>>>>>
>>>>> Or maybe it would be more optimal to just iterate over channels, like I
>>>>> suggested before [0]?
>>>>
>>>> Somehow I hadn't noticed this before, but this would break the invariant of
>>>> having one client/class per channel.
>>>>
>>>
>>> Yes, currently there is a weak relation of channel and clients device, but seems
>>> channels device is only used for printing dev_* messages and device could be
>>> borrowed from the channels job. I don't see any real point of hardwiring channel
>>> to a specific device or client.
>>
>> Although, it won't work with syncpoint assignment to channel.
>
> On the other hand.. it should work if one syncpoint could be assigned to
> multiple channels, couldn't it?
A syncpoint can only be mapped to a single channel, so unfortunately
this won't work.
Mikko
> --
> To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
Powered by blists - more mailing lists