Am 22.07.2014 16:27, schrieb Maarten Lankhorst: > op 22-07-14 16:24, Christian K?nig schreef: >>> No, you really shouldn't be doing much in the check anyway, it's meant to >>> be a lightweight check. If you're not ready yet because of a lockup simply >>> return not signaled yet. >> It's not only the lockup case from radeon I have in mind here. For userspace >> queues it might be necessary to call copy_from_user to figure out if a fence >> is signaled or not. >> >> Returning false all the time is probably not a good idea either. > Having userspace implement a fence sounds like an awful idea, why would you > want to do that?
Marketing moves in mysterious ways. Don't ask me, but that the direction it currently moves with userspace queues and IOMMU etc... > A fence could be exported to userspace, but that would only mean it can wait > for it to be signaled with an interface like poll.. Yeah agree totally, but the point for the fence interface is that I can't predict what's necessary to check if a fence is signaled or not on future hardware. For the currently available radeon hardware I can say that reading a value from a kernel page is pretty much all you need. But for older hardware that was reading from a register which might become very tricky if the hardware is power off or currently inside a reset cycle. Because off this I would avoid any such interface if it's not absolutely required by some use case, and currently I don't see this requirement because the functionality you want to archive could be implemented without this. Christian. > > ~Maarten >