From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH i-g-t 6/8] trace.pl: Fix incomplete request handling Date: Wed, 18 Jul 2018 10:45:12 +0100 Message-ID: <20180718094514.5903-7-tvrtko.ursulin@linux.intel.com> References: <20180718094514.5903-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wr1-x444.google.com (mail-wr1-x444.google.com [IPv6:2a00:1450:4864:20::444]) by gabe.freedesktop.org (Postfix) with ESMTPS id B64DE6E986 for ; Wed, 18 Jul 2018 09:45:27 +0000 (UTC) Received: by mail-wr1-x444.google.com with SMTP id j5-v6so3973128wrr.8 for ; Wed, 18 Jul 2018 02:45:27 -0700 (PDT) In-Reply-To: <20180718094514.5903-1-tvrtko.ursulin@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: igt-dev@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkluY29tcGxl dGUgcmVxdWVzdHMgKG5vIG5vdGlmeSwgbm8gY29udGV4dCBjb21wbGV0ZSkgaGF2ZSB0byBiZSBj b3JyZWN0ZWQKYnkgbG9va2luZyBhdCB0aGUgZW5naW5lIHRpbWVsaW5lLCBhbmQgbm90IHRoZSBz b3J0ZWQtYnktc3RhcnQtdGltZSB2aWV3CmFzIHdhcyBwcmV2aW91c2x5IHVzZWQuCgpQZXItZW5n aW5lIHRpbWVsaW5lcyBhcmUgZ2VuZXJhdGVkIG9uIGRlbWFuZCBhbmQgY2FjaGVkIGZvciBsYXRl ciB1c2UuCgp2MjogRmluZCBlbmQgb2YgY3VycmVudCBjb250ZXh0IG9uIHRoZSBlbmdpbmUgdGlt ZWxpbmUgaW5zdGVhZCBvZiBqdXN0CiAgICB1c2luZyB0aGUgbmV4dCByZXF1ZXN0IGZvciBhZGp1 c3RpbmcgdGhlIGluY29tcGxldGUgc3RhcnQgdGltZS4KCnYzOiBJbXByb3ZlIHNjYWxpbmcgd2l0 aCBsYXJnZSBkYXRhc2V0cyBieSBvbmx5IHdhbGtpbmcgZWFjaCBlbmdpbmUKICAgIHRpbWVsaW5l IG9uY2UgYW5kIHNvbWUgY2FjaGluZy4gKEpvaG4gSGFycmlzb24pCgp2NDoKICogRml4IGxvZ2lj IGZhaWwgZnJvbSB2My4KICogUmVmYWN0b3IgdGhlIGNvZGUgYSBiaXQgdG8gc2VwYXJhdGUgdGhl IHN0YWdlcyBiZXR0ZXIuCiAqIERvIG5vdCBhY2NvdW50IGJhdGNoZXMgd2l0aCB1bmtub3duIGR1 cmF0aW9uIGluIGF2ZyBzdGF0cy4KICogSGFuZGxlIHR3byB1c2VyIGludGVycnVwdHMgd2l0aCB0 aGUgc2FtZSBzZXFuby4KICogSGFuZGxlIHVzZXIgaW50ZXJydXB0IGFycml2aW5nIGFmdGVyIHJl cXVlc3Rfb3V0LgoKdjU6CiAqIFVwZGF0ZSBmb3IgY2xhc3M6aW5zdGFuY2UuCgpTaWduZWQtb2Zm LWJ5OiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgpDYzogSm9obiBI YXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IEpvaG4gSGFy cmlzb24gPEpvaG4uQy5IYXJyaXNvbkBJbnRlbC5jb20+Ci0tLQogc2NyaXB0cy90cmFjZS5wbCB8 IDE2MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQogMSBm aWxlIGNoYW5nZWQsIDEwOCBpbnNlcnRpb25zKCspLCA1NSBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zY3JpcHRzL3RyYWNlLnBsIGIvc2NyaXB0cy90cmFjZS5wbAppbmRleCBkZWIxN2U0YTE4 MTYuLjYwZDQyODY1YWNiZCAxMDA3NTUKLS0tIGEvc2NyaXB0cy90cmFjZS5wbAorKysgYi9zY3Jp cHRzL3RyYWNlLnBsCkBAIC00MzIsMTYgKzQzMiwxMSBAQCB3aGlsZSAoPD4pIHsKIAkJZGllIGlm IGV4aXN0cyAkZGJ7JGtleX0tPnsnZW5kJ307CiAKIAkJJGRieyRrZXl9LT57J2VuZCd9ID0gJHRp bWU7Ci0JCWlmIChleGlzdHMgJG5vdGlmeXskZ2tleX0pIHsKLQkJCSRkYnska2V5fS0+eydub3Rp ZnknfSA9ICRub3RpZnl7JGdrZXl9OwotCQl9IGVsc2UgewotCQkJIyBObyBub3RpZnkgc28gZmFy LiBNYXliZSBpdCB3aWxsIGFycml2ZSBsYXRlciB3aGljaAotCQkJIyB3aWxsIGJlIGhhbmRsZWQg aW4gdGhlIHNhbml0YXRpb24gbG9vcCBiZWxvdy4KLQkJCSRkYnska2V5fS0+eydub3RpZnknfSA9 ICRkYnska2V5fS0+eydlbmQnfTsKLQkJCSRkYnska2V5fS0+eyduby1ub3RpZnknfSA9IDE7Ci0J CX0KKwkJJGRieyRrZXl9LT57J25vdGlmeSd9ID0gJG5vdGlmeXskZ2tleX0gaWYgZXhpc3RzICRu b3RpZnl7JGdrZXl9OwogCX0gZWxzaWYgKCR0cF9uYW1lIGVxICdpOTE1OmludGVsX2VuZ2luZV9u b3RpZnk6JykgewotCQkkbm90aWZ5e2dsb2JhbF9rZXkoJHJpbmcsICRzZXFubyl9ID0gJHRpbWU7 CisJCW15ICRna2V5ID0gZ2xvYmFsX2tleSgkcmluZywgJHNlcW5vKTsKKworCQkkbm90aWZ5eyRn a2V5fSA9ICR0aW1lIHVubGVzcyBleGlzdHMgJG5vdGlmeXskZ2tleX07CiAJfSBlbHNpZiAoJHRw X25hbWUgZXEgJ2k5MTU6aW50ZWxfZ3B1X2ZyZXFfY2hhbmdlOicpIHsKIAkJcHVzaCBAZnJlcXMs IFskcHJldl9mcmVxX3RzLCAkdGltZSwgJHByZXZfZnJlcV0gaWYgJHByZXZfZnJlcTsKIAkJJHBy ZXZfZnJlcV90cyA9ICR0aW1lOwpAQCAtNDU0LDY2ICs0NDksMTE2IEBAIHdoaWxlICg8Pikgewog bXkgJG1heF9zZXFubyA9IDA7CiBmb3JlYWNoIG15ICRrZXkgKGtleXMgJWRiKSB7CiAJbXkgJGdr ZXkgPSBnbG9iYWxfa2V5KCRkYnska2V5fS0+eydyaW5nJ30sICRkYnska2V5fS0+eydnbG9iYWwn fSk7Ci0JbXkgJG5vdGlmeSA9ICRub3RpZnl7JGdrZXl9OwogCiAJZGllIHVubGVzcyBleGlzdHMg JGRieyRrZXl9LT57J3N0YXJ0J307CiAKIAkkbWF4X3NlcW5vID0gJGRieyRrZXl9LT57J3NlcW5v J30gaWYgJGRieyRrZXl9LT57J3NlcW5vJ30gPiAkbWF4X3NlcW5vOwogCi0JdW5sZXNzIChleGlz dHMgJGRieyRrZXl9LT57J2VuZCd9KSB7Ci0JCSMgQ29udGV4dCBjb21wbGV0ZSBub3QgcmVjZWl2 ZWQuCi0JCSRkYnska2V5fS0+eyduby1lbmQnfSA9IDE7CisJIyBOb3RpZnkgYXJyaXZlZCBhZnRl ciBjb250ZXh0IGNvbXBsZXRlPworCSRkYnska2V5fS0+eydub3RpZnknfSA9ICRub3RpZnl7JGdr ZXl9IGlmIG5vdCBleGlzdHMgJGRieyRrZXl9LT57J25vdGlmeSd9CisJCQkJCQkgIGFuZCBleGlz dHMgJG5vdGlmeXskZ2tleX07CiAKLQkJaWYgKGRlZmluZWQoJG5vdGlmeSkpIHsKLQkJCSMgTm8g Y29udGV4dCBjb21wbGV0ZSBkdWUgcmVxIG1lcmdpbmcgLSB1c2Ugbm90aWZ5LgotCQkJJGRieyRr ZXl9LT57J25vdGlmeSd9ID0gJG5vdGlmeTsKLQkJCSRkYnska2V5fS0+eydlbmQnfSA9ICRub3Rp Znk7Ci0JCX0gZWxzZSB7Ci0JCQkjIE5vIG5vdGlmeSBhbmQgbm8gY29udGV4dCBjb21wbGV0ZSAt IGdpdmUgdXAgZm9yIG5vdy4KLQkJCSRkYnska2V5fS0+eydpbmNvbXBsZXRlJ30gPSAxOwotCQl9 Ci0JfSBlbHNlIHsKLQkJIyBOb3RpZnkgYXJyaXZlZCBhZnRlciBjb250ZXh0IGNvbXBsZXRlLgot CQlpZiAoZXhpc3RzICRkYnska2V5fS0+eyduby1ub3RpZnknfSBhbmQgZGVmaW5lZCgkbm90aWZ5 KSkgewotCQkJZGVsZXRlICRkYnska2V5fS0+eyduby1ub3RpZnknfTsKLQkJCSRkYnska2V5fS0+ eydub3RpZnknfSA9ICRub3RpZnk7Ci0JCX0KKwkjIE5vIG5vdGlmeSBidXQgd2UgaGF2ZSBlbmQ/ CisJJGRieyRrZXl9LT57J25vdGlmeSd9ID0gJGRieyRrZXl9LT57J2VuZCd9IGlmIGV4aXN0cyAk ZGJ7JGtleX0tPnsnZW5kJ30gYW5kCisJCQkJCQkgICAgICBub3QgZXhpc3RzICRkYnska2V5fS0+ eydub3RpZnknfTsKKworCSMgSWYgdXNlciBpbnRlcnJ1cHQgYXJyaXZlZCBvdXQgb2Ygb3JkZXIg cHVzaCBpdCBiYWNrIHRvIGJlIG5vIGxhdGVyCisJIyB0aGFuIHJlcXVlc3Qgb3V0LgorCWlmIChl eGlzdHMgJGRieyRrZXl9LT57J2VuZCd9IGFuZCBleGlzdHMgJGRieyRrZXl9LT57J25vdGlmeSd9 IGFuZAorCSAgICAkZGJ7JGtleX0tPnsnbm90aWZ5J30gPiAkZGJ7JGtleX0tPnsnZW5kJ30pIHsK KwkJJGRieyRrZXl9LT57J25vdGlmeSd9ID0gJGRieyRrZXl9LT57J2VuZCd9OwogCX0KIH0KIAot IyBGaXggdXAgaW5jb21wbGV0ZXMKIG15ICRrZXlfY291bnQgPSBzY2FsYXIoa2V5cyAlZGIpOwot Zm9yZWFjaCBteSAka2V5IChrZXlzICVkYikgewotCW5leHQgdW5sZXNzIGV4aXN0cyAkZGJ7JGtl eX0tPnsnaW5jb21wbGV0ZSd9OwogCi0JIyBFbmQgdGhlIGluY29tcGxldGUgYmF0Y2ggYXQgdGhl IHRpbWUgbmV4dCBvbmUgc3RhcnRzCi0JbXkgJHJpbmcgPSAkZGJ7JGtleX0tPnsncmluZyd9Owot CW15ICRjdHggPSAkZGJ7JGtleX0tPnsnY3R4J307Ci0JbXkgJHNlcW5vID0gJGRieyRrZXl9LT57 J3NlcW5vJ307Ci0JbXkgJG5leHRfa2V5OwotCW15ICRpID0gMTsKLQlteSAkZW5kOwotCi0JZG8g ewotCQkkbmV4dF9rZXkgPSBkYl9rZXkoJHJpbmcsICRjdHgsICRzZXFubyArICRpKTsKLQkJJGkr KzsKLQl9IHVudGlsICgoZXhpc3RzICRkYnskbmV4dF9rZXl9IGFuZCBub3QgZXhpc3RzICRkYnsk bmV4dF9rZXl9LT57J2luY29tcGxldGUnfSkKLQkJIG9yICRpID4gJGtleV9jb3VudCk7ICAjIHVn bHkgc3RvcCBoYWNrCitteSAlZW5naW5lX3RpbWVsaW5lczsKIAotCWlmIChleGlzdHMgJGRieyRu ZXh0X2tleX0pIHsKLQkJJGVuZCA9ICRkYnskbmV4dF9rZXl9LT57J2VuZCd9OwotCX0gZWxzZSB7 Ci0JCSMgTm8gaW5mbyBhdCBhbGwsIGZha2UgaXQ6Ci0JCSRlbmQgPSAkZGJ7JGtleX0tPnsnc3Rh cnQnfSArIDk5OTsKLQl9CitzdWIgc29ydEVuZ2luZSB7CisJbXkgJGFzID0gJGRieyRhfS0+eydn bG9iYWwnfTsKKwlteSAkYnMgPSAkZGJ7JGJ9LT57J2dsb2JhbCd9OworCW15ICR2YWw7CisKKwkk dmFsID0gJGFzIDw9PiAkYnM7CiAKLQkkZGJ7JGtleX0tPnsnbm90aWZ5J30gPSAkZW5kOwotCSRk Ynska2V5fS0+eydlbmQnfSA9ICRlbmQ7CisJZGllIGlmICR2YWwgPT0gMDsKKworCXJldHVybiAk dmFsOwogfQogCi0jIEdQVSB0aW1lIGFjY291bnRpbmcKLW15ICglcnVubmluZywgJXJ1bm5hYmxl LCAlcXVldWVkLCAlYmF0Y2hfYXZnLCAlYmF0Y2hfdG90YWxfYXZnLCAlYmF0Y2hfY291bnQpOwot bXkgKCVzdWJtaXRfYXZnLCAlZXhlY3V0ZV9hdmcsICVjdHhzYXZlX2F2Zyk7CitzdWIgZ2V0X2Vu Z2luZV90aW1lbGluZSB7CisJbXkgKCRyaW5nKSA9IEBfOworCW15IEB0aW1lbGluZTsKKworCXJl dHVybiAkZW5naW5lX3RpbWVsaW5lc3skcmluZ30gaWYgZXhpc3RzICRlbmdpbmVfdGltZWxpbmVz eyRyaW5nfTsKKworCUB0aW1lbGluZSA9IGdyZXAgeyAkZGJ7JF99LT57J3JpbmcnfSBlcSAkcmlu ZyB9IGtleXMgJWRiOworCSMgRklYTUUgc2Vxbm8gcmVzdGFydAorCUB0aW1lbGluZSA9IHNvcnQg c29ydEVuZ2luZSBAdGltZWxpbmU7CisKKwkkZW5naW5lX3RpbWVsaW5lc3skcmluZ30gPSBcQHRp bWVsaW5lOworCisJcmV0dXJuIFxAdGltZWxpbmU7Cit9CisKKyMgRml4IHVwIGNvYWxlc2NlZCBy ZXF1ZXN0cyBieSBlbmRpbmcgdGhlbSBlaXRoZXIgd2hlbiB0aGUgZm9sbG93aW5nIHNhbWUKKyMg Y29udGV4dCByZXF1ZXN0IHdpdGgga25vd24gZW5kIGVuZHMsIG9yIHdoZW4gYSBkaWZmZXJlbnQg Y29udGV4dCBzdGFydHMuCitmb3JlYWNoIG15ICRnaWQgKHNvcnQga2V5cyAlcmluZ3MpIHsKKwlt eSAkcmluZyA9ICRyaW5nbWFweyRyaW5nc3skZ2lkfX07CisJbXkgJHRpbWVsaW5lID0gZ2V0X2Vu Z2luZV90aW1lbGluZSgkcmluZyk7CisJbXkgJGxhc3RfY29tcGxldGUgPSAtMTsKKwlteSAkbGFz dF9jdHggPSAtMTsKKwlteSAkY29tcGxldGU7CisKKwlmb3JlYWNoIG15ICRwb3MgKDAuLiQjeyR0 aW1lbGluZX0pIHsKKwkJbXkgJGtleSA9IEB7JHRpbWVsaW5lfVskcG9zXTsKKwkJbXkgKCRjdHgs ICRlbmQpOworCisJCW5leHQgaWYgZXhpc3RzICRkYnska2V5fS0+eydlbmQnfTsKKworCQkkZGJ7 JGtleX0tPnsnbm8tZW5kJ30gPSAxOworCQkkY3R4ID0gJGRieyRrZXl9LT57J2N0eCd9OworCisJ CWlmICgkcG9zID4gJGxhc3RfY29tcGxldGUgb3IgJGN0eCAhPSAkbGFzdF9jdHgpIHsKKwkJCW15 ICRuZXh0ID0gJHBvczsKKworCQkJdW5kZWYgJGNvbXBsZXRlOworCisJCQl3aGlsZSAoJG5leHQg PCAkI3skdGltZWxpbmV9KSB7CisJCQkJbXkgJG5leHRfa2V5ID0gJHskdGltZWxpbmV9WysrJG5l eHRdOworCQkJCWlmICgkY3R4ID09ICRkYnskbmV4dF9rZXl9LT57J2N0eCd9IGFuZAorCQkJCSAg ICBleGlzdHMgJGRieyRuZXh0X2tleX0tPnsnZW5kJ30pIHsKKwkJCQkJJGxhc3RfY3R4ID0gJGRi eyRuZXh0X2tleX0tPnsnY3R4J307CisJCQkJCSRsYXN0X2NvbXBsZXRlID0gJG5leHQ7CisJCQkJ CSRjb21wbGV0ZSA9ICRuZXh0X2tleTsKKwkJCQkJbGFzdDsKKwkJCQl9CisJCQl9CisJCX0KKwor CQlpZiAoZGVmaW5lZCAkY29tcGxldGUpIHsKKwkJCWlmICgkY3R4ID09ICRkYnskY29tcGxldGV9 LT57J2N0eCd9KSB7CisJCQkJJGVuZCA9ICRkYnskY29tcGxldGV9LT57J2VuZCd9OworCQkJfSBl bHNlIHsKKwkJCQkkZW5kID0gJGRieyRjb21wbGV0ZX0tPnsnc3RhcnQnfTsKKwkJCX0KKwkJfSBl bHNlIHsKKwkJCSMgTm8gbmV4dCBzdWJtaXNzaW9uLiBVc2Ugbm90aWZ5IGlmIGF2YWlsYWJsZSBv ciBnaXZlIHVwLgorCQkJaWYgKGV4aXN0cyAkZGJ7JGtleX0tPnsnbm90aWZ5J30pIHsKKwkJCQkk ZW5kID0gJGRieyRrZXl9LT57J25vdGlmeSd9OworCQkJfSBlbHNlIHsKKwkJCQkkZW5kID0gJGRi eyRrZXl9LT57J3N0YXJ0J307CisJCQkJJGRieyRrZXl9LT57J2luY29tcGxldGUnfSA9IDE7CisJ CQl9CisJCX0KKworCQl1bmxlc3MgKGV4aXN0cyAkZGJ7JGtleX0tPnsnbm90aWZ5J30pIHsKKwkJ CSRkYnska2V5fS0+eydub3RpZnknfSA9ICRlbmQ7CisJCQkkZGJ7JGtleX0tPnsnbm8tbm90aWZ5 J30gPSAxOworCQl9CisJCSRkYnska2V5fS0+eydlbmQnfSA9ICRlbmQ7CisJfQorfQogCiBzdWIg c29ydFN0YXJ0IHsKIAlteSAkYXMgPSAkZGJ7JGF9LT57J3N0YXJ0J307CkBAIC01NjIsNiArNjA3 LDEwIEBAIGZvcmVhY2ggbXkgJGtleSAoQHNvcnRlZF9rZXlzKSB7CiAKIEBzb3J0ZWRfa2V5cyA9 IHNvcnQgc29ydFN0YXJ0IGtleXMgJWRiIGlmICRyZV9zb3J0OwogCisjIEdQVSB0aW1lIGFjY291 bnRpbmcKK215ICglcnVubmluZywgJXJ1bm5hYmxlLCAlcXVldWVkLCAlYmF0Y2hfYXZnLCAlYmF0 Y2hfdG90YWxfYXZnLCAlYmF0Y2hfY291bnQpOworbXkgKCVzdWJtaXRfYXZnLCAlZXhlY3V0ZV9h dmcsICVjdHhzYXZlX2F2Zyk7CisKIG15ICRsYXN0X3RzID0gMDsKIG15ICRmaXJzdF90czsKIG15 ICRtaW5fY3R4OwpAQCAtNTg0LDcgKzYzMywxMSBAQCBmb3JlYWNoIG15ICRrZXkgKEBzb3J0ZWRf a2V5cykgewogCX0KIAkkZGJ7JGtleX0tPnsnZXhlY3V0ZS1kZWxheSd9ID0gJHN0YXJ0IC0gJGRi eyRrZXl9LT57J3N1Ym1pdCd9OwogCSRkYnska2V5fS0+eydzdWJtaXQtZGVsYXknfSA9ICRkYnsk a2V5fS0+eydzdWJtaXQnfSAtICRkYnska2V5fS0+eydxdWV1ZSd9OwotCSRkYnska2V5fS0+eydk dXJhdGlvbid9ID0gJG5vdGlmeSAtICRzdGFydDsKKwl1bmxlc3MgKGV4aXN0cyAkZGJ7JGtleX0t Pnsnbm8tbm90aWZ5J30pIHsKKwkJJGRieyRrZXl9LT57J2R1cmF0aW9uJ30gPSAkbm90aWZ5IC0g JHN0YXJ0OworCX0gZWxzZSB7CisJCSRkYnska2V5fS0+eydkdXJhdGlvbid9ID0gMDsKKwl9CiAK IAkkcnVubmluZ3skcmluZ30gKz0gJGVuZCAtICRzdGFydCBpZiAkY29ycmVjdF9kdXJhdGlvbnMg b3IKIAkJCQkJICAgIG5vdCBleGlzdHMgJGRieyRrZXl9LT57J25vLWVuZCd9OwotLSAKMi4xNy4x CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK