Am 01.02.2013 15:04, schrieb Alex Deucher:
On Fri, Feb 1, 2013 at 5:25 AM, Christian König deathsimple@vodafone.de wrote:
[SNAP] Wouldn't it make sense to use the IB functions (ib_get, ib_schedule, ib_free) here instead of filling the IB structure manually?
I tried that initially, but ran into several problems and it ended up being easier to just allocate and schedule the IB directly. The IB functions have self contained code to deal with semaphores and fences that I couldn't figure out how to make work cleanly with the vm semaphore and fence. radeon_ib_schedule() takes the ring lock so if I needed to do any direct ring manipuation prior, I'd need to drop the lock before calling ib_schedule(). Let me know if you have any suggestions.
Just send out an updated version of the patch, which seems to look quite a bit cleaner and still works fine (at least on my SI board).
Christian.
Alex
Apart from that it looks quite good.
Christian.