Chris Wilson
2d453c7895
drm/i915: Assert that the request is on the execution queue before being removed
...
We should only attempt to remove requests from the execution queue that
are on the execution queue. These are the requests that have been
assigned a global_seqno, so we can assert that we only attempt to remove
requests with a nonzero global_seqno. Afterwards we assert that we
remove them in order, i.e. the global_seqno matches the engine's seqno,
but that leaves a small loophole for an unattached request on an unused
engine.
We can then make the same assertion on queuing the request to the
execution engine, it must have a zero global_seqno or else we are queuing
the same request twice.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171222141959.3006-1-chris@chris-wilson.co.uk
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2017-12-22 18:34:05 +00:00
..
2017-12-22 16:33:50 +08:00
2017-12-18 21:54:59 +00:00
2017-06-01 15:53:03 +03:00
2017-11-29 12:29:39 +00:00
2017-12-22 09:19:49 +00:00
2017-12-22 09:19:50 +00:00
2017-12-22 14:29:42 +02:00
2017-06-14 14:06:22 +01:00
2017-12-13 13:17:44 +00:00
2017-07-27 22:07:24 +02:00
2017-12-13 13:17:44 +00:00
2017-11-10 17:23:10 +00:00
2017-10-09 17:07:29 +01:00
2017-11-02 12:40:41 +10:00
2017-12-12 12:30:21 +02:00
2017-10-09 17:07:29 +01:00
2017-12-14 08:06:58 +00:00
2017-12-12 12:30:22 +02:00
2017-12-15 11:35:43 +00:00
2017-08-15 15:46:57 +01:00
2017-12-04 11:24:33 +08:00
2017-11-20 15:56:16 +00:00
2017-11-10 17:23:22 +00:00
2017-12-22 18:34:05 +00:00
2017-12-13 13:17:44 +00:00
2017-11-27 16:37:15 +00:00
2017-12-12 12:30:22 +02:00
2017-12-07 23:26:55 +00:00
2017-12-14 20:10:01 +02:00
2017-11-27 16:37:15 +00:00
2017-11-28 10:01:15 -08:00
2017-12-19 12:43:14 +00:00
2017-11-16 15:35:47 +02:00
2017-11-30 10:11:49 +02:00
2017-10-07 10:11:41 +01:00
2017-12-19 21:55:13 +00:00
2017-12-06 14:41:49 +00:00
2017-12-22 11:12:15 +00:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-11-02 14:52:58 +00:00
2017-09-18 19:46:36 +01:00
2017-11-13 15:59:03 +00:00
2017-11-13 15:59:03 +00:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-11-13 15:59:24 +00:00
2017-11-13 15:59:24 +00:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-11-02 14:52:58 +00:00
2017-08-03 18:18:05 +01:00
2017-12-19 15:07:08 +00:00
2017-12-19 15:07:08 +00:00
2017-12-20 11:24:25 -08:00
2017-11-20 21:53:59 +00:00
2017-12-01 15:20:02 +00:00
2017-11-24 13:20:48 +00:00
2017-10-16 13:56:29 +03:00
2017-12-22 14:23:14 +02:00
2017-11-10 11:31:58 +00:00
2017-09-29 12:30:17 +01:00
2017-12-13 13:17:37 +00:00
2017-07-09 18:48:37 -07:00
2017-12-01 15:20:02 +00:00
2017-11-02 11:10:55 +01:00
2017-12-18 16:10:32 +00:00
2017-12-22 09:13:47 +00:00
2017-08-15 10:12:48 +08:00
2017-10-16 13:56:29 +03:00
2017-12-12 12:30:21 +02:00
2017-12-07 23:26:55 +00:00
2017-11-02 11:10:55 +01:00
2017-09-01 16:48:24 +03:00
2017-06-12 09:45:55 -07:00
2017-11-15 17:32:54 +02:00
2017-11-14 07:43:00 -08:00
2017-12-11 17:23:02 +00:00
2017-11-30 16:49:42 +01:00
2017-11-17 12:14:25 +01:00
2017-11-09 20:05:18 +02:00
2017-12-05 15:57:08 +02:00
2017-12-19 12:44:41 +00:00
2017-12-22 09:19:49 +00:00
2017-12-22 09:19:49 +00:00
2017-12-22 14:29:42 +02:00
2017-12-22 09:18:24 +00:00
2017-09-22 14:50:36 +03:00
2017-07-19 08:32:42 +02:00
2017-11-09 20:06:14 +02:00
2017-12-08 08:41:22 +10:00
2017-11-09 20:06:14 +02:00
2017-11-16 09:45:39 -08:00
2017-06-12 09:42:18 -07:00
2017-12-04 10:56:53 +10:00
2017-08-16 18:02:00 +03:00
2017-08-21 11:52:29 +03:00
2017-12-08 08:41:22 +10:00
2017-10-30 19:53:22 +02:00
2017-12-19 13:43:26 -08:00
2017-12-12 12:30:19 +02:00
2017-12-12 12:30:22 +02:00
2017-09-25 16:54:09 +03:00
2017-11-06 13:57:37 +00:00
2017-05-26 13:26:53 +01:00
2017-12-06 14:41:47 +00:00
2017-12-06 14:41:47 +00:00
2017-11-02 08:42:11 +00:00
2017-12-14 08:06:54 +00:00
2017-10-06 14:09:40 +03:00
2017-11-24 20:47:39 +00:00
2017-12-14 08:07:00 +00:00
2017-12-14 08:06:54 +00:00
2017-12-14 08:06:54 +00:00
2017-12-14 08:06:54 +00:00
2017-12-06 14:41:49 +00:00
2017-05-30 15:59:47 +03:00
2017-12-19 21:55:13 +00:00
2017-12-08 10:15:30 -08:00
2017-08-11 11:53:47 -07:00
2017-12-06 14:41:54 +00:00
2017-12-06 14:41:54 +00:00
2017-12-22 14:23:14 +02:00
2017-12-15 11:36:45 +00:00
2017-12-22 18:32:51 +00:00
2017-11-20 21:53:59 +00:00
2017-10-13 12:15:10 +03:00
2017-10-30 19:53:22 +02:00
2017-06-07 07:29:51 -07:00
2017-11-21 14:17:56 +01:00
2017-12-22 09:19:48 +00:00
2017-12-22 09:19:48 +00:00
2017-12-12 12:30:21 +02:00
2017-11-27 17:27:15 +01:00
2017-11-30 16:49:42 +01:00
2017-12-19 13:43:21 -08:00
2017-12-20 09:25:37 +00:00
2017-08-14 12:15:49 +03:00
2017-11-23 16:12:06 +00:00
2017-12-08 18:48:34 +00:00
2017-12-22 14:22:48 +02:00
2017-11-09 20:04:47 +02:00
2017-10-11 08:56:56 +01:00
2017-11-21 19:44:03 +02:00
2017-11-09 20:04:56 +02:00
2017-12-06 14:41:52 +00:00
2017-12-06 14:41:47 +00:00
2017-12-14 08:06:56 +00:00
2017-12-14 08:06:56 +00:00
2017-12-01 15:20:02 +00:00
2017-11-21 11:39:31 +02:00
2017-10-30 19:48:11 +02:00
2017-09-19 13:06:21 +01:00
2017-12-19 23:04:45 +00:00
2017-12-08 08:41:22 +10:00