From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr0-x236.google.com (mail-wr0-x236.google.com [IPv6:2a00:1450:400c:c0c::236]) by gabe.freedesktop.org (Postfix) with ESMTPS id B0D3C6E8F3 for ; Tue, 30 Jan 2018 10:11:41 +0000 (UTC) Received: by mail-wr0-x236.google.com with SMTP id a43so2902049wrc.4 for ; Tue, 30 Jan 2018 02:11:41 -0800 (PST) From: Tvrtko Ursulin Date: Tue, 30 Jan 2018 10:11:19 +0000 Message-Id: <20180130101119.15758-14-tvrtko.ursulin@linux.intel.com> In-Reply-To: <20180130101119.15758-1-tvrtko.ursulin@linux.intel.com> References: <20180130101119.15758-1-tvrtko.ursulin@linux.intel.com> Subject: [igt-dev] [PATCH i-g-t 11/11] trace.pl: Fix request split mode List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: Tvrtko Ursulin List-ID: RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KClJlcXVlc3Qg c3BsaXQgbW9kZSBoYWQgc2V2ZXJhbCBidWdzLCBib3RoIGluIHRoZSBvcmlnaW5hbCB2ZXJzaW9u IGFuZCBhbHNvCmFmdGVyIHRoZSByZWNlbnQgcmVmYWN0b3JpbmdzLgoKT25lIGJpZyBvbmUgd2Fz IHRoYXQgaXQgd2Fzbid0IGNvbnNpZGVyaW5nIGRpZmZlcmVudCBzdWJtaXQgcG9ydHMgYXMgYQpy ZWFzb24gdG8gc3BsaXQgZXhlY3V0aW9uLCBhbmQgYWxzbyB0aGF0IGl0IHdhcyB0b28gdGltZSBi YXNlZCBpbnN0ZWFkIG9mCmxvb2tpbmcgYXQgcmVsZXZhbnQgdGltZWxpbmVzLgoKSW4gdGhpcyBy ZWZhY3RvcmluZyB3ZSBhZGRyZXNzIHRoZSBmb3JtZXIgYnkgdXNpbmcgdGhlIGVuZ2luZSB0aW1l bGluZXMKaW50cm9kdWNlZCBpbiB0aGUgcHJldmlvdXMgcGF0Y2guIFNlY29uZGFyeSBwb3J0IHN1 Ym1pc3Npb25zIGFyZSBtb3ZlZAp0byBmb2xsb3cgdGhlIHByZWNlZGluZyBzdWJtaXNzaW9uIGFz IGEgZmlyc3Qgc3RlcCBpbiB0aGUgY29ycmVjdGlvbgpwcm9jZXNzLgoKSW4gdGhlIHNlY29uZCBz dGVwLCB3ZSBhZGQgY29udGV4dCB0aW1lbGluZXMgYW5kIHVzZSB0aGVuIGluIGEgc2ltaWxhcgpm YXNoaW9uIHRvIHNlcGFyYXRlIHN0YXJ0IGFuZCBlbmQgdGltZSBvZiBjb2FsZXNjZWQgcmVxdWVz dHMuIEZvciBlYWNoCmNvYWxlc2NlZCByZXF1ZXN0IHdlIGtub3cgaXRzIGJvdW5kYXJpZXMgYnkg bG9va2luZyBhdCB0aGUgZW5naW5lCnRpbWVsaW5lICh2aWEgZ2xvYmFsIHNlcW5vcyksIGFuZCB3 ZSBrbm93IHRoZSBwcmV2aW91cyByZXF1ZXN0IGl0IHNob3VsZApvbmx5IHN0YXJ0IGFmdGVyLCBi eSBsb29raW5nIGF0IHRoZSBjb250ZXh0IHRpbWVsaW5lLgoKU2lnbmVkLW9mZi1ieTogVHZydGtv IFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KQ2M6IEpvaG4gSGFycmlzb24gPEpv aG4uQy5IYXJyaXNvbkBpbnRlbC5jb20+Ci0tLQogc2NyaXB0cy90cmFjZS5wbCB8IDEyOSArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCiAxIGZp bGUgY2hhbmdlZCwgMTAzIGluc2VydGlvbnMoKyksIDI2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3NjcmlwdHMvdHJhY2UucGwgYi9zY3JpcHRzL3RyYWNlLnBsCmluZGV4IDc2OGJiMDE1ZGE5 OS4uNjUzMjE1ODE5ZjM0IDEwMDc1NQotLS0gYS9zY3JpcHRzL3RyYWNlLnBsCisrKyBiL3Njcmlw dHMvdHJhY2UucGwKQEAgLTU3Miw0MSArNTcyLDExOCBAQCBzdWIgc29ydFN0YXJ0IHsKIAlyZXR1 cm4gJHZhbDsKIH0KIAotbXkgQHNvcnRlZF9rZXlzID0gc29ydCBzb3J0U3RhcnQga2V5cyAlZGI7 Ci1teSAkcmVfc29ydCA9IDA7CitteSAkcmVfc29ydCA9IDE7CitteSBAc29ydGVkX2tleXM7CiAK LWRpZSAiRGF0YWJhc2UgY2hhbmdlZCBzaXplPyEiIHVubGVzcyBzY2FsYXIoQHNvcnRlZF9rZXlz KSA9PSAka2V5X2NvdW50Oworc3ViIG1heWJlX3NvcnRfa2V5cworeworCWlmICgkcmVfc29ydCkg eworCQlAc29ydGVkX2tleXMgPSBzb3J0IHNvcnRTdGFydCBrZXlzICVkYjsKKwkJJHJlX3NvcnQg PSAwOworCQlkaWUgIkRhdGFiYXNlIGNoYW5nZWQgc2l6ZT8hIiB1bmxlc3Mgc2NhbGFyKEBzb3J0 ZWRfa2V5cykgPT0KKwkJCQkJCSAgICAgJGtleV9jb3VudDsKKwl9Cit9CiAKLWZvcmVhY2ggbXkg JGtleSAoQHNvcnRlZF9rZXlzKSB7Ci0JbXkgJHJpbmcgPSAkZGJ7JGtleX0tPnsncmluZyd9Owot CW15ICRlbmQgPSAkZGJ7JGtleX0tPnsnZW5kJ307CittYXliZV9zb3J0X2tleXMoKTsKKworbXkg JWN0eF90aW1lbGluZXM7CisKK3N1YiBzb3J0Q29udGV4dCB7CisJbXkgJGFzID0gJGRieyRhfS0+ eydzZXFubyd9OworCW15ICRicyA9ICRkYnskYn0tPnsnc2Vxbm8nfTsKKwlteSAkdmFsOwogCi0J IyBjb3JyZWN0IGR1cmF0aW9uIG9mIG1lcmdlZCBiYXRjaGVzCi0JaWYgKCRjb3JyZWN0X2R1cmF0 aW9ucyBhbmQgZXhpc3RzICRkYnska2V5fS0+eyduby1lbmQnfSkgeworCSR2YWwgPSAkYXMgPD0+ ICRiczsKKworCWRpZSBpZiAkdmFsID09IDA7CisKKwlyZXR1cm4gJHZhbDsKK30KKworc3ViIGdl dF9jdHhfdGltZWxpbmUgeworCW15ICgkY3R4LCAkcmluZywgJGtleSkgPSBAXzsKKwlteSBAdGlt ZWxpbmU7CisKKwlyZXR1cm4gJGN0eF90aW1lbGluZXN7JGtleX0gaWYgZXhpc3RzICRjdHhfdGlt ZWxpbmVzeyRrZXl9OworCisJQHRpbWVsaW5lID0gZ3JlcCB7ICRkYnskX30tPnsncmluZyd9ID09 ICRyaW5nIGFuZAorCQkJICAgJGRieyRffS0+eydjdHgnfSA9PSAkY3R4IH0gQHNvcnRlZF9rZXlz OworCSMgRklYTUUgc2Vxbm8gcmVzdGFydAorCUB0aW1lbGluZSA9IHNvcnQgc29ydENvbnRleHQg QHRpbWVsaW5lOworCisJJGN0eF90aW1lbGluZXN7JGtleX0gPSBcQHRpbWVsaW5lOworCisJcmV0 dXJuIFxAdGltZWxpbmU7Cit9CisKKyMgU3BsaXQgb3V0IG1lcmdlZCBiYXRjaGVzIGlmIHJlcXVl c3RlZC4KK2lmICgkY29ycmVjdF9kdXJhdGlvbnMpIHsKKwlteSBAcG9ydDE7CisJbXkgQG5vX2Vu ZDsKKworCSMgU2hpZnQgcG9ydDEgcmVxdWVzdHMgc3RhcnQgdGltZSB0byBhZnRlciB0aGUgcHJl dmlvdXMgcG9ydDAgY29udGV4dCBvbgorCSMgdGhlIHNhbWUgdGltZWxpbmUgaGFzIGZpbmlzaGVk LgorCUBwb3J0MSA9IGdyZXAgeyAkZGJ7JF99LT57J3BvcnQnfSA9PSAxIH0gQHNvcnRlZF9rZXlz OworCWZvcmVhY2ggbXkgJGtleSAoQHBvcnQxKSB7CisJCW15ICR0aW1lbGluZSA9IGdldF9lbmdp bmVfdGltZWxpbmUoJGRieyRrZXl9LT57J3JpbmcnfSk7CisJCW15ICRpID0gTGlzdDo6VXRpbDo6 Zmlyc3QgeyAkeyR0aW1lbGluZX1bJF9dIGVxICRrZXkgfSAwLi4kI3skdGltZWxpbmV9OworCQlt eSAkcHJldl9rZXk7CisJCW15ICRzdGFydDsKKworCQlkaWUgaWYgJGkgPT0gMDsKKworCQkkcHJl dl9rZXkgPSAkeyR0aW1lbGluZX1bJGkgLSAxXTsKKwkJJHN0YXJ0ID0gJGRieyRwcmV2X2tleX0t PnsnZW5kJ307CisJCSRkYnska2V5fS0+eydzdGFydCd9ID0gJHN0YXJ0OworCQlkaWUgaWYgJHN0 YXJ0ID4gJGRieyRrZXl9LT57J2VuZCd9OworCisJCSMgVGltZWxpbmUgaGFzIGp1c3QgYmVlbiBt b2RpZmllZCBzbyB3ZSdsbCBuZWVkIHRvIGFkanVzdCBpdC4KKwkJIyBGaXJzdCBkZWxldGUgdGhl IGN1cnJlbnQga2V5IGZyb20gdGhlIHRpbWVsaW5lLgorCQlzcGxpY2UgQHskdGltZWxpbmV9LCAk aSwgMTsKKwkJIyBOb3cgZmluZCB0aGUgbmV3IGNvcnJlY3QgcG9zaXRpb24gZm9yIHRoZSBrZXkg YW5kIGluc2VydCBpdAorCQkjIHRoZXJlLgorCQl3aGlsZSAoJGkgPCAkI3skdGltZWxpbmV9KSB7 CisJCQlsYXN0IGlmICRkYnskeyR0aW1lbGluZX1bJGldfS0+eydnbG9iYWwnfSA+PSAkZGJ7JGtl eX0tPnsnZ2xvYmFsJ307CisJCQkkaSA9ICRpICsgMTsKKwkJfQorCQlzcGxpY2UgQHskdGltZWxp bmV9LCAkaSwgMCwgJGtleTsKKwkJJHJlX3NvcnQgPSAxOworCX0KKworCW1heWJlX3NvcnRfa2V5 cygpOworCisJIyBCYXRjaCB3aXRoIG5vLWVuZCAobm8gcmVxdWVzdF9vdXQpIG1lYW5zIGl0IHdh cyBzdWJtaXR0ZWQgYXMgcGFydCBvZgorCSMgY29sYWVzY2VkIGNvbnRleHQuIFRoaXMgbWVhbnMg aXQncyBzdGFydCB0aW1lIHNob3VsZCBiZSBzZXQgdG8gdGhlIGVuZAorCSMgdGltZSBvZiBhIHBy ZWNlZGVpbmcgcmVxdWVzdCBvbiB0aGlzIHRpbWVsaW5lLgorCUBub19lbmQgPSBncmVwIHsgZXhp c3RzICRkYnskX30tPnsnbm8tZW5kJ30gfSBAc29ydGVkX2tleXM7CisJZm9yZWFjaCBteSAka2V5 IChAbm9fZW5kKSB7CiAJCW15ICRjdHggPSAkZGJ7JGtleX0tPnsnY3R4J307Ci0JCW15ICRzZXFu byA9ICRkYnska2V5fS0+eydzZXFubyd9OwotCQlteSAkc3RhcnQgPSAkZGJ7JGtleX0tPnsnc3Rh cnQnfTsKLQkJbXkgJG5leHRfa2V5OwotCQlteSAkaSA9IDE7Ci0KLQkJZG8gewotCQkJJG5leHRf a2V5ID0gZGJfa2V5KCRyaW5nLCAkY3R4LCAkc2Vxbm8gKyAkaSk7Ci0JCQkkaSsrOwotCQl9IHVu dGlsIChleGlzdHMgJGRieyRuZXh0X2tleX0gb3IgJGkgPiAka2V5X2NvdW50KTsgICMgdWdseSBz dG9wIGhhY2sKLQotCQkjIDIwdXMgdG9sZXJhbmNlCi0JCWlmIChleGlzdHMgJGRieyRuZXh0X2tl eX0gYW5kICRkYnskbmV4dF9rZXl9LT57J3N0YXJ0J30gPCAkc3RhcnQgKyAyMCkgewotCQkJbXkg JG5vdGlmeSA9ICRkYnska2V5fS0+eydub3RpZnknfTsKKwkJbXkgJHJpbmcgPSAkZGJ7JGtleX0t PnsncmluZyd9OworCQlteSAkdGtleSA9ICRjdHggLiAnLycgLiAkcmluZzsKKwkJbXkgJHRpbWVs aW5lID0gZ2V0X2N0eF90aW1lbGluZSgkY3R4LCAkcmluZywgJHRrZXkpOworCQlteSAkaTsKKwor CQkkaSA9IExpc3Q6OlV0aWw6OmZpcnN0IHsgJHskdGltZWxpbmV9WyRfXSBlcSAka2V5IH0gMC4u JCN7JHRpbWVsaW5lfTsKKwkJaWYgKCRpID4gMCkgeworCQkJbXkgJHByZXZfa2V5ID0gJHskdGlt ZWxpbmV9WyRpIC0gMV07CisKKwkJCWlmICgkZGJ7JHByZXZfa2V5fS0+eydnbG9iYWwnfSA9PSAk ZGJ7JGtleX0tPnsnZ2xvYmFsJ30pIHsKKwkJCQkkZGJ7JGtleX0tPnsnc3RhcnQnfSA9ICRkYnsk cHJldl9rZXl9LT57J25vdGlmeSd9OworCQkJCSRyZV9zb3J0ID0gMTsKKwkJCX0KKwkJfQorCisJ CWlmICgkaSA8ICQjeyR0aW1lbGluZX0pIHsKKwkJCW15ICRuZXh0X2tleSA9ICR7JHRpbWVsaW5l fVskaSArIDFdOworCisJCQkkZGJ7JG5leHRfa2V5fS0+eydzdGFydCd9ID0gJGRieyRrZXl9LT57 J25vdGlmeSd9OwogCQkJJHJlX3NvcnQgPSAxOwotCQkJJGRieyRuZXh0X2tleX0tPnsnc3RhcnQn fSA9ICRub3RpZnk7Ci0JCQkkZGJ7JG5leHRfa2V5fS0+eydzdGFydCd9ID0gJGRieyRuZXh0X2tl eX0tPnsnZW5kJ30gaWYgJGRieyRuZXh0X2tleX0tPnsnc3RhcnQnfSA+ICRkYnskbmV4dF9rZXl9 LT57J2VuZCd9OwotCQkJZGllIGlmICRkYnskbmV4dF9rZXl9LT57J3N0YXJ0J30gPiAkZGJ7JG5l eHRfa2V5fS0+eydlbmQnfTsKIAkJfQotCQlkaWUgaWYgJHN0YXJ0ID4gJGVuZDsKIAl9CiB9CiAK LUBzb3J0ZWRfa2V5cyA9IHNvcnQgc29ydFN0YXJ0IGtleXMgJWRiIGlmICRyZV9zb3J0OworbWF5 YmVfc29ydF9rZXlzKCk7CiAKICMgR1BVIHRpbWUgYWNjb3VudGluZwogbXkgKCVydW5uaW5nLCAl cnVubmFibGUsICVxdWV1ZWQsICViYXRjaF9hdmcsICViYXRjaF90b3RhbF9hdmcsICViYXRjaF9j b3VudCk7Ci0tIAoyLjE0LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRl dgo=