Quoting Michał Winiarski (2017-10-19 19:36:18) > With GuC, we're scheduling tasklet on USER_INTERRUPT - since some work > has completed, perhaps we're able to submit some more work. We're doing > similar thing for preemption - after preemption has completed, it's time > to schedule the tasklet and submit more work (since the engine is now > idle). Unfortunately, we can hit the scenarios where the preemption is > done, but the interrupt is nowhere to be seen. To work around the > problem, let's use a delayed work that's kicking the tasklet if > preemption is done, and queueing itself otherwise. I'm not buying it yet. Missing USER_INTERRUPT would not be guc specific (surely?) and so we would be getting similar missed-breadcrumb warnings on skl+. We dedicate a lot of CI towards detecting those... The first alternative that springs to mind is bad ordering between ggtt write and MI_USER_INTERRUPT, but that too is common to execlists, and also results in missed-breadcrumb warnings (which are notable by their absence). Though having said that, the HWSP ordering issue with intel_iommu is worrying me that we have similar issues with breadcrumbs + intel_iommu. Is iommu a factor? In short, if this is a problem here, it should be a problem everywhere. Right? -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx