From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1EAA2892A8 for ; Mon, 2 Dec 2019 13:01:16 +0000 (UTC) From: Petri Latvala Date: Mon, 2 Dec 2019 15:01:02 +0200 Message-Id: <20191202130109.929-5-petri.latvala@intel.com> In-Reply-To: <20191202130109.929-1-petri.latvala@intel.com> References: <20191202130109.929-1-petri.latvala@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 04/11] runner/resultgen: Hoist handling of dynamic subtest output to a helper List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , 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: Petri Latvala List-ID: U2lnbmVkLW9mZi1ieTogUGV0cmkgTGF0dmFsYSA8cGV0cmkubGF0dmFsYUBpbnRlbC5jb20+Ci0t LQogcnVubmVyL3Jlc3VsdGdlbi5jIHwgMTM2ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDc4IGluc2VydGlvbnMoKyksIDU4IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3J1bm5lci9yZXN1bHRnZW4uYyBiL3J1bm5lci9yZXN1 bHRnZW4uYwppbmRleCAyM2JiMzMzMS4uOGY0YmJlOTggMTAwNjQ0Ci0tLSBhL3J1bm5lci9yZXN1 bHRnZW4uYworKysgYi9ydW5uZXIvcmVzdWx0Z2VuLmMKQEAgLTQ4OSw2ICs0ODksNzUgQEAgc3Rh dGljIGNvbnN0IGNoYXIgKmZpbmRfc3VidGVzdF9lbmRfbGltaXQoc3RydWN0IG1hdGNoZXMgbWF0 Y2hlcywKIAlyZXR1cm4gYnVmZW5kOwogfQogCitzdGF0aWMgdm9pZCBwcm9jZXNzX2R5bmFtaWNf c3VidGVzdF9vdXRwdXQoY29uc3QgY2hhciAqcGlnbGl0X25hbWUsCisJCQkJCSAgIGNvbnN0IGNo YXIgKmlndF92ZXJzaW9uLAorCQkJCQkgICBzaXplX3QgaWd0X3ZlcnNpb25fbGVuLAorCQkJCQkg ICBzdHJ1Y3QgbWF0Y2hlcyBtYXRjaGVzLAorCQkJCQkgICBpbnQgYmVnaW5faWR4LAorCQkJCQkg ICBpbnQgcmVzdWx0X2lkeCwKKwkJCQkJICAgY29uc3QgY2hhciAqYmVnLAorCQkJCQkgICBjb25z dCBjaGFyICplbmQsCisJCQkJCSAgIGNvbnN0IGNoYXIgKmtleSwKKwkJCQkJICAgc3RydWN0IGpz b25fb2JqZWN0ICp0ZXN0cywKKwkJCQkJICAgc3RydWN0IHN1YnRlc3QgKnN1YnRlc3QpCit7CisJ c2l6ZV90IGs7CisKKwlpZiAocmVzdWx0X2lkeCA8IDApIHsKKwkJLyogSWYgdGhlIHN1YnRlc3Qg aXRzZWxmIGlzIGluY29tcGxldGUsIHN0b3AgYXQgdGhlIG5leHQgc3RhcnQvZW5kIG9mIGEgc3Vi dGVzdCAqLworCQlmb3IgKHJlc3VsdF9pZHggPSBiZWdpbl9pZHggKyAxOworCQkgICAgIHJlc3Vs dF9pZHggPCBtYXRjaGVzLnNpemU7CisJCSAgICAgcmVzdWx0X2lkeCsrKSB7CisJCQlpZiAobWF0 Y2hlcy5pdGVtc1tyZXN1bHRfaWR4XS53aGF0ID09IFNUQVJUSU5HX1NVQlRFU1QgfHwKKwkJCSAg ICBtYXRjaGVzLml0ZW1zW3Jlc3VsdF9pZHhdLndoYXQgPT0gU1VCVEVTVF9SRVNVTFQpCisJCQkJ YnJlYWs7CisJCX0KKwl9CisKKwlmb3IgKGsgPSBiZWdpbl9pZHggKyAxOyBrIDwgcmVzdWx0X2lk eDsgaysrKSB7CisJCXN0cnVjdCBqc29uX29iamVjdCAqY3VycmVudF9keW5hbWljX3Rlc3QgPSBO VUxMOworCQlpbnQgZHluX3Jlc3VsdF9pZHggPSAtMTsKKwkJY2hhciBkeW5hbWljX25hbWVbMjU2 XTsKKwkJY2hhciBkeW5hbWljX3BpZ2xpdF9uYW1lWzI1Nl07CisJCWNvbnN0IGNoYXIgKmR5bmJl ZywgKmR5bmVuZDsKKworCQlpZiAobWF0Y2hlcy5pdGVtc1trXS53aGF0ICE9IFNUQVJUSU5HX0RZ TkFNSUNfU1VCVEVTVCkKKwkJCWNvbnRpbnVlOworCisJCWlmIChzc2NhbmYobWF0Y2hlcy5pdGVt c1trXS53aGVyZSArIHN0cmxlbihTVEFSVElOR19EWU5BTUlDX1NVQlRFU1QpLCAiJXMiLCBkeW5h bWljX25hbWUpICE9IDEpIHsKKwkJCS8qIENhbm5vdCBwYXJzZSBuYW1lLCBqdXN0IGlnbm9yZSB0 aGlzIG9uZSAqLworCQkJY29udGludWU7CisJCX0KKworCQlkeW5fcmVzdWx0X2lkeCA9IGZpbmRf c3VidGVzdF9pZHhfbGltaXRlZChtYXRjaGVzLCBlbmQsIERZTkFNSUNfU1VCVEVTVF9SRVNVTFQs ICIlcyVzOiAiLCBkeW5hbWljX25hbWUsIGssIHJlc3VsdF9pZHgpOworCisJCWR5bmJlZyA9IGZp bmRfc3VidGVzdF9iZWdpbl9saW1pdChtYXRjaGVzLCBrLCBkeW5fcmVzdWx0X2lkeCwgYmVnLCBl bmQpOworCQlkeW5lbmQgPSBmaW5kX3N1YnRlc3RfZW5kX2xpbWl0KG1hdGNoZXMsIGssIGR5bl9y ZXN1bHRfaWR4LCBiZWcsIGVuZCk7CisKKwkJZ2VuZXJhdGVfcGlnbGl0X25hbWVfZm9yX2R5bmFt aWMocGlnbGl0X25hbWUsIGR5bmFtaWNfbmFtZSwgZHluYW1pY19waWdsaXRfbmFtZSwgc2l6ZW9m KGR5bmFtaWNfcGlnbGl0X25hbWUpKTsKKworCQlhZGRfZHluYW1pY19zdWJ0ZXN0KHN1YnRlc3Qs IHN0cmR1cChkeW5hbWljX25hbWUpKTsKKwkJY3VycmVudF9keW5hbWljX3Rlc3QgPSBnZXRfb3Jf Y3JlYXRlX2pzb25fb2JqZWN0KHRlc3RzLCBkeW5hbWljX3BpZ2xpdF9uYW1lKTsKKworCQlqc29u X29iamVjdF9vYmplY3RfYWRkKGN1cnJlbnRfZHluYW1pY190ZXN0LCBrZXksCisJCQkJICAgICAg IGpzb25fb2JqZWN0X25ld19zdHJpbmdfbGVuKGR5bmJlZywgZHluZW5kIC0gZHluYmVnKSk7CisJ CWFkZF9pZ3RfdmVyc2lvbihjdXJyZW50X2R5bmFtaWNfdGVzdCwgaWd0X3ZlcnNpb24sIGlndF92 ZXJzaW9uX2xlbik7CisKKwkJaWYgKCFqc29uX29iamVjdF9vYmplY3RfZ2V0X2V4KGN1cnJlbnRf ZHluYW1pY190ZXN0LCAicmVzdWx0IiwgTlVMTCkpIHsKKwkJCWNvbnN0IGNoYXIgKmR5bnJlc3Vs dHRleHQ7CisJCQlkb3VibGUgZHludGltZTsKKworCQkJcGFyc2Vfc3VidGVzdF9yZXN1bHQoZHlu YW1pY19uYW1lLAorCQkJCQkgICAgIERZTkFNSUNfU1VCVEVTVF9SRVNVTFQsCisJCQkJCSAgICAg JmR5bnJlc3VsdHRleHQsICZkeW50aW1lLAorCQkJCQkgICAgIGR5bl9yZXN1bHRfaWR4IDwgMCA/ IE5VTEwgOiBtYXRjaGVzLml0ZW1zW2R5bl9yZXN1bHRfaWR4XS53aGVyZSwKKwkJCQkJICAgICBk eW5lbmQpOworCQkJc2V0X3Jlc3VsdChjdXJyZW50X2R5bmFtaWNfdGVzdCwgZHlucmVzdWx0dGV4 dCk7CisJCQlzZXRfcnVudGltZShjdXJyZW50X2R5bmFtaWNfdGVzdCwgZHludGltZSk7CisJCX0K Kwl9Cit9CisKIHN0YXRpYyBib29sIGZpbGxfZnJvbV9vdXRwdXQoaW50IGZkLCBjb25zdCBjaGFy ICpiaW5hcnksIGNvbnN0IGNoYXIgKmtleSwKIAkJCSAgICAgc3RydWN0IHN1YnRlc3RfbGlzdCAq c3VidGVzdHMsCiAJCQkgICAgIHN0cnVjdCBqc29uX29iamVjdCAqdGVzdHMpCkBAIC01MDcsNyAr NTc2LDcgQEAgc3RhdGljIGJvb2wgZmlsbF9mcm9tX291dHB1dChpbnQgZmQsIGNvbnN0IGNoYXIg KmJpbmFyeSwgY29uc3QgY2hhciAqa2V5LAogCQlOVUxMCiAJfTsKIAlzdHJ1Y3QgbWF0Y2hlcyBt YXRjaGVzID0ge307Ci0Jc2l6ZV90IGksIGs7CisJc2l6ZV90IGk7CiAKIAlpZiAoZnN0YXQoZmQs ICZzdGF0YnVmKSkKIAkJcmV0dXJuIGZhbHNlOwpAQCAtNTgxLDYzICs2NTAsMTQgQEAgc3RhdGlj IGJvb2wgZmlsbF9mcm9tX291dHB1dChpbnQgZmQsIGNvbnN0IGNoYXIgKmJpbmFyeSwgY29uc3Qg Y2hhciAqa2V5LAogCQkJc2V0X3J1bnRpbWUoY3VycmVudF90ZXN0LCB0aW1lKTsKIAkJfQogCi0J CS8qCi0JCSAqIExvb2sgZm9yIGR5bmFtaWMgc3VidGVzdHM6IElmIGFueSwgdGhleSBhcmUgd2l0 aGluCi0JCSAqIHRoZSBzdWJ0ZXN0IG91dHB1dC4KLQkJICovCi0JCWlmIChyZXN1bHRfaWR4IDwg MCkgewotCQkJLyogSWYgdGhlIHN1YnRlc3QgaXRzZWxmIGlzIGluY29tcGxldGUsIHN0b3AgYXQg dGhlIG5leHQgc3RhcnQvZW5kIG9mIGEgc3VidGVzdCAqLwotCQkJZm9yIChyZXN1bHRfaWR4ID0g YmVnaW5faWR4ICsgMTsKLQkJCSAgICAgcmVzdWx0X2lkeCA8IG1hdGNoZXMuc2l6ZTsKLQkJCSAg ICAgcmVzdWx0X2lkeCsrKSB7Ci0JCQkJaWYgKG1hdGNoZXMuaXRlbXNbcmVzdWx0X2lkeF0ud2hh dCA9PSBTVEFSVElOR19TVUJURVNUIHx8Ci0JCQkJICAgIG1hdGNoZXMuaXRlbXNbcmVzdWx0X2lk eF0ud2hhdCA9PSBTVUJURVNUX1JFU1VMVCkKLQkJCQkJYnJlYWs7Ci0JCQl9Ci0JCX0KLQotCQlm b3IgKGsgPSBiZWdpbl9pZHggKyAxOyBrIDwgcmVzdWx0X2lkeDsgaysrKSB7Ci0JCQlzdHJ1Y3Qg anNvbl9vYmplY3QgKmN1cnJlbnRfZHluYW1pY190ZXN0ID0gTlVMTDsKLQkJCWludCBkeW5fcmVz dWx0X2lkeCA9IC0xOwotCQkJY2hhciBkeW5hbWljX25hbWVbMjU2XTsKLQkJCWNoYXIgZHluYW1p Y19waWdsaXRfbmFtZVsyNTZdOwotCQkJY29uc3QgY2hhciAqZHluYmVnLCAqZHluZW5kOwotCi0J CQlpZiAobWF0Y2hlcy5pdGVtc1trXS53aGF0ICE9IFNUQVJUSU5HX0RZTkFNSUNfU1VCVEVTVCkK LQkJCQljb250aW51ZTsKLQotCQkJaWYgKHNzY2FuZihtYXRjaGVzLml0ZW1zW2tdLndoZXJlICsg c3RybGVuKFNUQVJUSU5HX0RZTkFNSUNfU1VCVEVTVCksICIlcyIsIGR5bmFtaWNfbmFtZSkgIT0g MSkgewotCQkJCS8qIENhbm5vdCBwYXJzZSBuYW1lLCBqdXN0IGlnbm9yZSB0aGlzIG9uZSAqLwot CQkJCWNvbnRpbnVlOwotCQkJfQotCi0JCQlkeW5fcmVzdWx0X2lkeCA9IGZpbmRfc3VidGVzdF9p ZHhfbGltaXRlZChtYXRjaGVzLCBlbmQsIERZTkFNSUNfU1VCVEVTVF9SRVNVTFQsICIlcyVzOiAi LCBkeW5hbWljX25hbWUsIGssIHJlc3VsdF9pZHgpOwotCi0JCQlkeW5iZWcgPSBmaW5kX3N1YnRl c3RfYmVnaW5fbGltaXQobWF0Y2hlcywgaywgZHluX3Jlc3VsdF9pZHgsIGJlZywgZW5kKTsKLQkJ CWR5bmVuZCA9IGZpbmRfc3VidGVzdF9lbmRfbGltaXQobWF0Y2hlcywgaywgZHluX3Jlc3VsdF9p ZHgsIGJlZywgZW5kKTsKLQotCQkJZ2VuZXJhdGVfcGlnbGl0X25hbWVfZm9yX2R5bmFtaWMocGln bGl0X25hbWUsIGR5bmFtaWNfbmFtZSwgZHluYW1pY19waWdsaXRfbmFtZSwgc2l6ZW9mKGR5bmFt aWNfcGlnbGl0X25hbWUpKTsKLQotCQkJYWRkX2R5bmFtaWNfc3VidGVzdCgmc3VidGVzdHMtPnN1 YnNbaV0sIHN0cmR1cChkeW5hbWljX25hbWUpKTsKLQkJCWN1cnJlbnRfZHluYW1pY190ZXN0ID0g Z2V0X29yX2NyZWF0ZV9qc29uX29iamVjdCh0ZXN0cywgZHluYW1pY19waWdsaXRfbmFtZSk7Ci0K LQkJCWpzb25fb2JqZWN0X29iamVjdF9hZGQoY3VycmVudF9keW5hbWljX3Rlc3QsIGtleSwKLQkJ CQkJICAgICAgIGpzb25fb2JqZWN0X25ld19zdHJpbmdfbGVuKGR5bmJlZywgZHluZW5kIC0gZHlu YmVnKSk7Ci0JCQlhZGRfaWd0X3ZlcnNpb24oY3VycmVudF9keW5hbWljX3Rlc3QsIGlndF92ZXJz aW9uLCBpZ3RfdmVyc2lvbl9sZW4pOwotCi0JCQlpZiAoIWpzb25fb2JqZWN0X29iamVjdF9nZXRf ZXgoY3VycmVudF9keW5hbWljX3Rlc3QsICJyZXN1bHQiLCBOVUxMKSkgewotCQkJCWNvbnN0IGNo YXIgKmR5bnJlc3VsdHRleHQ7Ci0JCQkJZG91YmxlIGR5bnRpbWU7Ci0KLQkJCQlwYXJzZV9zdWJ0 ZXN0X3Jlc3VsdChkeW5hbWljX25hbWUsCi0JCQkJCQkgICAgIERZTkFNSUNfU1VCVEVTVF9SRVNV TFQsCi0JCQkJCQkgICAgICZkeW5yZXN1bHR0ZXh0LCAmZHludGltZSwKLQkJCQkJCSAgICAgZHlu X3Jlc3VsdF9pZHggPCAwID8gTlVMTCA6IG1hdGNoZXMuaXRlbXNbZHluX3Jlc3VsdF9pZHhdLndo ZXJlLAotCQkJCQkJICAgICBkeW5lbmQpOwotCQkJCXNldF9yZXN1bHQoY3VycmVudF9keW5hbWlj X3Rlc3QsIGR5bnJlc3VsdHRleHQpOwotCQkJCXNldF9ydW50aW1lKGN1cnJlbnRfZHluYW1pY190 ZXN0LCBkeW50aW1lKTsKLQkJCX0KLQkJfQorCQlwcm9jZXNzX2R5bmFtaWNfc3VidGVzdF9vdXRw dXQocGlnbGl0X25hbWUsCisJCQkJCSAgICAgICBpZ3RfdmVyc2lvbiwgaWd0X3ZlcnNpb25fbGVu LAorCQkJCQkgICAgICAgbWF0Y2hlcywKKwkJCQkJICAgICAgIGJlZ2luX2lkeCwgcmVzdWx0X2lk eCwKKwkJCQkJICAgICAgIGJlZywgZW5kLAorCQkJCQkgICAgICAga2V5LAorCQkJCQkgICAgICAg dGVzdHMsCisJCQkJCSAgICAgICAmc3VidGVzdHMtPnN1YnNbaV0pOwogCX0KIAogCWZyZWVfbWF0 Y2hlcygmbWF0Y2hlcyk7Ci0tIAoyLjE5LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaWd0LWRldg==