From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Liviu Dudau Date: Wed, 16 Jan 2019 12:21:47 +0000 Message-Id: <20190116122147.3488-1-liviu.dudau@arm.com> In-Reply-To: <154757805730.30063.1853125668491466900@skylake-alporthouse-com> References: <154757805730.30063.1853125668491466900@skylake-alporthouse-com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v6] lib: Add function to hash a framebuffer 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: Brian Starkey Cc: Boris Brezillon , Petri Latvala , Intel GFX ML , IGT GPU Tools , Daniel Vetter List-ID: RnJvbTogQnJpYW4gU3RhcmtleSA8YnJpYW4uc3RhcmtleUBhcm0uY29tPgoKVG8gdXNlIHdyaXRl YmFjayBidWZmZXJzIGFzIGEgQ1JDIHNvdXJjZSwgd2UgbmVlZCB0byBiZSBhYmxlIHRvIGhhc2gK dGhlbS4gSW1wbGVtZW50IGEgc2ltcGxlIEZWQS0xYSBoYXNoaW5nIHJvdXRpbmUgZm9yIHRoaXMg cHVycG9zZS4KCkRvaW5nIGEgYnl0ZXdpc2UgaGFzaCBvbiB0aGUgZnJhbWVidWZmZXIgZGlyZWN0 bHkgY2FuIGJlIHZlcnkgc2xvdyBpZgp0aGUgbWVtb3J5IGlzIG5vbmNhY2hlZC4gQnkgbWFraW5n IGEgY29weSBvZiBlYWNoIGxpbmUgaW4gdGhlIEZCIGZpcnN0Cih3aGljaCBjYW4gdGFrZSBhZHZh bnRhZ2Ugb2Ygd29yZC1hY2Nlc3Mgc3BlZWR1cCksIHdlIGNhbiBkbyB0aGUgaGFzaApvbiBhIGNh Y2hlZCBjb3B5LCB3aGljaCBpcyBtdWNoIGZhc3RlciAoMTB4IHNwZWVkdXAgb24gbXkgcGxhdGZv cm0pLgoKdjY6IHVzZSBpZ3RfbWVtY3B5X2Zyb21fd2MoKSBpbnN0ZWFkIG9mIHBsYWluIG1lbWNw eSwgYXMgc3VnZ2VzdGVkIGJ5CiAgICBDaHJpcyBXaWxzb24KClNpZ25lZC1vZmYtYnk6IEJyaWFu IFN0YXJrZXkgPGJyaWFuLnN0YXJrZXlAYXJtLmNvbT4KW3JlYmFzZWQgYW5kIHVwZGF0ZWQgdG8g dGhlIG1vc3QgcmVjZW50IEFQSV0KU2lnbmVkLW9mZi1ieTogTGl2aXUgRHVkYXUgPGxpdml1LmR1 ZGF1QGFybS5jb20+Ci0tLQogbGliL2lndF9mYi5jIHwgNjYgKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogbGliL2lndF9mYi5oIHwgIDMgKysrCiAy IGZpbGVzIGNoYW5nZWQsIDY5IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9saWIvaWd0X2Zi LmMgYi9saWIvaWd0X2ZiLmMKaW5kZXggNWNkMTgyOWEzLi4wNDRmZDU3ZGUgMTAwNjQ0Ci0tLSBh L2xpYi9pZ3RfZmIuYworKysgYi9saWIvaWd0X2ZiLmMKQEAgLTIzNzksNiArMjM3OSw3MiBAQCBi b29sIGlndF9mYl9zdXBwb3J0ZWRfZm9ybWF0KHVpbnQzMl90IGRybV9mb3JtYXQpCiAJcmV0dXJu IGZhbHNlOwogfQogCisvKgorICogVGhpcyBpbXBsZW1lbnRzIHRoZSBGTlYtMWEgaGFzaGluZyBh bGdvcml0aG0gaW5zdGVhZCBvZiBDUkMsIGZvcgorICogc2ltcGxpY2l0eQorICogaHR0cDovL3d3 dy5pc3RoZS5jb20vY2hvbmdvL3RlY2gvY29tcC9mbnYvaW5kZXguaHRtbAorICoKKyAqIGhhc2gg PSBvZmZzZXRfYmFzaXMKKyAqIGZvciBlYWNoIG9jdGV0X29mX2RhdGEgdG8gYmUgaGFzaGVkCisg KiAgICAgICAgIGhhc2ggPSBoYXNoIHhvciBvY3RldF9vZl9kYXRhCisgKiAgICAgICAgIGhhc2gg PSBoYXNoICogRk5WX3ByaW1lCisgKiByZXR1cm4gaGFzaAorICoKKyAqIDMyIGJpdCBvZmZzZXRf YmFzaXMgPSAyMTY2MTM2MjYxCisgKiAzMiBiaXQgRk5WX3ByaW1lID0gMjI0ICsgMjggKyAweDkz ID0gMTY3Nzc2MTkKKyAqLworaW50IGlndF9mYl9nZXRfY3JjKHN0cnVjdCBpZ3RfZmIgKmZiLCBp Z3RfY3JjX3QgKmNyYykKK3sKKyNkZWZpbmUgRk5WMWFfT0ZGU0VUX0JJQVMgMjE2NjEzNjI2MQor I2RlZmluZSBGTlYxYV9QUklNRSAxNjc3NzYxOQorCXVpbnQzMl90IGhhc2g7CisJdm9pZCAqbWFw OworCWNoYXIgKnB0ciwgKmxpbmUgPSBOVUxMOworCWludCB4LCB5LCBjcHAgPSBpZ3RfZHJtX2Zv cm1hdF90b19icHAoZmItPmRybV9mb3JtYXQpIC8gODsKKwl1aW50MzJfdCBzdHJpZGUgPSBjYWxj X3BsYW5lX3N0cmlkZShmYiwgMCk7CisKKwlpZiAoZmItPmlzX2R1bWIpCisJCW1hcCA9IGttc3Rl c3RfZHVtYl9tYXBfYnVmZmVyKGZiLT5mZCwgZmItPmdlbV9oYW5kbGUsIGZiLT5zaXplLAorCQkJ CQkgICAgICBQUk9UX1JFQUQpOworCWVsc2UKKwkJbWFwID0gZ2VtX21tYXBfX2d0dChmYi0+ZmQs IGZiLT5nZW1faGFuZGxlLCBmYi0+c2l6ZSwKKwkJCQkgICAgUFJPVF9SRUFEKTsKKwlwdHIgPSBt YXA7CisKKwkvKgorCSAqIEZyYW1lYnVmZmVycyBhcmUgb2Z0ZW4gdW5jYWNoZWQsIHdoaWNoIGNh biBtYWtlIGJ5dGUtd2lzZSBhY2Nlc3NlcworCSAqIHZlcnkgc2xvdy4gV2UgY29weSBlYWNoIGxp bmUgb2YgdGhlIEZCIGludG8gYSBsb2NhbCBidWZmZXIgdG8gc3BlZWQKKwkgKiB1cCB0aGUgaGFz aGluZy4KKwkgKi8KKwlsaW5lID0gbWFsbG9jKHN0cmlkZSk7CisJaWYgKCFsaW5lKSB7CisJCW11 bm1hcChtYXAsIGZiLT5zaXplKTsKKwkJcmV0dXJuIC1FTk9NRU07CisJfQorCisJaGFzaCA9IEZO VjFhX09GRlNFVF9CSUFTOworCisJZm9yICh5ID0gMDsgeSA8IGZiLT5oZWlnaHQ7IHkrKywgcHRy ICs9IHN0cmlkZSkgeworCisJCWlndF9tZW1jcHlfZnJvbV93YyhsaW5lLCBwdHIsIHN0cmlkZSk7 CisKKwkJZm9yICh4ID0gMDsgeCA8IGZiLT53aWR0aCAqIGNwcDsgeCsrKSB7CisJCQloYXNoIF49 IGxpbmVbeF07CisJCQloYXNoICo9IEZOVjFhX1BSSU1FOworCQl9CisJfQorCisJY3JjLT5uX3dv cmRzID0gMTsKKwljcmMtPmNyY1swXSA9IGhhc2g7CisKKwlmcmVlKGxpbmUpOworCW11bm1hcCht YXAsIGZiLT5zaXplKTsKKworCXJldHVybiAwOworI3VuZGVmIEZOVjFhX09GRlNFVF9CSUFTCisj dW5kZWYgRk5WMWFfUFJJTUUKK30KKwogLyoqCiAgKiBpZ3RfZm9ybWF0X2lzX3l1djoKICAqIEBk cm1fZm9ybWF0OiBkcm0gZm91cmNjCmRpZmYgLS1naXQgYS9saWIvaWd0X2ZiLmggYi9saWIvaWd0 X2ZiLmgKaW5kZXggOWYwMjdkZWJhLi45NDhjNTM4MGMgMTAwNjQ0Ci0tLSBhL2xpYi9pZ3RfZmIu aAorKysgYi9saWIvaWd0X2ZiLmgKQEAgLTM3LDYgKzM3LDcgQEAKICNpbmNsdWRlIDxpOTE1X2Ry bS5oPgogCiAjaW5jbHVkZSAiaWd0X2NvbG9yX2VuY29kaW5nLmgiCisjaW5jbHVkZSAiaWd0X2Rl YnVnZnMuaCIKIAogLyoqCiAgKiBpZ3RfZmJfdDoKQEAgLTE3Myw1ICsxNzQsNyBAQCBjb25zdCBj aGFyICppZ3RfZm9ybWF0X3N0cih1aW50MzJfdCBkcm1fZm9ybWF0KTsKIGJvb2wgaWd0X2ZiX3N1 cHBvcnRlZF9mb3JtYXQodWludDMyX3QgZHJtX2Zvcm1hdCk7CiBib29sIGlndF9mb3JtYXRfaXNf eXV2KHVpbnQzMl90IGRybV9mb3JtYXQpOwogCitpbnQgaWd0X2ZiX2dldF9jcmMoc3RydWN0IGln dF9mYiAqZmIsIGlndF9jcmNfdCAqY3JjKTsKKwogI2VuZGlmIC8qIF9fSUdUX0ZCX0hfXyAqLwog Ci0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldgo=