Quoting Mika Kuoppala (2020-05-08 16:44:48) > Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> writes: > > > Quoting Mika Kuoppala (2020-05-08 16:37:15) > >> Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> writes: > >> > >> > The downside of using semaphores is that we lose metadata passing > >> > along the signaling chain. This is particularly nasty when we > >> > need to pass along a fatal error such as EFAULT or EDEADLK. For > >> > fatal errors we want to scrub the request before it is executed, > >> > which means that we cannot preload the request onto HW and have > >> > it wait upon a semaphore. > >> > >> b is waiting on a, a fails and we want to release b with error? > > > > Yes. B is submitted before A, and if B is relying on A to setup GPU page > > I guess this has to be A is before B. > > > tables or other interesting things, we can't let B run if A dies. For > > the EDEADLK if B is waiting on A, but then A is submitted with a wait on > > B -- we have to untangle that mess. > > Avoiding the hw semaphore makes sense It's an unfortunate necessity, unless we can work in a conditional jump after the semaphore. But it also requires sampling all the possible error signals :( -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx