[RFC] Host1x/TegraDRM UAPI

Mikko Perttunen cyndis at kapsi.fi
Thu Jun 25 09:16:10 UTC 2020


On 6/25/20 2:11 AM, Dmitry Osipenko wrote:
> 23.06.2020 15:09, Mikko Perttunen пишет:
>> /* Command is an opcode gather from a GEM handle */
>> #define DRM_TEGRA_SUBMIT_COMMAND_GATHER             0
>> /* Command is an opcode gather from a user pointer */
>> #define DRM_TEGRA_SUBMIT_COMMAND_GATHER_UPTR        1
> 
> I'm a bit dubious about whether we really need to retain the non-UPTR
> variant. The memory-copying overhead is negligible because cmdstream's
> data usually is hot in CPU's cache
> 
> IIRC, the most (if not all) of the modern DRM drivers drivers use the
> usrptr-only for the cmdstream.
> 
> At least there is no any real-world userspace example today that could
> benefit from a non-UPTR variant.
> 
> I'm suggesting to leave out the non-UPTR gather variant for now, keeping
> it in mind as a potential future extension of the submission UAPI. Any
> objections?
> 

Sure, we should be able to drop it. Downstream userspace is using it, 
but we should be able to fix that. I was thinking that we can directly 
map the user pages and point the gather to them without copying - that 
way we wouldn't need to make DMA allocations inside the driver for every 
submit. (On early Tegras we could just copy into the pushbuffer but that 
won't work for newer ones).

Mikko


More information about the dri-devel mailing list