From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 57DBD6EA14 for ; Tue, 5 Nov 2019 12:23:36 +0000 (UTC) From: Arkadiusz Hiler Date: Tue, 5 Nov 2019 14:22:58 +0200 Message-ID: <20191105122259.136442-3-arkadiusz.hiler@intel.com> In-Reply-To: <20191105122259.136442-1-arkadiusz.hiler@intel.com> References: <20191105122259.136442-1-arkadiusz.hiler@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 3/4] 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: igt-dev@lists.freedesktop.org List-ID: RnJvbTogQnJpYW4gU3RhcmtleSA8YnJpYW4uc3RhcmtleUBhcm0uY29tPgoKVG8gdXNlIHdyaXRl YmFjayBidWZmZXJzIGFzIGEgQ1JDIHNvdXJjZSwgd2UgbmVlZCB0byBiZSBhYmxlIHRvIGhhc2gK dGhlbS4gSW1wbGVtZW50IGEgc2ltcGxlIEZWQS0xYSBoYXNoaW5nIHJvdXRpbmUgZm9yIHRoaXMg cHVycG9zZS4KCkRvaW5nIGEgYnl0ZXdpc2UgaGFzaCBvbiB0aGUgZnJhbWVidWZmZXIgZGlyZWN0 bHkgY2FuIGJlIHZlcnkgc2xvdyBpZgp0aGUgbWVtb3J5IGlzIG5vbmNhY2hlZC4gQnkgbWFraW5n IGEgY29weSBvZiBlYWNoIGxpbmUgaW4gdGhlIEZCIGZpcnN0Cih3aGljaCBjYW4gdGFrZSBhZHZh bnRhZ2Ugb2Ygd29yZC1hY2Nlc3Mgc3BlZWR1cCksIHdlIGNhbiBkbyB0aGUgaGFzaApvbiBhIGNh Y2hlZCBjb3B5LCB3aGljaCBpcyBtdWNoIGZhc3RlciAoMTB4IHNwZWVkdXAgb24gbXkgcGxhdGZv cm0pLgoKVjY6IFNpbW9uIFNpcgogLSBSZXBsYWNlICNkZWZpbmUgYnkgcGxhaW4gdWludDMyX3Qg dmFyaWFibGVzCiAtIFJldHVybiAtRUlOVkFMIGluIGNhc2UgZmItPm51bV9wbGFuZXMgIT0gMQog LSBEaXJlY3RseSBhc3NpZ24gdGhlIG1tYXAgcmVzdWx0IHRvIHB0cgogLSBObyBuZWVkIHRvIGNv cHkgdGhlIHdob2xlIHN0cmlkZSwganVzdCBjb3B5IGZiLT53aWR0aCAqIGNwcCBzaW5jZQp3ZSdy ZSBvbmx5IGdvaW5nIHRvIHJlYWQgdGhhdAoKdjU6IHVzZSBpZ3RfbWVtY3B5X2Zyb21fd2MoKSBp bnN0ZWFkIG9mIHBsYWluIG1lbWNweSwgYXMgc3VnZ2VzdGVkIGJ5CiAgICBDaHJpcyBXaWxzb24K ClNpZ25lZC1vZmYtYnk6IEJyaWFuIFN0YXJrZXkgPGJyaWFuLnN0YXJrZXlAYXJtLmNvbT4KW3Jl YmFzZWQgYW5kIHVwZGF0ZWQgdG8gdGhlIG1vc3QgcmVjZW50IEFQSV0KU2lnbmVkLW9mZi1ieTog TGl2aXUgRHVkYXUgPGxpdml1LmR1ZGF1QGFybS5jb20+CltyZWJhc2VkIGFuZCB1cGRhdGVkIHRo ZSBwYXRjaCB0byBhZGRyZXNzIGZlZWRiYWNrXQpTaWduZWQtb2ZmLWJ5OiBSb2RyaWdvIFNpcXVl aXJhIDxyb2RyaWdvc2lxdWVpcmFtZWxvQGdtYWlsLmNvbT4KUmV2aWV3ZWQtYnk6IFNpbW9uIFNl ciA8c2ltb24uc2VyQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IExpdml1IER1ZGF1IDxMaXZpdS5E dWRhdUBhcm0uY29tPgotLS0KIGxpYi9pZ3RfZmIuYyB8IDY4ICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGxpYi9pZ3RfZmIuaCB8ICAyICsrCiAy IGZpbGVzIGNoYW5nZWQsIDcwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9saWIvaWd0X2Zi LmMgYi9saWIvaWd0X2ZiLmMKaW5kZXggNGFkY2E5NjcuLjZlMTViZTg2IDEwMDY0NAotLS0gYS9s aWIvaWd0X2ZiLmMKKysrIGIvbGliL2lndF9mYi5jCkBAIC0zNDgxLDYgKzM0ODEsNzQgQEAgYm9v bCBpZ3RfZmJfc3VwcG9ydGVkX2Zvcm1hdCh1aW50MzJfdCBkcm1fZm9ybWF0KQogCXJldHVybiB0 cnVlOwogfQogCisvKgorICogVGhpcyBpbXBsZW1lbnRzIHRoZSBGTlYtMWEgaGFzaGluZyBhbGdv cml0aG0gaW5zdGVhZCBvZiBDUkMsIGZvcgorICogc2ltcGxpY2l0eQorICogaHR0cDovL3d3dy5p c3RoZS5jb20vY2hvbmdvL3RlY2gvY29tcC9mbnYvaW5kZXguaHRtbAorICoKKyAqIGhhc2ggPSBv ZmZzZXRfYmFzaXMKKyAqIGZvciBlYWNoIG9jdGV0X29mX2RhdGEgdG8gYmUgaGFzaGVkCisgKiAg ICAgICAgIGhhc2ggPSBoYXNoIHhvciBvY3RldF9vZl9kYXRhCisgKiAgICAgICAgIGhhc2ggPSBo YXNoICogRk5WX3ByaW1lCisgKiByZXR1cm4gaGFzaAorICoKKyAqIDMyIGJpdCBvZmZzZXRfYmFz aXMgPSAyMTY2MTM2MjYxCisgKiAzMiBiaXQgRk5WX3ByaW1lID0gMjI0ICsgMjggKyAweDkzID0g MTY3Nzc2MTkKKyAqLworaW50IGlndF9mYl9nZXRfY3JjKHN0cnVjdCBpZ3RfZmIgKmZiLCBpZ3Rf Y3JjX3QgKmNyYykKK3sKKwl1aW50MzJfdCBGTlYxYV9PRkZTRVRfQklBUyA9IDIxNjYxMzYyNjE7 CisJdWludDMyX3QgRk5WMWFfUFJJTUUgPSAxNjc3NzYxOTsKKwl1aW50MzJfdCBoYXNoOworCXZv aWQgKm1hcDsKKwljaGFyICpwdHIsICpsaW5lID0gTlVMTDsKKwlpbnQgeCwgeSwgY3BwID0gaWd0 X2RybV9mb3JtYXRfdG9fYnBwKGZiLT5kcm1fZm9ybWF0KSAvIDg7CisJdWludDMyX3Qgc3RyaWRl ID0gY2FsY19wbGFuZV9zdHJpZGUoZmIsIDApOworCisJaWYgKGZiLT5udW1fcGxhbmVzICE9IDEp CisJCXJldHVybiAtRUlOVkFMOworCisJaWYgKGZiLT5pc19kdW1iKQorCQlwdHIgPSBrbXN0ZXN0 X2R1bWJfbWFwX2J1ZmZlcihmYi0+ZmQsIGZiLT5nZW1faGFuZGxlLCBmYi0+c2l6ZSwKKwkJCQkJ ICAgICAgUFJPVF9SRUFEKTsKKwllbHNlCisJCXB0ciA9IGdlbV9tbWFwX19ndHQoZmItPmZkLCBm Yi0+Z2VtX2hhbmRsZSwgZmItPnNpemUsCisJCQkJICAgIFBST1RfUkVBRCk7CisKKwkvKgorCSAq IEZyYW1lYnVmZmVycyBhcmUgb2Z0ZW4gdW5jYWNoZWQsIHdoaWNoIGNhbiBtYWtlIGJ5dGUtd2lz ZSBhY2Nlc3NlcworCSAqIHZlcnkgc2xvdy4gV2UgY29weSBlYWNoIGxpbmUgb2YgdGhlIEZCIGlu dG8gYSBsb2NhbCBidWZmZXIgdG8gc3BlZWQKKwkgKiB1cCB0aGUgaGFzaGluZy4KKwkgKi8KKwls aW5lID0gbWFsbG9jKHN0cmlkZSk7CisJaWYgKCFsaW5lKSB7CisJCW11bm1hcChtYXAsIGZiLT5z aXplKTsKKwkJcmV0dXJuIC1FTk9NRU07CisJfQorCisJaGFzaCA9IEZOVjFhX09GRlNFVF9CSUFT OworCisJZm9yICh5ID0gMDsgeSA8IGZiLT5oZWlnaHQ7IHkrKywgcHRyICs9IHN0cmlkZSkgewor CisJCWlndF9tZW1jcHlfZnJvbV93YyhsaW5lLCBwdHIsIGZiLT53aWR0aCAqIGNwcCk7CisKKwkJ Zm9yICh4ID0gMDsgeCA8IGZiLT53aWR0aCAqIGNwcDsgeCsrKSB7CisJCQloYXNoIF49IGxpbmVb eF07CisJCQloYXNoICo9IEZOVjFhX1BSSU1FOworCQl9CisJfQorCisJY3JjLT5uX3dvcmRzID0g MTsKKwljcmMtPmNyY1swXSA9IGhhc2g7CisKKwlmcmVlKGxpbmUpOworCW11bm1hcChtYXAsIGZi LT5zaXplKTsKKworCXJldHVybiAwOworI3VuZGVmIEZOVjFhX09GRlNFVF9CSUFTCisjdW5kZWYg Rk5WMWFfUFJJTUUKK30KKwogLyoqCiAgKiBpZ3RfZm9ybWF0X2lzX3l1djoKICAqIEBkcm1fZm9y bWF0OiBkcm0gZm91cmNjCmRpZmYgLS1naXQgYS9saWIvaWd0X2ZiLmggYi9saWIvaWd0X2ZiLmgK aW5kZXggNjkxMzJiNDEuLmQyMzk0NjM4IDEwMDY0NAotLS0gYS9saWIvaWd0X2ZiLmgKKysrIGIv bGliL2lndF9mYi5oCkBAIC0yMDIsNSArMjAyLDcgQEAgaW50IGlndF9mb3JtYXRfcGxhbmVfYnBw KHVpbnQzMl90IGRybV9mb3JtYXQsIGludCBwbGFuZSk7CiB2b2lkIGlndF9mb3JtYXRfYXJyYXlf ZmlsbCh1aW50MzJfdCAqKmZvcm1hdHNfYXJyYXksIHVuc2lnbmVkIGludCAqY291bnQsCiAJCQkg ICBib29sIGFsbG93X3l1dik7CiAKK2ludCBpZ3RfZmJfZ2V0X2NyYyhzdHJ1Y3QgaWd0X2ZiICpm YiwgaWd0X2NyY190ICpjcmMpOworCiAjZW5kaWYgLyogX19JR1RfRkJfSF9fICovCiAKLS0gCjIu MjMuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0 LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2