@@ -423,7 +423,9 @@ while (<>) {
} elsif ($tp_name eq 'i915:i915_gem_request_in:') {
my %req;
- die if exists $db{$key};
+ # Duplicated req in is a sign of preemption - just forget it
+ # happened before.
+ delete $db{$key} if exists $db{$key};
die unless exists $queue{$key};
die unless exists $submit{$key};
@@ -443,7 +445,8 @@ while (<>) {
} elsif ($tp_name eq 'i915:i915_gem_request_out:') {
my $gkey = global_key($ring, $tp{'global'});
- die unless exists $db{$key};
+# # Probable incomplete trace, not gathered with trace.pl --trace.
+ next unless exists $db{$key};
die unless exists $db{$key}->{'start'};
die if exists $db{$key}->{'end'};