From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id A082E89A16 for ; Tue, 19 Mar 2019 10:15:27 +0000 (UTC) From: =?UTF-8?q?Micha=C5=82=20Winiarski?= Date: Tue, 19 Mar 2019 11:15:10 +0100 Message-ID: <20190319101516.11020-2-michal.winiarski@intel.com> In-Reply-To: <20190319101516.11020-1-michal.winiarski@intel.com> References: <20190319101516.11020-1-michal.winiarski@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [CI 2/8] tests/perf: Simplify generic read/write, use sysfs helpers 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 List-ID: RG9pbmcgdGhpcyBsZXRzIHVzIGF2b2lkIGRybV9nZXRfY2FyZCwgd2hpY2ggd2UgcGxhbiB0byBy ZW1vdmUKZXZlbnR1YWxseS4KCnYyOiBEb24ndCBicmVhayB0aGUgdGVzdAoKU2lnbmVkLW9mZi1i eTogTWljaGHFgiBXaW5pYXJza2kgPG1pY2hhbC53aW5pYXJza2lAaW50ZWwuY29tPgpDYzogQ2hy aXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+ClJldmlld2VkLWJ5OiBDaHJpcyBX aWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KLS0tCiB0ZXN0cy9wZXJmLmMgfCA4NSAr KysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZp bGUgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgNTIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvdGVzdHMvcGVyZi5jIGIvdGVzdHMvcGVyZi5jCmluZGV4IDIyMGM1MmVmLi43YWU0OWViZSAx MDA2NDQKLS0tIGEvdGVzdHMvcGVyZi5jCisrKyBiL3Rlc3RzL3BlcmYuYwpAQCAtMTg1LDcgKzE4 NSw2IEBAIHN0YXRpYyBpbnQgc3lzZnMgPSAtMTsKIHN0YXRpYyBpbnQgcG1fZmQgPSAtMTsKIHN0 YXRpYyBpbnQgc3RyZWFtX2ZkID0gLTE7CiBzdGF0aWMgdWludDMyX3QgZGV2aWQ7Ci1zdGF0aWMg aW50IGNhcmQgPSAtMTsKIHN0YXRpYyBpbnQgbl9ldXM7CiAKIHN0YXRpYyB1aW50NjRfdCB0ZXN0 X21ldHJpY19zZXRfaWQgPSBVSU5UNjRfTUFYOwpAQCAtMjU5LDYzICsyNTgsNDcgQEAgbG9va3Vw X2Zvcm1hdChpbnQgaTkxNV9wZXJmX2ZtdF9pZCkKIAlyZXR1cm4gaTkxNV9wZXJmX2ZtdF9pZDsK IH0KIAotc3RhdGljIGJvb2wKLXRyeV9yZWFkX3U2NF9maWxlKGNvbnN0IGNoYXIgKmZpbGUsIHVp bnQ2NF90ICp2YWwpCi17Ci0JY2hhciBidWZbMzJdOwotCWludCBmZCwgbjsKLQotCWZkID0gb3Bl bihmaWxlLCBPX1JET05MWSk7Ci0JaWYgKGZkIDwgMCkKLQkJcmV0dXJuIGZhbHNlOwotCi0Jd2hp bGUgKChuID0gcmVhZChmZCwgYnVmLCBzaXplb2YoYnVmKSAtIDEpKSA8IDAgJiYgZXJybm8gPT0g RUlOVFIpCi0JCTsKLQlpZ3RfYXNzZXJ0KG4gPj0gMCk7Ci0KLQljbG9zZShmZCk7Ci0KLQlidWZb bl0gPSAnXDAnOwotCSp2YWwgPSBzdHJ0b3VsbChidWYsIE5VTEwsIDApOwotCi0JcmV0dXJuIHRy dWU7Ci19Ci0KIHN0YXRpYyB1aW50NjRfdAotcmVhZF91NjRfZmlsZShjb25zdCBjaGFyICpmaWxl KQorcmVhZF91NjRfZmlsZShjb25zdCBjaGFyICpwYXRoKQogeworCUZJTEUgKmY7CiAJdWludDY0 X3QgdmFsOwogCi0JaWd0X2Fzc2VydF9lcSh0cnlfcmVhZF91NjRfZmlsZShmaWxlLCAmdmFsKSwg dHJ1ZSk7CisJZiA9IGZvcGVuKHBhdGgsICJyIik7CisJaWd0X2Fzc2VydChmKTsKKworCWlndF9h c3NlcnRfZXEoZnNjYW5mKGYsICIlIlBSSXU2NCwgJnZhbCksIDEpOworCisJZmNsb3NlKGYpOwog CiAJcmV0dXJuIHZhbDsKIH0KIAogc3RhdGljIHZvaWQKLXdyaXRlX3U2NF9maWxlKGNvbnN0IGNo YXIgKmZpbGUsIHVpbnQ2NF90IHZhbCkKK3dyaXRlX3U2NF9maWxlKGNvbnN0IGNoYXIgKnBhdGgs IHVpbnQ2NF90IHZhbCkKIHsKLQljaGFyIGJ1ZlszMl07Ci0JaW50IGZkLCBsZW4sIHJldDsKKwlG SUxFICpmOwogCi0JZmQgPSBvcGVuKGZpbGUsIE9fV1JPTkxZKTsKLQlpZ3RfYXNzZXJ0KGZkID49 IDApOworCWYgPSBmb3BlbihwYXRoLCAidyIpOworCWlndF9hc3NlcnQoZik7CiAKLQlsZW4gPSBz bnByaW50ZihidWYsIHNpemVvZihidWYpLCAiJSJQUkl1NjQsIHZhbCk7Ci0JaWd0X2Fzc2VydChs ZW4gPiAwKTsKKwlpZ3RfYXNzZXJ0KGZwcmludGYoZiwgIiUiUFJJdTY0LCB2YWwpID4gMCk7CiAK LQl3aGlsZSAoKHJldCA9IHdyaXRlKGZkLCBidWYsIGxlbikpIDwgMCAmJiBlcnJubyA9PSBFSU5U UikKLQkJOwotCWlndF9hc3NlcnRfZXEocmV0LCBsZW4pOworCWZjbG9zZShmKTsKK30KIAotCWNs b3NlKGZkKTsKK3N0YXRpYyBib29sCit0cnlfc3lzZnNfcmVhZF91NjQoY29uc3QgY2hhciAqcGF0 aCwgdWludDY0X3QgKnZhbCkKK3sKKwlyZXR1cm4gaWd0X3N5c2ZzX3NjYW5mKHN5c2ZzLCBwYXRo LCAiJSJQUkl1NjQsIHZhbCkgPT0gMTsKIH0KIAogc3RhdGljIHVuc2lnbmVkIGxvbmcKLXN5c2Zz X3JlYWQoY29uc3QgY2hhciAqZmlsZSkKK3N5c2ZzX3JlYWQoY29uc3QgY2hhciAqcGF0aCkKIHsK IAl1bnNpZ25lZCBsb25nIHZhbHVlOwogCi0JaWd0X2Fzc2VydChpZ3Rfc3lzZnNfc2NhbmYoc3lz ZnMsIGZpbGUsICIlbHUiLCAmdmFsdWUpID09IDEpOworCWlndF9hc3NlcnQoaWd0X3N5c2ZzX3Nj YW5mKHN5c2ZzLCBwYXRoLCAiJWx1IiwgJnZhbHVlKSA9PSAxKTsKIAogCXJldHVybiB2YWx1ZTsK IH0KQEAgLTg3Niw3ICs4NTksNiBAQCBpbml0X3N5c19pbmZvKHZvaWQpCiAJY29uc3QgY2hhciAq dGVzdF9zZXRfdXVpZCA9IE5VTEw7CiAJY2hhciBidWZbMjU2XTsKIAotCWlndF9hc3NlcnRfbmVx KGNhcmQsIC0xKTsKIAlpZ3RfYXNzZXJ0X25lcShkZXZpZCwgMCk7CiAKIAl0aW1lc3RhbXBfZnJl cXVlbmN5ID0gZ2V0X2NzX3RpbWVzdGFtcF9mcmVxdWVuY3koKTsKQEAgLTk3OSwxMiArOTYxLDkg QEAgaW5pdF9zeXNfaW5mbyh2b2lkKQogCiAJb2FfZXhwXzFfbWlsbGlzZWMgPSBtYXhfb2FfZXhw b25lbnRfZm9yX3BlcmlvZF9sdGUoMTAwMDAwMCk7CiAKLQlzbnByaW50ZihidWYsIHNpemVvZihi dWYpLAotCQkgIi9zeXMvY2xhc3MvZHJtL2NhcmQlZC9tZXRyaWNzLyVzL2lkIiwKLQkJIGNhcmQs Ci0JCSB0ZXN0X3NldF91dWlkKTsKKwlzbnByaW50ZihidWYsIHNpemVvZihidWYpLCAibWV0cmlj cy8lcy9pZCIsIHRlc3Rfc2V0X3V1aWQpOwogCi0JcmV0dXJuIHRyeV9yZWFkX3U2NF9maWxlKGJ1 ZiwgJnRlc3RfbWV0cmljX3NldF9pZCk7CisJcmV0dXJuIHRyeV9zeXNmc19yZWFkX3U2NChidWYs ICZ0ZXN0X21ldHJpY19zZXRfaWQpOwogfQogCiBzdGF0aWMgaW50CkBAIC0zNzM5LDEwICszNzE4 LDEwIEBAIHRlc3RfaW52YWxpZF9yZW1vdmVfdXNlcnNwYWNlX2NvbmZpZyh2b2lkKQogCiAJaWd0 X3JlcXVpcmUoaGFzX2k5MTVfcGVyZl91c2Vyc3BhY2VfY29uZmlnKGRybV9mZCkpOwogCi0Jc25w cmludGYocGF0aCwgc2l6ZW9mKHBhdGgpLCAiL3N5cy9jbGFzcy9kcm0vY2FyZCVkL21ldHJpY3Mv JXMvaWQiLCBjYXJkLCB1dWlkKTsKKwlzbnByaW50ZihwYXRoLCBzaXplb2YocGF0aCksICJtZXRy aWNzLyVzL2lkIiwgdXVpZCk7CiAKIAkvKiBEZXN0cm95IHByZXZpb3VzIGNvbmZpZ3VyYXRpb24g aWYgcHJlc2VudCAqLwotCWlmICh0cnlfcmVhZF91NjRfZmlsZShwYXRoLCAmY29uZmlnX2lkKSkK KwlpZiAodHJ5X3N5c2ZzX3JlYWRfdTY0KHBhdGgsICZjb25maWdfaWQpKQogCQlpOTE1X3BlcmZf cmVtb3ZlX2NvbmZpZyhkcm1fZmQsIGNvbmZpZ19pZCk7CiAKIAltZW1zZXQoJmNvbmZpZywgMCwg c2l6ZW9mKGNvbmZpZykpOwpAQCAtMzc5OSwxMCArMzc3OCwxMCBAQCB0ZXN0X2NyZWF0ZV9kZXN0 cm95X3VzZXJzcGFjZV9jb25maWcodm9pZCkKIAogCWlndF9yZXF1aXJlKGhhc19pOTE1X3BlcmZf dXNlcnNwYWNlX2NvbmZpZyhkcm1fZmQpKTsKIAotCXNucHJpbnRmKHBhdGgsIHNpemVvZihwYXRo KSwgIi9zeXMvY2xhc3MvZHJtL2NhcmQlZC9tZXRyaWNzLyVzL2lkIiwgY2FyZCwgdXVpZCk7CisJ c25wcmludGYocGF0aCwgc2l6ZW9mKHBhdGgpLCAibWV0cmljcy8lcy9pZCIsIHV1aWQpOwogCiAJ LyogRGVzdHJveSBwcmV2aW91cyBjb25maWd1cmF0aW9uIGlmIHByZXNlbnQgKi8KLQlpZiAodHJ5 X3JlYWRfdTY0X2ZpbGUocGF0aCwgJmNvbmZpZ19pZCkpCisJaWYgKHRyeV9zeXNmc19yZWFkX3U2 NChwYXRoLCAmY29uZmlnX2lkKSkKIAkJaTkxNV9wZXJmX3JlbW92ZV9jb25maWcoZHJtX2ZkLCBj b25maWdfaWQpOwogCiAJbWVtc2V0KCZjb25maWcsIDAsIHNpemVvZihjb25maWcpKTsKQEAgLTM4 ODEsOSArMzg2MCw5IEBAIHRlc3Rfd2hpdGVsaXN0ZWRfcmVnaXN0ZXJzX3VzZXJzcGFjZV9jb25m aWcodm9pZCkKIAogCWlndF9yZXF1aXJlKGhhc19pOTE1X3BlcmZfdXNlcnNwYWNlX2NvbmZpZyhk cm1fZmQpKTsKIAotCXNucHJpbnRmKHBhdGgsIHNpemVvZihwYXRoKSwgIi9zeXMvY2xhc3MvZHJt L2NhcmQlZC9tZXRyaWNzLyVzL2lkIiwgY2FyZCwgdXVpZCk7CisJc25wcmludGYocGF0aCwgc2l6 ZW9mKHBhdGgpLCAibWV0cmljcy8lcy9pZCIsIHV1aWQpOwogCi0JaWYgKHRyeV9yZWFkX3U2NF9m aWxlKHBhdGgsICZjb25maWdfaWQpKQorCWlmICh0cnlfc3lzZnNfcmVhZF91NjQocGF0aCwgJmNv bmZpZ19pZCkpCiAJCWk5MTVfcGVyZl9yZW1vdmVfY29uZmlnKGRybV9mZCwgY29uZmlnX2lkKTsK IAogCW1lbXNldCgmY29uZmlnLCAwLCBzaXplb2YoY29uZmlnKSk7CkBAIC00MDM0LDcgKzQwMTMs NyBAQCB0ZXN0X2k5MTVfcmVmX2NvdW50KHZvaWQpCiAKIAlkcm1fZmQgPSBfX2RybV9vcGVuX2Ry aXZlcihEUklWRVJfSU5URUwpOwogCWRldmlkID0gaW50ZWxfZ2V0X2RybV9kZXZpZChkcm1fZmQp OwotCWNhcmQgPSBkcm1fZ2V0X2NhcmQoKTsKKwlzeXNmcyA9IGlndF9zeXNmc19vcGVuKGRybV9m ZCk7CiAKIAkvKiBOb3RlOiB0aGVzZSBnbG9iYWwgdmFyaWFibGVzIGFyZSBvbmx5IGluaXRpYWxp emVkIGFmdGVyIGNhbGxpbmcKIAkgKiBpbml0X3N5c19pbmZvKCkuLi4KQEAgLTQwNTQsNyArNDAz Myw5IEBAIHRlc3RfaTkxNV9yZWZfY291bnQodm9pZCkKIAlpZ3RfYXNzZXJ0KHJlZl9jb3VudDEg PiByZWZfY291bnQwKTsKIAogCWNsb3NlKGRybV9mZCk7CisJY2xvc2Uoc3lzZnMpOwogCWRybV9m ZCA9IC0xOworCXN5c2ZzID0gLTE7CiAJcmVmX2NvdW50MCA9IHJlYWRfaTkxNV9tb2R1bGVfcmVm KCk7CiAJaWd0X2RlYnVnKCJyZWYgY291bnQgYWZ0ZXIgY2xvc2luZyBkcm0gZmQgPSAldVxuIiwg cmVmX2NvdW50MCk7CiAKQEAgLTQxMTEsNyArNDA5Miw3IEBAIGlndF9tYWluCiAJCWlndF9yZXF1 aXJlX2dlbShkcm1fZmQpOwogCiAJCWRldmlkID0gaW50ZWxfZ2V0X2RybV9kZXZpZChkcm1fZmQp OwotCQlzeXNmcyA9IGlndF9zeXNmc19vcGVuKGRybV9mZCwgJmNhcmQpOworCQlzeXNmcyA9IGln dF9zeXNmc19vcGVuKGRybV9mZCwgTlVMTCk7CiAKIAkJaWd0X3JlcXVpcmUoaW5pdF9zeXNfaW5m bygpKTsKIAotLSAKMi4yMC4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1k ZXY=