[PATCH] drm/radeon: Add support for userspace fence waits

Michel Dänzer michel at daenzer.net
Tue Jan 31 09:56:01 PST 2012


On Die, 2012-01-31 at 16:59 +0000, Simon Farnsworth wrote: 
> Userspace currently busywaits for fences to complete; on my workload, this
> busywait consumes 10% of the available CPU time.
> 
> Provide an ioctl so that userspace can wait for an EOP interrupt that
> corresponds to a previous EVENT_WRITE_EOP.
> 
> Signed-off-by: Simon Farnsworth <simon.farnsworth at onelan.co.uk>
> ---
> I've been working on top of Jerome's tiling patches, so this doesn't apply
> directly on top of current upstream kernels. I can easily rebase to another
> version upon request - just point me to a git tree.
> 
> My goal is to remove the sched_yield in Mesa's r600_fence_finish given up to
> date enough kernel; I hope, though, that the interface is clean enough for
> other users to extend it in the future (e.g. using compute rings).

I'm afraid not: Unless I'm missing something, userspace can't know which
ring the kernel submitted the CS to, and the kernel can't guess which
ring userspace needs to wait for.


-- 
Earthling Michel Dänzer           |                   http://www.amd.com
Libre software enthusiast         |          Debian, X and DRI developer


More information about the dri-devel mailing list