From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sharat Masetty Subject: [PATCH 3/3] drm/msm: Optimize adreno_show_object() Date: Tue, 6 Nov 2018 11:40:06 +0530 Message-ID: <1541484606-20813-3-git-send-email-smasetty@codeaurora.org> References: <1541484606-20813-1-git-send-email-smasetty@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1541484606-20813-1-git-send-email-smasetty-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Sharat Masetty , linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, chris-Y6uKTt2uX1cEflXRtASbqLVCufUGDwFn@public.gmane.org, jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org V2hlbiB0aGUgdXNlcnNwYWNlIHRyaWVzIHRvIHJlYWQgdGhlIGNyYXNoc3RhdGUgZHVtcCwgdGhl IHJlYWQgc2lkZQppbXBsZW1lbnRhdGlvbiBpbiB0aGUgZHJpdmVyIGN1cnJlbnRseSBhc2NpaTg1 IGVuY29kZXMgYWxsIHRoZSBiaW5hcnkKYnVmZmVycyBhbmQgaXQgZG9lcyB0aGlzIGVhY2ggdGlt ZSB0aGUgcmVhZCBzeXN0ZW0gY2FsbCBpcyBjYWxsZWQuCkEgdXNlcnNwYWNlIHRvb2wgbGlrZSBj YXQgdHlwaWNhbGx5IGRvZXMgYSBwYWdlIGJ5IHBhZ2UgcmVhZCBhbmQgdGhlCm51bWJlciBvZiBy ZWFkIGNhbGxzIGRlcGVuZHMgb24gdGhlIHNpemUgb2YgdGhlIGRhdGEgY2FwdHVyZWQgYnkgdGhl CmRyaXZlci4gVGhpcyBpcyBjZXJ0YWlubHkgbm90IGRlc2lyYWJsZSBhbmQgZG9lcyBub3Qgc2Nh bGUgd2VsbCB3aXRoCmxhcmdlIGNhcHR1cmVzLgoKVGhpcyBwYXRjaCBlbmNvZGVzIHRoZSBidWZm ZXIgb25seSBvbmNlIGluIHRoZSByZWFkIHBhdGguIFdpdGggdGhpcyB0aGVyZQppcyBhbiBpbW1l ZGlhdGUgPjEwWCBzcGVlZCBpbXByb3ZlbWVudCBpbiBjcmFzaHN0YXRlIHNhdmUgdGltZS4KClNp Z25lZC1vZmYtYnk6IFNoYXJhdCBNYXNldHR5IDxzbWFzZXR0eUBjb2RlYXVyb3JhLm9yZz4KLS0t CiBkcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmMgfCA3NiArKysrKysrKysr KysrKysrKysrKysrKystLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5oICAg ICAgICAgICB8ICAyICsKIDIgZmlsZXMgY2hhbmdlZCwgNTggaW5zZXJ0aW9ucygrKSwgMjAgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5v X2dwdS5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jCmluZGV4IGM5 MzcwMmQuLmUyOTA5M2UgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2Fk cmVub19ncHUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmMK QEAgLTQ3NSwzNCArNDc1LDcwIEBAIGludCBhZHJlbm9fZ3B1X3N0YXRlX3B1dChzdHJ1Y3QgbXNt X2dwdV9zdGF0ZSAqc3RhdGUpCiAKICNpZiBkZWZpbmVkKENPTkZJR19ERUJVR19GUykgfHwgZGVm aW5lZChDT05GSUdfREVWX0NPUkVEVU1QKQogCi1zdGF0aWMgdm9pZCBhZHJlbm9fc2hvd19vYmpl Y3Qoc3RydWN0IGRybV9wcmludGVyICpwLCB1MzIgKnB0ciwgaW50IGxlbikKK3N0YXRpYyBjaGFy ICphZHJlbm9fZ3B1X2FzY2lpODVfZW5jb2RlKHUzMiAqc3JjLCBzaXplX3QgbGVuKQogewotCWNo YXIgb3V0W0FTQ0lJODVfQlVGU1pdOwotCWxvbmcgbCwgZGF0YWxlbiwgaTsKKwl2b2lkICpidWY7 CisJc2l6ZV90IGJ1Zl9pdHIgPSAwOworCWxvbmcgaSwgbDsKIAotCWlmICghcHRyIHx8ICFsZW4p Ci0JCXJldHVybjsKKwlpZiAoIWxlbikKKwkJcmV0dXJuIE5VTEw7CisKKwlsID0gYXNjaWk4NV9l bmNvZGVfbGVuKGxlbik7CiAKIAkvKgotCSAqIE9ubHkgZHVtcCB0aGUgbm9uLXplcm8gcGFydCBv ZiB0aGUgYnVmZmVyIC0gcmFyZWx5IHdpbGwgYW55IGRhdGEKLQkgKiBjb21wbGV0ZWx5IGZpbGwg dGhlIGVudGlyZSBhbGxvY2F0ZWQgc2l6ZSBvZiB0aGUgYnVmZmVyCisJICogYXNjaWk4NSBvdXRw dXRzIGVpdGhlciBhIDUgYnl0ZSBzdHJpbmcgb3IgYSAxIGJ5dGUgc3RyaW5nLiBTbyB3ZQorCSAq IGFjY291bnQgZm9yIHRoZSB3b3JzdCBjYXNlIG9mIDUgYnl0ZXMgcGVyIGR3b3JkIHBsdXMgdGhl IDEgZm9yICdcMCcKIAkgKi8KLQlmb3IgKGRhdGFsZW4gPSAwLCBpID0gMDsgaSA8IGxlbiA+PiAy OyBpKyspIHsKLQkJaWYgKHB0cltpXSkKLQkJCWRhdGFsZW4gPSAoaSA8PCAyKSArIDE7Ci0JfQor CWJ1ZiA9IGt2bWFsbG9jKChsICogNSkgKyAxLCBHRlBfS0VSTkVMKTsKKwlpZiAoIWJ1ZikKKwkJ cmV0dXJuIE5VTEw7CiAKLQkvKiBTa2lwIHByaW50aW5nIHRoZSBvYmplY3QgaWYgaXQgaXMgZW1w dHkgKi8KLQlpZiAoZGF0YWxlbiA9PSAwKQorCWZvciAoaSA9IDA7IGkgPCBsOyBpKyspCisJCWJ1 Zl9pdHIgKz0gYXNjaWk4NV9lbmNvZGVfdG9fYnVmKHNyY1tpXSwgYnVmICsgYnVmX2l0cik7CisK KwlyZXR1cm4gYnVmOworfQorCisvKiBsZW4gaXMgZXhwZWN0ZWQgdG8gYmUgaW4gYnl0ZXMgKi8K K3N0YXRpYyB2b2lkIGFkcmVub19zaG93X29iamVjdChzdHJ1Y3QgZHJtX3ByaW50ZXIgKnAsIHZv aWQgKipwdHIsIGludCBsZW4sCisJCWJvb2wgKmVuY29kZWQpCit7CisJaWYgKCEqcHRyIHx8ICFs ZW4pCiAJCXJldHVybjsKIAotCWwgPSBhc2NpaTg1X2VuY29kZV9sZW4oZGF0YWxlbik7CisJaWYg KCEqZW5jb2RlZCkgeworCQlsb25nIGRhdGFsZW4sIGk7CisJCXUzMiAqYnVmID0gKnB0cjsKKwor CQkvKgorCQkgKiBPbmx5IGR1bXAgdGhlIG5vbi16ZXJvIHBhcnQgb2YgdGhlIGJ1ZmZlciAtIHJh cmVseSB3aWxsCisJCSAqIGFueSBkYXRhIGNvbXBsZXRlbHkgZmlsbCB0aGUgZW50aXJlIGFsbG9j YXRlZCBzaXplIG9mCisJCSAqIHRoZSBidWZmZXIuCisJCSAqLworCQlmb3IgKGRhdGFsZW4gPSAw LCBpID0gMDsgaSA8IGxlbiA+PiAyOyBpKyspIHsKKwkJCWlmIChidWZbaV0pCisJCQkJZGF0YWxl biA9ICgoaSArIDEpIDw8IDIpOworCQl9CisKKwkJLyoKKwkJICogSWYgd2UgcmVhY2ggaGVyZSwg dGhlbiB0aGUgb3JpZ2luYWxseSBjYXB0dXJlZCBiaW5hcnkgYnVmZmVyCisJCSAqIHdpbGwgYmUg cmVwbGFjZWQgd2l0aCB0aGUgYXNjaWk4NSBlbmNvZGVkIHN0cmluZworCQkgKi8KKwkJKnB0ciA9 IGFkcmVub19ncHVfYXNjaWk4NV9lbmNvZGUoYnVmLCBkYXRhbGVuKTsKKworCQlrdmZyZWUoYnVm KTsKKworCQkqZW5jb2RlZCA9IHRydWU7CisJfQorCisJaWYgKCEqcHRyKQorCQlyZXR1cm47CiAK IAlkcm1fcHV0cyhwLCAiICAgIGRhdGE6ICEhYXNjaWk4NSB8XG4iKTsKIAlkcm1fcHV0cyhwLCAi ICAgICAiKTsKIAotCWZvciAoaSA9IDA7IGkgPCBsOyBpKyspCi0JCWRybV9wdXRzKHAsIGFzY2lp ODVfZW5jb2RlKHB0cltpXSwgb3V0KSk7CisJZHJtX3B1dHMocCwgKnB0cik7CiAKIAlkcm1fcHV0 cyhwLCAiXG4iKTsKIH0KQEAgLTUzNCw4ICs1NzAsOCBAQCB2b2lkIGFkcmVub19zaG93KHN0cnVj dCBtc21fZ3B1ICpncHUsIHN0cnVjdCBtc21fZ3B1X3N0YXRlICpzdGF0ZSwKIAkJZHJtX3ByaW50 ZihwLCAiICAgIHdwdHI6ICVkXG4iLCBzdGF0ZS0+cmluZ1tpXS53cHRyKTsKIAkJZHJtX3ByaW50 ZihwLCAiICAgIHNpemU6ICVkXG4iLCBNU01fR1BVX1JJTkdCVUZGRVJfU1opOwogCi0JCWFkcmVu b19zaG93X29iamVjdChwLCBzdGF0ZS0+cmluZ1tpXS5kYXRhLAotCQkJc3RhdGUtPnJpbmdbaV0u ZGF0YV9zaXplKTsKKwkJYWRyZW5vX3Nob3dfb2JqZWN0KHAsICZzdGF0ZS0+cmluZ1tpXS5kYXRh LAorCQkJc3RhdGUtPnJpbmdbaV0uZGF0YV9zaXplLCAmc3RhdGUtPnJpbmdbaV0uZW5jb2RlZCk7 CiAJfQogCiAJaWYgKHN0YXRlLT5ib3MpIHsKQEAgLTU0Niw4ICs1ODIsOCBAQCB2b2lkIGFkcmVu b19zaG93KHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBtc21fZ3B1X3N0YXRlICpzdGF0ZSwK IAkJCQlzdGF0ZS0+Ym9zW2ldLmlvdmEpOwogCQkJZHJtX3ByaW50ZihwLCAiICAgIHNpemU6ICV6 ZFxuIiwgc3RhdGUtPmJvc1tpXS5zaXplKTsKIAotCQkJYWRyZW5vX3Nob3dfb2JqZWN0KHAsIHN0 YXRlLT5ib3NbaV0uZGF0YSwKLQkJCQlzdGF0ZS0+Ym9zW2ldLnNpemUpOworCQkJYWRyZW5vX3No b3dfb2JqZWN0KHAsICZzdGF0ZS0+Ym9zW2ldLmRhdGEsCisJCQkJc3RhdGUtPmJvc1tpXS5zaXpl LCAmc3RhdGUtPmJvc1tpXS5lbmNvZGVkKTsKIAkJfQogCX0KIApkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL21zbS9tc21fZ3B1LmggYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaApp bmRleCBmODJiYWMwLi5lZmI0OWJiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21z bV9ncHUuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaApAQCAtMTg3LDYgKzE4 Nyw3IEBAIHN0cnVjdCBtc21fZ3B1X3N0YXRlX2JvIHsKIAl1NjQgaW92YTsKIAlzaXplX3Qgc2l6 ZTsKIAl2b2lkICpkYXRhOworCWJvb2wgZW5jb2RlZDsKIH07CiAKIHN0cnVjdCBtc21fZ3B1X3N0 YXRlIHsKQEAgLTIwMSw2ICsyMDIsNyBAQCBzdHJ1Y3QgbXNtX2dwdV9zdGF0ZSB7CiAJCXUzMiB3 cHRyOwogCQl2b2lkICpkYXRhOwogCQlpbnQgZGF0YV9zaXplOworCQlib29sIGVuY29kZWQ7CiAJ fSByaW5nW01TTV9HUFVfTUFYX1JJTkdTXTsKIAogCWludCBucl9yZWdpc3RlcnM7Ci0tIAoxLjku MQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRnJlZWRy ZW5vIG1haWxpbmcgbGlzdApGcmVlZHJlbm9AbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZnJlZWRyZW5vCg==