From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 16E8E896DD for ; Fri, 25 Oct 2019 14:30:56 +0000 (UTC) From: Ville Syrjala Date: Fri, 25 Oct 2019 17:30:48 +0300 Message-Id: <20191025143050.18205-2-ville.syrjala@linux.intel.com> In-Reply-To: <20191025143050.18205-1-ville.syrjala@linux.intel.com> References: <20191025143050.18205-1-ville.syrjala@linux.intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 2/4] lib/igt_fb: Declare format conversions explicitly 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: RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCklu c3RlYWQgb2YgZGVkdWNpbmcgdGhlIGNvbnZlcnNpb24gY2Fpcm8gZm9ybWF0IGZyb20gdGhlCmRy bV9mb3JtYXQgdXNpbmcgcG90ZW50aWFsbHkgZnJhZ2lsZSBjb2RlIGxldCdzIGp1c3QgZGVjbGFy ZQp0aGUgYXBwcm9wcmlhdGUgY2Fpcm8gZm9ybWF0LCBhbmQgb3VyIG5lZWQgdG8gdXNlIGNvbnZl cnNpb24sCmV4cGxpY2l0bHkuCgpXZSBhcmUgbGVmdCB3aXRoIG9uZSBzcGVjaWFsIGNhc2U6IENB SVJPX0ZPUk1BVF9SR0I5NkYKZm9yIHdoaWNoIHdlIGhhdmVuJ3QgZGVmaW5lZCBhIGZha2UgZHJt IGZvcm1hdCwgYW5kIHNvIG5lZWQKdG8ga2VlcCBwcmV0ZW5kaW5nIHRoYXQgaXQncyB0aGUgc2Ft ZSBhcyBDQUlST19GT1JNQVRfUkdCQTEyOEYKClNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzD pCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogbGliL2lndF9mYi5jIHwgMTM3 ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBm aWxlIGNoYW5nZWQsIDYwIGluc2VydGlvbnMoKyksIDc3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2xpYi9pZ3RfZmIuYyBiL2xpYi9pZ3RfZmIuYwppbmRleCA4NzIyOGNjYTc5MzYuLjllZDUz ZDA1NjczNSAxMDA2NDQKLS0tIGEvbGliL2lndF9mYi5jCisrKyBiL2xpYi9pZ3RfZmIuYwpAQCAt MTAzLDIxICsxMDMsMjIgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBmb3JtYXRfZGVzY19zdHJ1Y3Qg ewogCWludCBwbGFuZV9icHBbNF07CiAJdWludDhfdCBoc3ViOwogCXVpbnQ4X3QgdnN1YjsKKwli b29sIGNvbnZlcnQ7CiB9IGZvcm1hdF9kZXNjW10gPSB7CiAJeyAubmFtZSA9ICJBUkdCMTU1NSIs IC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9BUkdCMTU1NSwKLQkgIC5jYWlyb19p ZCA9IENBSVJPX0ZPUk1BVF9JTlZBTElELAorCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX0FS R0IzMiwgLmNvbnZlcnQgPSB0cnVlLAogCSAgLnBpeG1hbl9pZCA9IFBJWE1BTl9hMXI1ZzViNSwK IAkgIC5udW1fcGxhbmVzID0gMSwgLnBsYW5lX2JwcCA9IHsgMTYsIH0sCiAJICAuaHN1YiA9IDEs IC52c3ViID0gMSwKIAl9LAogCXsgLm5hbWUgPSAiQzgiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9 IERSTV9GT1JNQVRfQzgsCi0JICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfSU5WQUxJRCwKKwkg IC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0IyNCwgLmNvbnZlcnQgPSB0cnVlLAogCSAgLnBp eG1hbl9pZCA9IFBJWE1BTl9yM2czYjIsCiAJICAubnVtX3BsYW5lcyA9IDEsIC5wbGFuZV9icHAg PSB7IDgsIH0sCiAJICAuaHN1YiA9IDEsIC52c3ViID0gMSwKIAl9LAogCXsgLm5hbWUgPSAiWFJH QjE1NTUiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfWFJHQjE1NTUsCi0JICAu Y2Fpcm9faWQgPSBDQUlST19GT1JNQVRfSU5WQUxJRCwKKwkgIC5jYWlyb19pZCA9IENBSVJPX0ZP Uk1BVF9SR0IyNCwgLmNvbnZlcnQgPSB0cnVlLAogCSAgLnBpeG1hbl9pZCA9IFBJWE1BTl94MXI1 ZzViNSwKIAkgIC5udW1fcGxhbmVzID0gMSwgLnBsYW5lX2JwcCA9IHsgMTYsIH0sCiAJICAuaHN1 YiA9IDEsIC52c3ViID0gMSwKQEAgLTEyOSwyNSArMTMwLDI1IEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgZm9ybWF0X2Rlc2Nfc3RydWN0IHsKIAkgIC5oc3ViID0gMSwgLnZzdWIgPSAxLAogCX0sCiAJ eyAubmFtZSA9ICJCR1I1NjUiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfQkdS NTY1LAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX0lOVkFMSUQsCisJICAuY2Fpcm9faWQg PSBDQUlST19GT1JNQVRfUkdCMTZfNTY1LCAuY29udmVydCA9IHRydWUsCiAJICAucGl4bWFuX2lk ID0gUElYTUFOX2I1ZzZyNSwKIAkgIC5udW1fcGxhbmVzID0gMSwgLnBsYW5lX2JwcCA9IHsgMTYs IH0sCiAJICAuaHN1YiA9IDEsIC52c3ViID0gMSwKIAl9LAogCXsgLm5hbWUgPSAiQkdSODg4Iiwg LmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFUX0JHUjg4OCwKLQkgIC5jYWlyb19pZCA9 IENBSVJPX0ZPUk1BVF9JTlZBTElELAorCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjI0 LCAuY29udmVydCA9IHRydWUsCiAJICAucGl4bWFuX2lkID0gUElYTUFOX2I4ZzhyOCwKIAkgIC5u dW1fcGxhbmVzID0gMSwgLnBsYW5lX2JwcCA9IHsgMjQsIH0sCiAJICAuaHN1YiA9IDEsIC52c3Vi ID0gMSwKIAl9LAogCXsgLm5hbWUgPSAiUkdCODg4IiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBE Uk1fRk9STUFUX1JHQjg4OCwKLQkgIC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9JTlZBTElELAor CSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjI0LCAuY29udmVydCA9IHRydWUsCiAJICAu cGl4bWFuX2lkID0gUElYTUFOX3I4ZzhiOCwKIAkgIC5udW1fcGxhbmVzID0gMSwgLnBsYW5lX2Jw cCA9IHsgMjQsIH0sCiAJICAuaHN1YiA9IDEsIC52c3ViID0gMSwKIAl9LAogCXsgLm5hbWUgPSAi WFlVVjg4ODgiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfWFlVVjg4ODgsCi0J ICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCMjQsCisJICAuY2Fpcm9faWQgPSBDQUlST19G T1JNQVRfUkdCMjQsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVzID0gMSwgLnBsYW5l X2JwcCA9IHsgMzIsIH0sCiAJICAuaHN1YiA9IDEsIC52c3ViID0gMSwKIAl9LApAQCAtMTU4LDcg KzE1OSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZm9ybWF0X2Rlc2Nfc3RydWN0IHsKIAkgIC5o c3ViID0gMSwgLnZzdWIgPSAxLAogCX0sCiAJeyAubmFtZSA9ICJYQkdSODg4OCIsIC5kZXB0aCA9 IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9YQkdSODg4OCwKLQkgIC5jYWlyb19pZCA9IENBSVJP X0ZPUk1BVF9JTlZBTElELAorCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjI0LCAuY29u dmVydCA9IHRydWUsCiAJICAucGl4bWFuX2lkID0gUElYTUFOX3g4YjhnOHI4LAogCSAgLm51bV9w bGFuZXMgPSAxLCAucGxhbmVfYnBwID0geyAzMiwgfSwKIAkgIC5oc3ViID0gMSwgLnZzdWIgPSAx LApAQCAtMTcwLDcgKzE3MSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZm9ybWF0X2Rlc2Nfc3Ry dWN0IHsKIAkgIC5oc3ViID0gMSwgLnZzdWIgPSAxLAogCX0sCiAJeyAubmFtZSA9ICJYQkdSMjEw MTAxMCIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9YQkdSMjEwMTAxMCwKLQkg IC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9JTlZBTElELAorCSAgLmNhaXJvX2lkID0gQ0FJUk9f Rk9STUFUX1JHQjMwLCAuY29udmVydCA9IHRydWUsCiAJICAucGl4bWFuX2lkID0gUElYTUFOX3gy YjEwZzEwcjEwLAogCSAgLm51bV9wbGFuZXMgPSAxLCAucGxhbmVfYnBwID0geyAzMiwgfSwKIAkg IC5oc3ViID0gMSwgLnZzdWIgPSAxLApAQCAtMTgyLDE2MSArMTgzLDE2MSBAQCBzdGF0aWMgY29u c3Qgc3RydWN0IGZvcm1hdF9kZXNjX3N0cnVjdCB7CiAJICAuaHN1YiA9IDEsIC52c3ViID0gMSwK IAl9LAogCXsgLm5hbWUgPSAiQUJHUjg4ODgiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9G T1JNQVRfQUJHUjg4ODgsCi0JICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfSU5WQUxJRCwKKwkg IC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9BUkdCMzIsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5w aXhtYW5faWQgPSBQSVhNQU5fYThiOGc4cjgsCiAJICAubnVtX3BsYW5lcyA9IDEsIC5wbGFuZV9i cHAgPSB7IDMyLCB9LAogCSAgLmhzdWIgPSAxLCAudnN1YiA9IDEsCiAJfSwKIAl7IC5uYW1lID0g IkFSR0IyMTAxMDEwIiwgLmRlcHRoID0gMzAsIC5kcm1faWQgPSBEUk1fRk9STUFUX0FSR0IyMTAx MDEwLAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX0lOVkFMSUQsCisJICAuY2Fpcm9faWQg PSBDQUlST19GT1JNQVRfUkdCQTEyOEYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5waXhtYW5faWQg PSBQSVhNQU5fYTJyMTBnMTBiMTAsCiAJICAubnVtX3BsYW5lcyA9IDEsIC5wbGFuZV9icHAgPSB7 IDMyLCB9LAogCSAgLmhzdWIgPSAxLCAudnN1YiA9IDEsCiAJfSwKIAl7IC5uYW1lID0gIkFCR1Iy MTAxMDEwIiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFUX0FCR1IyMTAxMDEwLAot CSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX0lOVkFMSUQsCisJICAuY2Fpcm9faWQgPSBDQUlS T19GT1JNQVRfUkdCQTEyOEYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5waXhtYW5faWQgPSBQSVhN QU5fYTJiMTBnMTByMTAsCiAJICAubnVtX3BsYW5lcyA9IDEsIC5wbGFuZV9icHAgPSB7IDMyLCB9 LAogCSAgLmhzdWIgPSAxLCAudnN1YiA9IDEsCiAJfSwKIAl7IC5uYW1lID0gIlhSR0IxNjE2MTYx NkYiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfWFJHQjE2MTYxNjE2RiwKLQkg IC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0JBMTI4RiwKKwkgIC5jYWlyb19pZCA9IENBSVJP X0ZPUk1BVF9SR0JBMTI4RiwgLmNvbnZlcnQgPSB0cnVlLAogCSAgLm51bV9wbGFuZXMgPSAxLCAu cGxhbmVfYnBwID0geyA2NCwgfSwKIAl9LAogCXsgLm5hbWUgPSAiQVJHQjE2MTYxNjE2RiIsIC5k ZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9BUkdCMTYxNjE2MTZGLAotCSAgLmNhaXJv X2lkID0gQ0FJUk9fRk9STUFUX1JHQkExMjhGLAorCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFU X1JHQkExMjhGLCAuY29udmVydCA9IHRydWUsCiAJICAubnVtX3BsYW5lcyA9IDEsIC5wbGFuZV9i cHAgPSB7IDY0LCB9LAogCX0sCiAJeyAubmFtZSA9ICJYQkdSMTYxNjE2MTZGIiwgLmRlcHRoID0g LTEsIC5kcm1faWQgPSBEUk1fRk9STUFUX1hCR1IxNjE2MTYxNkYsCi0JICAuY2Fpcm9faWQgPSBD QUlST19GT1JNQVRfUkdCQTEyOEYsCisJICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCQTEy OEYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVzID0gMSwgLnBsYW5lX2JwcCA9IHsg NjQsIH0sCiAJfSwKIAl7IC5uYW1lID0gIkFCR1IxNjE2MTYxNkYiLCAuZGVwdGggPSAtMSwgLmRy bV9pZCA9IERSTV9GT1JNQVRfQUJHUjE2MTYxNjE2RiwKLQkgIC5jYWlyb19pZCA9IENBSVJPX0ZP Uk1BVF9SR0JBMTI4RiwKKwkgIC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0JBMTI4RiwgLmNv bnZlcnQgPSB0cnVlLAogCSAgLm51bV9wbGFuZXMgPSAxLCAucGxhbmVfYnBwID0geyA2NCwgfSwK IAl9LAogCXsgLm5hbWUgPSAiTlYxMiIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1B VF9OVjEyLAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjI0LAorCSAgLmNhaXJvX2lk ID0gQ0FJUk9fRk9STUFUX1JHQjI0LCAuY29udmVydCA9IHRydWUsCiAJICAubnVtX3BsYW5lcyA9 IDIsIC5wbGFuZV9icHAgPSB7IDgsIDE2LCB9LAogCSAgLmhzdWIgPSAyLCAudnN1YiA9IDIsCiAJ fSwKIAl7IC5uYW1lID0gIk5WMTYiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRf TlYxNiwKLQkgIC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0IyNCwKKwkgIC5jYWlyb19pZCA9 IENBSVJPX0ZPUk1BVF9SR0IyNCwgLmNvbnZlcnQgPSB0cnVlLAogCSAgLm51bV9wbGFuZXMgPSAy LCAucGxhbmVfYnBwID0geyA4LCAxNiwgfSwKIAkgIC5oc3ViID0gMiwgLnZzdWIgPSAxLAogCX0s CiAJeyAubmFtZSA9ICJOVjIxIiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFUX05W MjEsCi0JICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCMjQsCisJICAuY2Fpcm9faWQgPSBD QUlST19GT1JNQVRfUkdCMjQsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVzID0gMiwg LnBsYW5lX2JwcCA9IHsgOCwgMTYsIH0sCiAJICAuaHN1YiA9IDIsIC52c3ViID0gMiwKIAl9LAog CXsgLm5hbWUgPSAiTlY2MSIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9OVjYx LAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjI0LAorCSAgLmNhaXJvX2lkID0gQ0FJ Uk9fRk9STUFUX1JHQjI0LCAuY29udmVydCA9IHRydWUsCiAJICAubnVtX3BsYW5lcyA9IDIsIC5w bGFuZV9icHAgPSB7IDgsIDE2LCB9LAogCSAgLmhzdWIgPSAyLCAudnN1YiA9IDEsCiAJfSwKIAl7 IC5uYW1lID0gIllVWVYiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfWVVZViwK LQkgIC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0IyNCwKKwkgIC5jYWlyb19pZCA9IENBSVJP X0ZPUk1BVF9SR0IyNCwgLmNvbnZlcnQgPSB0cnVlLAogCSAgLm51bV9wbGFuZXMgPSAxLCAucGxh bmVfYnBwID0geyAxNiwgfSwKIAkgIC5oc3ViID0gMiwgLnZzdWIgPSAxLAogCX0sCiAJeyAubmFt ZSA9ICJZVllVIiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFUX1lWWVUsCi0JICAu Y2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCMjQsCisJICAuY2Fpcm9faWQgPSBDQUlST19GT1JN QVRfUkdCMjQsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVzID0gMSwgLnBsYW5lX2Jw cCA9IHsgMTYsIH0sCiAJICAuaHN1YiA9IDIsIC52c3ViID0gMSwKIAl9LAogCXsgLm5hbWUgPSAi VVlWWSIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9VWVZZLAotCSAgLmNhaXJv X2lkID0gQ0FJUk9fRk9STUFUX1JHQjI0LAorCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JH QjI0LCAuY29udmVydCA9IHRydWUsCiAJICAubnVtX3BsYW5lcyA9IDEsIC5wbGFuZV9icHAgPSB7 IDE2LCB9LAogCSAgLmhzdWIgPSAyLCAudnN1YiA9IDEsCiAJfSwKIAl7IC5uYW1lID0gIlZZVVki LCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfVllVWSwKLQkgIC5jYWlyb19pZCA9 IENBSVJPX0ZPUk1BVF9SR0IyNCwKKwkgIC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0IyNCwg LmNvbnZlcnQgPSB0cnVlLAogCSAgLm51bV9wbGFuZXMgPSAxLCAucGxhbmVfYnBwID0geyAxNiwg fSwKIAkgIC5oc3ViID0gMiwgLnZzdWIgPSAxLAogCX0sCiAJeyAubmFtZSA9ICJZVTEyIiwgLmRl cHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFUX1lVVjQyMCwKLQkgIC5jYWlyb19pZCA9IENB SVJPX0ZPUk1BVF9SR0IyNCwKKwkgIC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0IyNCwgLmNv bnZlcnQgPSB0cnVlLAogCSAgLm51bV9wbGFuZXMgPSAzLCAucGxhbmVfYnBwID0geyA4LCA4LCA4 LCB9LAogCSAgLmhzdWIgPSAyLCAudnN1YiA9IDIsCiAJfSwKIAl7IC5uYW1lID0gIllVMTYiLCAu ZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfWVVWNDIyLAotCSAgLmNhaXJvX2lkID0g Q0FJUk9fRk9STUFUX1JHQjI0LAorCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjI0LCAu Y29udmVydCA9IHRydWUsCiAJICAubnVtX3BsYW5lcyA9IDMsIC5wbGFuZV9icHAgPSB7IDgsIDgs IDgsIH0sCiAJICAuaHN1YiA9IDIsIC52c3ViID0gMSwKIAl9LAogCXsgLm5hbWUgPSAiWVYxMiIs IC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9ZVlU0MjAsCi0JICAuY2Fpcm9faWQg PSBDQUlST19GT1JNQVRfUkdCMjQsCisJICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCMjQs IC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVzID0gMywgLnBsYW5lX2JwcCA9IHsgOCwg OCwgOCwgfSwKIAkgIC5oc3ViID0gMiwgLnZzdWIgPSAyLAogCX0sCiAJeyAubmFtZSA9ICJZVjE2 IiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFUX1lWVTQyMiwKLQkgIC5jYWlyb19p ZCA9IENBSVJPX0ZPUk1BVF9SR0IyNCwKKwkgIC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0Iy NCwgLmNvbnZlcnQgPSB0cnVlLAogCSAgLm51bV9wbGFuZXMgPSAzLCAucGxhbmVfYnBwID0geyA4 LCA4LCA4LCB9LAogCSAgLmhzdWIgPSAyLCAudnN1YiA9IDEsCiAJfSwKIAl7IC5uYW1lID0gIlk0 MTAiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfWTQxMCwKLQkgIC5jYWlyb19p ZCA9IENBSVJPX0ZPUk1BVF9SR0JBMTI4RiwKKwkgIC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9S R0JBMTI4RiwgLmNvbnZlcnQgPSB0cnVlLAogCSAgLm51bV9wbGFuZXMgPSAxLCAucGxhbmVfYnBw ID0geyAzMiwgfSwKIAkgIC5oc3ViID0gMSwgLnZzdWIgPSAxLAogCX0sCiAJeyAubmFtZSA9ICJZ NDEyIiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFUX1k0MTIsCi0JICAuY2Fpcm9f aWQgPSBDQUlST19GT1JNQVRfUkdCQTEyOEYsCisJICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRf UkdCQTEyOEYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVzID0gMSwgLnBsYW5lX2Jw cCA9IHsgNjQsIH0sCiAJICAuaHN1YiA9IDEsIC52c3ViID0gMSwKIAl9LAogCXsgLm5hbWUgPSAi WTQxNiIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9ZNDE2LAotCSAgLmNhaXJv X2lkID0gQ0FJUk9fRk9STUFUX1JHQkExMjhGLAorCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFU X1JHQkExMjhGLCAuY29udmVydCA9IHRydWUsCiAJICAubnVtX3BsYW5lcyA9IDEsIC5wbGFuZV9i cHAgPSB7IDY0LCB9LAogCSAgLmhzdWIgPSAxLCAudnN1YiA9IDEsCiAJfSwKIAl7IC5uYW1lID0g IlhWMzAiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfWFZZVTIxMDEwMTAsCi0J ICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCOTZGLAorCSAgLmNhaXJvX2lkID0gQ0FJUk9f Rk9STUFUX1JHQjk2RiwgLmNvbnZlcnQgPSB0cnVlLAogCSAgLm51bV9wbGFuZXMgPSAxLCAucGxh bmVfYnBwID0geyAzMiwgfSwKIAkgIC5oc3ViID0gMSwgLnZzdWIgPSAxLAogCX0sCiAJeyAubmFt ZSA9ICJYVjM2IiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFUX1hWWVUxMl8xNjE2 MTYxNiwKLQkgIC5jYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0I5NkYsCisJICAuY2Fpcm9faWQg PSBDQUlST19GT1JNQVRfUkdCOTZGLCAuY29udmVydCA9IHRydWUsCiAJICAubnVtX3BsYW5lcyA9 IDEsIC5wbGFuZV9icHAgPSB7IDY0LCB9LAogCSAgLmhzdWIgPSAxLCAudnN1YiA9IDEsCiAJfSwK IAl7IC5uYW1lID0gIlhWNDgiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfWFZZ VTE2MTYxNjE2LAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjk2RiwKKwkgIC5jYWly b19pZCA9IENBSVJPX0ZPUk1BVF9SR0I5NkYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxh bmVzID0gMSwgLnBsYW5lX2JwcCA9IHsgNjQsIH0sCiAJICAuaHN1YiA9IDEsIC52c3ViID0gMSwK IAl9LAogCXsgLm5hbWUgPSAiUDAxMCIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1B VF9QMDEwLAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjk2RiwKKwkgIC5jYWlyb19p ZCA9IENBSVJPX0ZPUk1BVF9SR0I5NkYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVz ID0gMiwgLnBsYW5lX2JwcCA9IHsgMTYsIDMyIH0sCiAJICAudnN1YiA9IDIsIC5oc3ViID0gMiwK IAl9LAogCXsgLm5hbWUgPSAiUDAxMiIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1B VF9QMDEyLAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjk2RiwKKwkgIC5jYWlyb19p ZCA9IENBSVJPX0ZPUk1BVF9SR0I5NkYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVz ID0gMiwgLnBsYW5lX2JwcCA9IHsgMTYsIDMyIH0sCiAJICAudnN1YiA9IDIsIC5oc3ViID0gMiwK IAl9LAogCXsgLm5hbWUgPSAiUDAxNiIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1B VF9QMDE2LAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjk2RiwKKwkgIC5jYWlyb19p ZCA9IENBSVJPX0ZPUk1BVF9SR0I5NkYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVz ID0gMiwgLnBsYW5lX2JwcCA9IHsgMTYsIDMyIH0sCiAJICAudnN1YiA9IDIsIC5oc3ViID0gMiwK IAl9LAogCXsgLm5hbWUgPSAiWTIxMCIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1B VF9ZMjEwLAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjk2RiwKKwkgIC5jYWlyb19p ZCA9IENBSVJPX0ZPUk1BVF9SR0I5NkYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVz ID0gMSwgLnBsYW5lX2JwcCA9IHsgMzIsIH0sCiAJICAuaHN1YiA9IDIsIC52c3ViID0gMSwKIAl9 LAogCXsgLm5hbWUgPSAiWTIxMiIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9Z MjEyLAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjk2RiwKKwkgIC5jYWlyb19pZCA9 IENBSVJPX0ZPUk1BVF9SR0I5NkYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVzID0g MSwgLnBsYW5lX2JwcCA9IHsgMzIsIH0sCiAJICAuaHN1YiA9IDIsIC52c3ViID0gMSwKIAl9LAog CXsgLm5hbWUgPSAiWTIxNiIsIC5kZXB0aCA9IC0xLCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9ZMjE2 LAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjk2RiwKKwkgIC5jYWlyb19pZCA9IENB SVJPX0ZPUk1BVF9SR0I5NkYsIC5jb252ZXJ0ID0gdHJ1ZSwKIAkgIC5udW1fcGxhbmVzID0gMSwg LnBsYW5lX2JwcCA9IHsgMzIsIH0sCiAJICAuaHN1YiA9IDIsIC52c3ViID0gMSwKIAl9LAogCXsg Lm5hbWUgPSAiSUdULUZMT0FUIiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBJR1RfRk9STUFUX0ZM T0FULAotCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX0lOVkFMSUQsCisJICAuY2Fpcm9faWQg PSBDQUlST19GT1JNQVRfUkdCQTEyOEYsCiAJICAucGl4bWFuX2lkID0gUElYTUFOX3JnYmFfZmxv YXQsCiAJICAubnVtX3BsYW5lcyA9IDEsIC5wbGFuZV9icHAgPSB7IDEyOCB9LAogCX0sCkBAIC0x ODE3LDYgKzE4MTgsMjEgQEAgc3RhdGljIGNhaXJvX2Zvcm1hdF90IGRybV9mb3JtYXRfdG9fY2Fp cm8odWludDMyX3QgZHJtX2Zvcm1hdCkKIAkJICAgICBkcm1fZm9ybWF0LCBpZ3RfZm9ybWF0X3N0 cihkcm1fZm9ybWF0KSk7CiB9CiAKK3N0YXRpYyB1aW50MzJfdCBjYWlyb19mb3JtYXRfdG9fZHJt X2Zvcm1hdChjYWlyb19mb3JtYXRfdCBjYWlyb19mb3JtYXQpCit7CisJY29uc3Qgc3RydWN0IGZv cm1hdF9kZXNjX3N0cnVjdCAqZjsKKworCWlmIChjYWlyb19mb3JtYXQgPT0gQ0FJUk9fRk9STUFU X1JHQjk2RikKKwkJY2Fpcm9fZm9ybWF0ID0gQ0FJUk9fRk9STUFUX1JHQkExMjhGOworCisJZm9y X2VhY2hfZm9ybWF0KGYpCisJCWlmIChmLT5jYWlyb19pZCA9PSBjYWlyb19mb3JtYXQgJiYgIWYt PmNvbnZlcnQpCisJCQlyZXR1cm4gZi0+ZHJtX2lkOworCisJaWd0X2Fzc2VydF9mKDAsICJjYW4n dCBmaW5kIGEgZHJtIGZvcm1hdCBmb3IgY2Fpcm8gZm9ybWF0ICV1XG4iLAorCQkgICAgIGNhaXJv X2Zvcm1hdCk7Cit9CisKIHN0cnVjdCBmYl9ibGl0X2xpbmVhciB7CiAJc3RydWN0IGlndF9mYiBm YjsKIAl1aW50OF90ICptYXA7CkBAIC0zMTE4LDM3ICszMTM0LDcgQEAgc3RhdGljIHZvaWQgY3Jl YXRlX2NhaXJvX3N1cmZhY2VfX2NvbnZlcnQoaW50IGZkLCBzdHJ1Y3QgaWd0X2ZiICpmYikKIAlz dHJ1Y3QgZmJfY29udmVydF9ibGl0X3VwbG9hZCAqYmxpdCA9IGNhbGxvYygxLCBzaXplb2YoKmJs aXQpKTsKIAlzdHJ1Y3QgZmJfY29udmVydCBjdnQgPSB7IH07CiAJY29uc3Qgc3RydWN0IGZvcm1h dF9kZXNjX3N0cnVjdCAqZiA9IGxvb2t1cF9kcm1fZm9ybWF0KGZiLT5kcm1fZm9ybWF0KTsKLQl1 bnNpZ25lZCBkcm1fZm9ybWF0OwotCWNhaXJvX2Zvcm1hdF90IGNhaXJvX2lkOwotCi0JaWYgKGYt PmNhaXJvX2lkICE9IENBSVJPX0ZPUk1BVF9JTlZBTElEKSB7Ci0JCWNhaXJvX2lkID0gZi0+Y2Fp cm9faWQ7Ci0KLQkJc3dpdGNoIChmLT5jYWlyb19pZCkgewotCQljYXNlIENBSVJPX0ZPUk1BVF9S R0I5NkY6Ci0JCWNhc2UgQ0FJUk9fRk9STUFUX1JHQkExMjhGOgotCQkJZHJtX2Zvcm1hdCA9IElH VF9GT1JNQVRfRkxPQVQ7Ci0JCQlicmVhazsKLQkJY2FzZSBDQUlST19GT1JNQVRfUkdCMjQ6Ci0J CQlkcm1fZm9ybWF0ID0gRFJNX0ZPUk1BVF9YUkdCODg4ODsKLQkJCWJyZWFrOwotCQlkZWZhdWx0 OgotCQkJaWd0X2Fzc2VydF9mKDAsICJVbnN1cHBvcnRlZCBmb3JtYXQgJXUiLCBmLT5jYWlyb19p ZCk7Ci0JCX0KLQl9IGVsc2UgaWYgKFBJWE1BTl9GT1JNQVRfQShmLT5waXhtYW5faWQpICYmCi0J CSAgIFBJWE1BTl9GT1JNQVRfUihmLT5waXhtYW5faWQpID4gOCkgewotCQljYWlyb19pZCA9IENB SVJPX0ZPUk1BVF9SR0JBMTI4RjsKLQkJZHJtX2Zvcm1hdCA9IElHVF9GT1JNQVRfRkxPQVQ7Ci0J fSBlbHNlIGlmIChQSVhNQU5fRk9STUFUX0EoZi0+cGl4bWFuX2lkKSkgewotCQljYWlyb19pZCA9 IENBSVJPX0ZPUk1BVF9BUkdCMzI7Ci0JCWRybV9mb3JtYXQgPSBEUk1fRk9STUFUX0FSR0I4ODg4 OwotCX0gZWxzZSBpZiAoUElYTUFOX0ZPUk1BVF9SKGYtPnBpeG1hbl9pZCkgPiA4KSB7Ci0JCWNh aXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjMwOwotCQlkcm1fZm9ybWF0ID0gRFJNX0ZPUk1BVF9Y UkdCMjEwMTAxMDsKLQl9IGVsc2UgewotCQljYWlyb19pZCA9IENBSVJPX0ZPUk1BVF9SR0IyNDsK LQkJZHJtX2Zvcm1hdCA9IERSTV9GT1JNQVRfWFJHQjg4ODg7Ci0JfQorCXVuc2lnbmVkIGRybV9m b3JtYXQgPSBjYWlyb19mb3JtYXRfdG9fZHJtX2Zvcm1hdChmLT5jYWlyb19pZCk7CiAKIAlpZ3Rf YXNzZXJ0KGJsaXQpOwogCkBAIC0zMTgxLDcgKzMxNjcsNyBAQCBzdGF0aWMgdm9pZCBjcmVhdGVf Y2Fpcm9fc3VyZmFjZV9fY29udmVydChpbnQgZmQsIHN0cnVjdCBpZ3RfZmIgKmZiKQogCiAJZmIt PmNhaXJvX3N1cmZhY2UgPQogCQljYWlyb19pbWFnZV9zdXJmYWNlX2NyZWF0ZV9mb3JfZGF0YShi bGl0LT5zaGFkb3dfcHRyLAotCQkJCQkJICAgIGNhaXJvX2lkLAorCQkJCQkJICAgIGYtPmNhaXJv X2lkLAogCQkJCQkJICAgIGZiLT53aWR0aCwgZmItPmhlaWdodCwKIAkJCQkJCSAgICBibGl0LT5z aGFkb3dfZmIuc3RyaWRlc1swXSk7CiAKQEAgLTMyMjUsMTAgKzMyMTEsNyBAQCBzdGF0aWMgYm9v bCB1c2VfY29udmVydChjb25zdCBzdHJ1Y3QgaWd0X2ZiICpmYikKIHsKIAljb25zdCBzdHJ1Y3Qg Zm9ybWF0X2Rlc2Nfc3RydWN0ICpmID0gbG9va3VwX2RybV9mb3JtYXQoZmItPmRybV9mb3JtYXQp OwogCi0JcmV0dXJuIGlndF9mb3JtYXRfaXNfeXV2KGZiLT5kcm1fZm9ybWF0KSB8fAotCQlpZ3Rf Zm9ybWF0X2lzX2ZwMTYoZmItPmRybV9mb3JtYXQpIHx8Ci0JCShmLT5jYWlyb19pZCA9PSBDQUlS T19GT1JNQVRfSU5WQUxJRCAmJgotCQkgZi0+cGl4bWFuX2lkICE9IFBJWE1BTl9pbnZhbGlkKTsK KwlyZXR1cm4gZi0+Y29udmVydDsKIH0KIAogLyoqCi0tIAoyLjIxLjAKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0Cmln dC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaWd0LWRldg==