From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id A5E2C8984E for ; Thu, 11 Apr 2019 12:36:54 +0000 (UTC) From: Simon Ser Date: Thu, 11 Apr 2019 15:36:48 +0300 Message-Id: <20190411123648.4123-6-simon.ser@intel.com> In-Reply-To: <20190411123648.4123-1-simon.ser@intel.com> References: <20190411123648.4123-1-simon.ser@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v4 5/5] tests/kms_chamelium: run audio test with multiple sampling rates 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: VGhlIGF1ZGlvIHRlc3QgaXMgbm93IHJ1biBtdWx0aXBsZSB0aW1lcyB3aXRoIGEgdmFyaWV0eSBv ZiBwbGF5YmFjayBzYW1wbGluZwpyYXRlcy4KCldlIG5vdyBxdWVyeSB0aGUgY2FwdHVyZSBhdWRp byBmb3JtYXQgZnJvbSB0aGUgQ2hhbWVsaXVtIFhNTC1SUEMgQVBJIGluc3RlYWQgb2YKaGFyZGNv ZGluZyBpdC4KCk9uZSBsaW1pdGF0aW9uIGlzIHRoYXQgd2UgbmVlZCB0byBzdGFydCBzZW5kdGlu ZyBhbiBhdWRpbyBzaWduYWwgYmVmb3JlIGJlaW5nCmFibGUgdG8gcXVlcnkgdGhlIGNhcHR1cmUg YXVkaW8gZm9ybWF0LiBIb3dldmVyIHdlIG5lZWQgdGhlIGNhcHR1cmUgc2FtcGxlIHJhdGUKdG8g ZGVjaWRlIHdoaWNoIGZyZXF1ZW5jaWVzIHdlIGdlbmVyYXRlLiBGb3Igbm93IHdlIHVzZSB0aGUg cGxheWJhY2sgcmF0ZSBhbmQKY2hlY2sgdGhhdCBpdCdzIHRoZSBzYW1lIGFzIHRoZSBjYXB0dXJl IHJhdGUuCgpBbm90aGVyIGxpbWl0YXRpb24gaXMgdGhhdCB0aGUgRFAgcmVjZWl2ZXIgcmVwb3J0 cyBhbiB1bmtub3duIHNhbXBsaW5nIHJhdGUKZHVyaW5nIHRoZSA0MS4xS0h6IHRlc3QuIEluIHRo aXMgY2FzZSB3ZSBhc3N1bWUgdGhlIGNhcHR1cmUgcmF0ZSBpcyB0aGUgc2FtZSBhcwp0aGUgcGxh eWJhY2sgcmF0ZS4gV2UnbGwgZmFpbCBsYXRlciBhbnl3YXkgaWYgdGhpcyBhc3N1bXB0aW9uIGlz IGluY29ycmVjdApzaW5jZSB3ZSBjaGVjayB0aGUgc2lnbmFsIHdlIHJlY2VpdmUuCgpDaGFtZWxl b24gYnVnOiBodHRwczovL2NyYnVnLmNvbS85NTA5MTMKClNpZ25lZC1vZmYtYnk6IFNpbW9uIFNl ciA8c2ltb24uc2VyQGludGVsLmNvbT4KLS0tCiBsaWIvaWd0X2NoYW1lbGl1bS5jICAgICAgICB8 IDgwICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCiBsaWIvaWd0X2NoYW1l bGl1bS5oICAgICAgICB8ICAzICsrCiBsaWIvaWd0X2NoYW1lbGl1bV9zdHJlYW0uYyB8IDE3IC0t LS0tLS0tCiBsaWIvaWd0X2NoYW1lbGl1bV9zdHJlYW0uaCB8ICAyIC0KIHRlc3RzL2ttc19jaGFt ZWxpdW0uYyAgICAgIHwgNTYgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KIDUgZmlsZXMgY2hh bmdlZCwgOTAgaW5zZXJ0aW9ucygrKSwgNjggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGli L2lndF9jaGFtZWxpdW0uYyBiL2xpYi9pZ3RfY2hhbWVsaXVtLmMKaW5kZXggNmFjN2I3MjIuLmZm YzY4ZjM1IDEwMDY0NAotLS0gYS9saWIvaWd0X2NoYW1lbGl1bS5jCisrKyBiL2xpYi9pZ3RfY2hh bWVsaXVtLmMKQEAgLTk2NCwzMSArOTY0LDYgQEAgdm9pZCBjaGFtZWxpdW1fZ2V0X2F1ZGlvX2No YW5uZWxfbWFwcGluZyhzdHJ1Y3QgY2hhbWVsaXVtICpjaGFtZWxpdW0sCiAJeG1scnBjX0RFQ1JF RihyZXMpOwogfQogCi0vKioKLSAqIGNoYW1lbGl1bV9zdGFydF9jYXB0dXJpbmdfYXVkaW86Ci0g KiBAY2hhbWVsaXVtOiB0aGUgQ2hhbWVsaXVtIGluc3RhbmNlCi0gKiBAcG9ydDogdGhlIHBvcnQg dG8gY2FwdHVyZSBhdWRpbyBmcm9tIChpdCBtdXN0IHN1cHBvcnQgYXVkaW8pCi0gKiBAc2F2ZV90 b19maWxlOiB3aGV0aGVyIHRoZSBjYXB0dXJlZCBhdWRpbyBkYXRhIHNob3VsZCBiZSBzYXZlZCB0 byBhIGZpbGUgb24KLSAqIHRoZSBDaGFtZWxpdW0gZGV2aWNlCi0gKgotICogU3RhcnRzIGNhcHR1 cmluZyBhdWRpbyBmcm9tIGEgQ2hhbWVsaXVtIHBvcnQuIFRvIHN0b3AgdGhlIGNhcHR1cmUsIHVz ZQotICogI2NoYW1lbGl1bV9zdG9wX2NhcHR1cmluZ19hdWRpby4gVG8gcmV0cmlldmUgdGhlIGF1 ZGlvIGRhdGEsIGVpdGhlciB1c2UgdGhlCi0gKiBzdHJlYW0gc2VydmVyIG9yIGVuYWJsZSBAc2F2 ZV90b19maWxlICh0aGUgbGF0dGVyIGlzIG1haW5seSB1c2VmdWwgZm9yCi0gKiBkZWJ1Z2dpbmcg cHVycG9zZXMpLgotICoKLSAqIEl0IGlzbid0IHBvc3NpYmxlIHRvIGNhcHR1cmUgYXVkaW8gZnJv bSBtdWx0aXBsZSBwb3J0cyBhdCB0aGUgc2FtZSB0aW1lLgotICovCi12b2lkIGNoYW1lbGl1bV9z dGFydF9jYXB0dXJpbmdfYXVkaW8oc3RydWN0IGNoYW1lbGl1bSAqY2hhbWVsaXVtLAotCQkJCSAg ICBzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQgKnBvcnQsCi0JCQkJICAgIGJvb2wgc2F2ZV90b19maWxl KQotewotCXhtbHJwY192YWx1ZSAqcmVzOwotCi0JcmVzID0gY2hhbWVsaXVtX3JwYyhjaGFtZWxp dW0sIHBvcnQsICJTdGFydENhcHR1cmluZ0F1ZGlvIiwgIihpYikiLAotCQkJICAgIHBvcnQtPmlk LCBzYXZlX3RvX2ZpbGUpOwotCXhtbHJwY19ERUNSRUYocmVzKTsKLX0KLQogc3RhdGljIHZvaWQg YXVkaW9fZm9ybWF0X2Zyb21feG1sKHN0cnVjdCBjaGFtZWxpdW0gKmNoYW1lbGl1bSwKIAkJCQkg IHhtbHJwY192YWx1ZSAqcmVzLCBpbnQgKnJhdGUsIGludCAqY2hhbm5lbHMpCiB7CkBAIC0xMDA4 LDggKzk4MywxMCBAQCBzdGF0aWMgdm9pZCBhdWRpb19mb3JtYXRfZnJvbV94bWwoc3RydWN0IGNo YW1lbGl1bSAqY2hhbWVsaXVtLAogCWlndF9hc3NlcnQoc3RyY21wKHNhbXBsZV9mb3JtYXQsICJT MzJfTEUiKSA9PSAwKTsKIAlmcmVlKHNhbXBsZV9mb3JtYXQpOwogCi0JeG1scnBjX3JlYWRfaW50 KCZjaGFtZWxpdW0tPmVudiwgcmVzX3JhdGUsIHJhdGUpOwotCXhtbHJwY19yZWFkX2ludCgmY2hh bWVsaXVtLT5lbnYsIHJlc19jaGFubmVsLCBjaGFubmVscyk7CisJaWYgKHJhdGUpCisJCXhtbHJw Y19yZWFkX2ludCgmY2hhbWVsaXVtLT5lbnYsIHJlc19yYXRlLCByYXRlKTsKKwlpZiAoY2hhbm5l bHMpCisJCXhtbHJwY19yZWFkX2ludCgmY2hhbWVsaXVtLT5lbnYsIHJlc19jaGFubmVsLCBjaGFu bmVscyk7CiAKIAl4bWxycGNfREVDUkVGKHJlc19jaGFubmVsKTsKIAl4bWxycGNfREVDUkVGKHJl c19zYW1wbGVfZm9ybWF0KTsKQEAgLTEwMTcsNiArOTk0LDU1IEBAIHN0YXRpYyB2b2lkIGF1ZGlv X2Zvcm1hdF9mcm9tX3htbChzdHJ1Y3QgY2hhbWVsaXVtICpjaGFtZWxpdW0sCiAJeG1scnBjX0RF Q1JFRihyZXNfdHlwZSk7CiB9CiAKKy8qKgorICogY2hhbWVsaXVtX2dldF9hdWRpb19mb3JtYXQ6 CisgKiBAY2hhbWVsaXVtOiB0aGUgQ2hhbWVsaXVtIGluc3RhbmNlCisgKiBAcG9ydDogdGhlIGF1 ZGlvIHBvcnQKKyAqIEByYXRlOiBpZiBub24tTlVMTCwgd2lsbCBiZSBzZXQgdG8gdGhlIHNhbXBs ZSByYXRlIGluIEh6CisgKiBAY2hhbm5lbHM6IGlmIG5vbi1OVUxMLCB3aWxsIGJlIHNldCB0byB0 aGUgbnVtYmVyIG9mIGNoYW5uZWxzCisgKgorICogT2J0YWlucyB0aGUgYXVkaW8gZm9ybWF0IG9m IHRoZSBjYXB0dXJlZCBkYXRhLiBVc2VycyBzaG91bGQgc3RhcnQgc2VuZGluZyBhbgorICogYXVk aW8gc2lnbmFsIHRvIHRoZSBDaGFtZWxpdW0gZGV2aWNlIHByaW9yIHRvIGNhbGxpbmcgdGhpcyBm dW5jdGlvbi4KKyAqCisgKiBUaGUgY2FwdHVyZWQgZGF0YSBpcyBndWFyYW50ZWVkIHRvIGJlIGlu IHRoZSBTMzJfTEUgZm9ybWF0LgorICovCit2b2lkIGNoYW1lbGl1bV9nZXRfYXVkaW9fZm9ybWF0 KHN0cnVjdCBjaGFtZWxpdW0gKmNoYW1lbGl1bSwKKwkJCQlzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQg KnBvcnQsCisJCQkJaW50ICpyYXRlLCBpbnQgKmNoYW5uZWxzKQoreworCXhtbHJwY192YWx1ZSAq cmVzOworCisJcmVzID0gY2hhbWVsaXVtX3JwYyhjaGFtZWxpdW0sIHBvcnQsICJHZXRBdWRpb0Zv cm1hdCIsICIoaSkiLAorCQkJICAgIHBvcnQtPmlkKTsKKwlhdWRpb19mb3JtYXRfZnJvbV94bWwo Y2hhbWVsaXVtLCByZXMsIHJhdGUsIGNoYW5uZWxzKTsKKwl4bWxycGNfREVDUkVGKHJlcyk7Cit9 CisKKy8qKgorICogY2hhbWVsaXVtX3N0YXJ0X2NhcHR1cmluZ19hdWRpbzoKKyAqIEBjaGFtZWxp dW06IHRoZSBDaGFtZWxpdW0gaW5zdGFuY2UKKyAqIEBwb3J0OiB0aGUgcG9ydCB0byBjYXB0dXJl IGF1ZGlvIGZyb20gKGl0IG11c3Qgc3VwcG9ydCBhdWRpbykKKyAqIEBzYXZlX3RvX2ZpbGU6IHdo ZXRoZXIgdGhlIGNhcHR1cmVkIGF1ZGlvIGRhdGEgc2hvdWxkIGJlIHNhdmVkIHRvIGEgZmlsZSBv bgorICogdGhlIENoYW1lbGl1bSBkZXZpY2UKKyAqCisgKiBTdGFydHMgY2FwdHVyaW5nIGF1ZGlv IGZyb20gYSBDaGFtZWxpdW0gcG9ydC4gVG8gc3RvcCB0aGUgY2FwdHVyZSwgdXNlCisgKiAjY2hh bWVsaXVtX3N0b3BfY2FwdHVyaW5nX2F1ZGlvLiBUbyByZXRyaWV2ZSB0aGUgYXVkaW8gZGF0YSwg ZWl0aGVyIHVzZSB0aGUKKyAqIHN0cmVhbSBzZXJ2ZXIgb3IgZW5hYmxlIEBzYXZlX3RvX2ZpbGUg KHRoZSBsYXR0ZXIgaXMgbWFpbmx5IHVzZWZ1bCBmb3IKKyAqIGRlYnVnZ2luZyBwdXJwb3Nlcyku CisgKgorICogSXQgaXNuJ3QgcG9zc2libGUgdG8gY2FwdHVyZSBhdWRpbyBmcm9tIG11bHRpcGxl IHBvcnRzIGF0IHRoZSBzYW1lIHRpbWUuCisgKi8KK3ZvaWQgY2hhbWVsaXVtX3N0YXJ0X2NhcHR1 cmluZ19hdWRpbyhzdHJ1Y3QgY2hhbWVsaXVtICpjaGFtZWxpdW0sCisJCQkJICAgIHN0cnVjdCBj aGFtZWxpdW1fcG9ydCAqcG9ydCwKKwkJCQkgICAgYm9vbCBzYXZlX3RvX2ZpbGUpCit7CisJeG1s cnBjX3ZhbHVlICpyZXM7CisKKwlyZXMgPSBjaGFtZWxpdW1fcnBjKGNoYW1lbGl1bSwgcG9ydCwg IlN0YXJ0Q2FwdHVyaW5nQXVkaW8iLCAiKGliKSIsCisJCQkgICAgcG9ydC0+aWQsIHNhdmVfdG9f ZmlsZSk7CisJeG1scnBjX0RFQ1JFRihyZXMpOworfQorCiAvKioKICAqIGNoYW1lbGl1bV9zdG9w X2NhcHR1cmluZ19hdWRpbzoKICAqIEBjaGFtZWxpdW06IHRoZSBDaGFtZWxpdW0gaW5zdGFuY2UK ZGlmZiAtLWdpdCBhL2xpYi9pZ3RfY2hhbWVsaXVtLmggYi9saWIvaWd0X2NoYW1lbGl1bS5oCmlu ZGV4IDcyOGQxNmVhLi5mNDdiODRjYiAxMDA2NDQKLS0tIGEvbGliL2lndF9jaGFtZWxpdW0uaAor KysgYi9saWIvaWd0X2NoYW1lbGl1bS5oCkBAIC0xMDksNiArMTA5LDkgQEAgdm9pZCBjaGFtZWxp dW1fY2FwdHVyZShzdHJ1Y3QgY2hhbWVsaXVtICpjaGFtZWxpdW0sIHN0cnVjdCBjaGFtZWxpdW1f cG9ydCAqcG9ydCwKIHZvaWQgY2hhbWVsaXVtX2dldF9hdWRpb19jaGFubmVsX21hcHBpbmcoc3Ry dWN0IGNoYW1lbGl1bSAqY2hhbWVsaXVtLAogCQkJCQkgc3RydWN0IGNoYW1lbGl1bV9wb3J0ICpw b3J0LAogCQkJCQkgaW50IG1hcHBpbmdbc3RhdGljIDhdKTsKK3ZvaWQgY2hhbWVsaXVtX2dldF9h dWRpb19mb3JtYXQoc3RydWN0IGNoYW1lbGl1bSAqY2hhbWVsaXVtLAorCQkJCXN0cnVjdCBjaGFt ZWxpdW1fcG9ydCAqcG9ydCwKKwkJCQlpbnQgKnJhdGUsIGludCAqY2hhbm5lbHMpOwogdm9pZCBj aGFtZWxpdW1fc3RhcnRfY2FwdHVyaW5nX2F1ZGlvKHN0cnVjdCBjaGFtZWxpdW0gKmNoYW1lbGl1 bSwKIAkJCQkgICAgc3RydWN0IGNoYW1lbGl1bV9wb3J0ICpwb3J0LCBib29sIHNhdmVfdG9fZmls ZSk7CiBzdHJ1Y3QgY2hhbWVsaXVtX2F1ZGlvX2ZpbGUgKmNoYW1lbGl1bV9zdG9wX2NhcHR1cmlu Z19hdWRpbyhzdHJ1Y3QgY2hhbWVsaXVtICpjaGFtZWxpdW0sCmRpZmYgLS1naXQgYS9saWIvaWd0 X2NoYW1lbGl1bV9zdHJlYW0uYyBiL2xpYi9pZ3RfY2hhbWVsaXVtX3N0cmVhbS5jCmluZGV4IDll MWJhMWNhLi5hN2IwOWMwOCAxMDA2NDQKLS0tIGEvbGliL2lndF9jaGFtZWxpdW1fc3RyZWFtLmMK KysrIGIvbGliL2lndF9jaGFtZWxpdW1fc3RyZWFtLmMKQEAgLTU0MCwyMyArNTQwLDYgQEAgYm9v bCBjaGFtZWxpdW1fc3RyZWFtX3N0b3BfcmVhbHRpbWVfYXVkaW8oc3RydWN0IGNoYW1lbGl1bV9z dHJlYW0gKmNsaWVudCkKIAlyZXR1cm4gdHJ1ZTsKIH0KIAotLyoqCi0gKiBjaGFtZWxpdW1fc3Ry ZWFtX2F1ZGlvX2Zvcm1hdDoKLSAqCi0gKiBHZXRzIHRoZSBmb3JtYXQgdXNlZCBmb3IgYXVkaW8g cGFnZXMuCi0gKgotICogRGF0YSB3aWxsIGFsd2F5cyBiZSBjYXB0dXJlZCBpbiByYXcgcGFnZXMg b2YgUzMyX0xFIGVsZW1lbnRzLiBUaGlzIGZ1bmN0aW9uCi0gKiBleHBvc2VzIHRoZSBzYW1wbGlu ZyByYXRlIGFuZCB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzLgotICovCi12b2lkIGNoYW1lbGl1bV9z dHJlYW1fYXVkaW9fZm9ybWF0KHN0cnVjdCBjaGFtZWxpdW1fc3RyZWFtICpzdHJlYW0sCi0JCQkJ ICAgaW50ICpyYXRlLCBpbnQgKmNoYW5uZWxzKQotewotCS8qIFRPRE86IHRoZSBDaGFtZWxpdW0g c3RyZWFtaW5nIHNlcnZlciBkb2Vzbid0IGV4cG9zZSB0aG9zZSB5ZXQuCi0JICogSnVzdCBoYXJk Y29kZSB0aGUgdmFsdWVzIGZvciBub3cuICovCi0JKnJhdGUgPSA0ODAwMDsKLQkqY2hhbm5lbHMg PSA4OwotfQotCiAvKioKICAqIGNoYW1lbGl1bV9zdHJlYW1faW5pdDoKICAqCmRpZmYgLS1naXQg YS9saWIvaWd0X2NoYW1lbGl1bV9zdHJlYW0uaCBiL2xpYi9pZ3RfY2hhbWVsaXVtX3N0cmVhbS5o CmluZGV4IGRlNGU5OTMxLi4zZTFjNWQxNCAxMDA2NDQKLS0tIGEvbGliL2lndF9jaGFtZWxpdW1f c3RyZWFtLmgKKysrIGIvbGliL2lndF9jaGFtZWxpdW1fc3RyZWFtLmgKQEAgLTQyLDggKzQyLDYg QEAgc3RydWN0IGNoYW1lbGl1bV9zdHJlYW0gKmNoYW1lbGl1bV9zdHJlYW1faW5pdCh2b2lkKTsK IHZvaWQgY2hhbWVsaXVtX3N0cmVhbV9kZWluaXQoc3RydWN0IGNoYW1lbGl1bV9zdHJlYW0gKmNs aWVudCk7CiBib29sIGNoYW1lbGl1bV9zdHJlYW1fZHVtcF9yZWFsdGltZV9hdWRpbyhzdHJ1Y3Qg Y2hhbWVsaXVtX3N0cmVhbSAqY2xpZW50LAogCQkJCQkgIGVudW0gY2hhbWVsaXVtX3N0cmVhbV9y ZWFsdGltZV9tb2RlIG1vZGUpOwotdm9pZCBjaGFtZWxpdW1fc3RyZWFtX2F1ZGlvX2Zvcm1hdChz dHJ1Y3QgY2hhbWVsaXVtX3N0cmVhbSAqc3RyZWFtLAotCQkJCSAgIGludCAqcmF0ZSwgaW50ICpj aGFubmVscyk7CiBib29sIGNoYW1lbGl1bV9zdHJlYW1fcmVjZWl2ZV9yZWFsdGltZV9hdWRpbyhz dHJ1Y3QgY2hhbWVsaXVtX3N0cmVhbSAqY2xpZW50LAogCQkJCQkgICAgIHNpemVfdCAqcGFnZV9j b3VudCwKIAkJCQkJICAgICBpbnQzMl90ICoqYnVmLCBzaXplX3QgKmJ1Zl9sZW4pOwpkaWZmIC0t Z2l0IGEvdGVzdHMva21zX2NoYW1lbGl1bS5jIGIvdGVzdHMva21zX2NoYW1lbGl1bS5jCmluZGV4 IDNlNGY3NDczLi5hNDBjNTZlYiAxMDA2NDQKLS0tIGEvdGVzdHMva21zX2NoYW1lbGl1bS5jCisr KyBiL3Rlc3RzL2ttc19jaGFtZWxpdW0uYwpAQCAtNzI1LDE1ICs3MjUsMTQgQEAgdGVzdF9kaXNw bGF5X2ZyYW1lX2R1bXAoZGF0YV90ICpkYXRhLCBzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQgKnBvcnQp CiAvKiBBIHN0cmVhayBvZiAzIGdpdmVzIGNvbmZpZGVuY2UgdGhhdCB0aGUgc2lnbmFsIGlzIGdv b2QuICovCiAjZGVmaW5lIE1JTl9TVFJFQUsgMwogCi0vKiBUT0RPOiBDaGFtZWxpdW0gb25seSBz dXBwb3J0cyA0OEtIeiBmb3Igbm93ICovCiBzdGF0aWMgaW50IHNhbXBsaW5nX3JhdGVzW10gPSB7 Ci0vKgkzMjAwMCwgKi8KLS8qCTQ0MTAwLCAqLworCTMyMDAwLAorCTQ0MTAwLAogCTQ4MDAwLAot LyoJODgyMDAsICovCi0vKgk5NjAwMCwgKi8KLS8qCTE3NjQwMCwgKi8KLS8qCTE5MjAwMCwgKi8K Kwk4ODIwMCwKKwk5NjAwMCwKKwkxNzY0MDAsCisJMTkyMDAwLAogfTsKIAogc3RhdGljIGludCBz YW1wbGluZ19yYXRlc19jb3VudCA9IHNpemVvZihzYW1wbGluZ19yYXRlcykgLyBzaXplb2YoaW50 KTsKQEAgLTgxNSwxOSArODE0LDYgQEAgZG9fdGVzdF9kaXNwbGF5X2F1ZGlvKGRhdGFfdCAqZGF0 YSwgc3RydWN0IGNoYW1lbGl1bV9wb3J0ICpwb3J0LAogCW9rID0gY2hhbWVsaXVtX3N0cmVhbV9k dW1wX3JlYWx0aW1lX2F1ZGlvKHN0cmVhbSwgc3RyZWFtX21vZGUpOwogCWlndF9hc3NlcnQob2sp OwogCi0JY2hhbWVsaXVtX3N0cmVhbV9hdWRpb19mb3JtYXQoc3RyZWFtLCAmY2FwdHVyZV9yYXRl LCAmY2FwdHVyZV9jaGFubmVscyk7Ci0KLQlpZiAoaWd0X2ZyYW1lX2R1bXBfaXNfZW5hYmxlZCgp KSB7Ci0JCXNucHJpbnRmKGR1bXBfc3VmZml4LCBzaXplb2YoZHVtcF9zdWZmaXgpLCAiY2FwdHVy ZS0lZGNoLSVkIiwKLQkJCSBwbGF5YmFja19jaGFubmVscywgcGxheWJhY2tfcmF0ZSk7Ci0KLQkJ ZHVtcF9mZCA9IGF1ZGlvX2NyZWF0ZV93YXZfZmlsZV9zMzJfbGUoZHVtcF9zdWZmaXgsCi0JCQkJ CQkgICAgICAgY2FwdHVyZV9yYXRlLAotCQkJCQkJICAgICAgIGNhcHR1cmVfY2hhbm5lbHMsCi0J CQkJCQkgICAgICAgJmR1bXBfcGF0aCk7Ci0JCWlndF9hc3NlcnQoZHVtcF9mZCA+PSAwKTsKLQl9 Ci0KIAlzaWduYWwgPSBhdWRpb19zaWduYWxfaW5pdChwbGF5YmFja19jaGFubmVscywgcGxheWJh Y2tfcmF0ZSk7CiAJaWd0X2Fzc2VydChzaWduYWwpOwogCkBAIC04MzUsOCArODIxLDEyIEBAIGRv X3Rlc3RfZGlzcGxheV9hdWRpbyhkYXRhX3QgKmRhdGEsIHN0cnVjdCBjaGFtZWxpdW1fcG9ydCAq cG9ydCwKIAkgKiBpbmRlcGVuZGVudCBmcm9tIGVhY2ggb3RoZXIuIFRvIGRvIHNvLCB3ZSdsbCBh ZGQgYSBkaWZmZXJlbnQgb2Zmc2V0CiAJICogdG8gdGhlIGJhc2UgZnJlcXVlbmNpZXMgZm9yIGVh Y2ggY2hhbm5lbC4gV2UgbmVlZCB0byBjaG9vc2UgYSBiaWcKIAkgKiBlbm91Z2ggb2Zmc2V0IHNv IHRoYXQgd2UncmUgc3VyZSB0byBkZXRlY3QgbWl4ZWQgdXAgY2hhbm5lbHMuCisJICoKKwkgKiBO b3RlIHRoYXQgd2UgYXNzdW1lIGNhcHR1cmVfcmF0ZSA9PSBwbGF5YmFja19yYXRlLiBXZSdsbCBh c3NlcnQgdGhpcworCSAqIGxhdGVyIG9uLiBXZSBjYW5ub3QgcmV0cmlldmUgdGhlIGNhcHR1cmUg cmF0ZSBiZWZvcmUgc3RhcnRpbmcKKwkgKiBwbGF5aW5nIGF1ZGlvLCBzbyB3ZSBkb24ndCByZWFs bHkgaGF2ZSB0aGUgY2hvaWNlLgogCSAqLwotCXN0ZXAgPSAyICogY2FwdHVyZV9yYXRlIC8gQ0FQ VFVSRV9TQU1QTEVTOworCXN0ZXAgPSAyICogcGxheWJhY2tfcmF0ZSAvIENBUFRVUkVfU0FNUExF UzsKIAlmb3IgKGkgPSAwOyBpIDwgdGVzdF9mcmVxdWVuY2llc19jb3VudDsgaSsrKSB7CiAJCWZv ciAoaiA9IDA7IGogPCBwbGF5YmFja19jaGFubmVsczsgaisrKSB7CiAJCQlmcmVxID0gdGVzdF9m cmVxdWVuY2llc1tpXSArIGogKiBzdGVwOwpAQCAtODU0LDYgKzg0NCwxNyBAQCBkb190ZXN0X2Rp c3BsYXlfYXVkaW8oZGF0YV90ICpkYXRhLCBzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQgKnBvcnQsCiAJ cmV0ID0gcHRocmVhZF9jcmVhdGUoJnRocmVhZCwgTlVMTCwgcnVuX2F1ZGlvX3RocmVhZCwgYWxz YSk7CiAJaWd0X2Fzc2VydChyZXQgPT0gMCk7CiAKKwkvKiBPbmx5IGFmdGVyIHdlJ3ZlIHN0YXJ0 ZWQgcGxheWluZyBhdWRpbywgd2UgY2FuIHJldHJpZXZlIHRoZSBjYXB0dXJlCisJICogZm9ybWF0 IHVzZWQgYnkgdGhlIENoYW1lbGl1bSBkZXZpY2UuICovCisJY2hhbWVsaXVtX2dldF9hdWRpb19m b3JtYXQoZGF0YS0+Y2hhbWVsaXVtLCBwb3J0LAorCQkJCSAgICZjYXB0dXJlX3JhdGUsICZjYXB0 dXJlX2NoYW5uZWxzKTsKKwlpZiAoY2FwdHVyZV9yYXRlID09IDApIHsKKwkJaWd0X2RlYnVnKCJB dWRpbyByZWNlaXZlciBkb2Vzbid0IGluZGljYXRlIHRoZSBjYXB0dXJlICIKKwkJCSAic2FtcGxp bmcgcmF0ZSwgYXNzdW1pbmcgaXQncyAlZCBIelxuIiwgcGxheWJhY2tfcmF0ZSk7CisJCWNhcHR1 cmVfcmF0ZSA9IHBsYXliYWNrX3JhdGU7CisJfSBlbHNlCisJCWlndF9hc3NlcnQoY2FwdHVyZV9y YXRlID09IHBsYXliYWNrX3JhdGUpOworCiAJY2hhbWVsaXVtX2dldF9hdWRpb19jaGFubmVsX21h cHBpbmcoZGF0YS0+Y2hhbWVsaXVtLCBwb3J0LAogCQkJCQkgICAgY2hhbm5lbF9tYXBwaW5nKTsK IAkvKiBNYWtlIHN1cmUgd2UgY2FuIGNhcHR1cmUgYWxsIGNoYW5uZWxzIHdlIHNlbmQuICovCkBA IC04NjgsNiArODY5LDE3IEBAIGRvX3Rlc3RfZGlzcGxheV9hdWRpbyhkYXRhX3QgKmRhdGEsIHN0 cnVjdCBjaGFtZWxpdW1fcG9ydCAqcG9ydCwKIAkJaWd0X2Fzc2VydChvayk7CiAJfQogCisJaWYg KGlndF9mcmFtZV9kdW1wX2lzX2VuYWJsZWQoKSkgeworCQlzbnByaW50ZihkdW1wX3N1ZmZpeCwg c2l6ZW9mKGR1bXBfc3VmZml4KSwgImNhcHR1cmUtJWRjaC0lZCIsCisJCQkgcGxheWJhY2tfY2hh bm5lbHMsIHBsYXliYWNrX3JhdGUpOworCisJCWR1bXBfZmQgPSBhdWRpb19jcmVhdGVfd2F2X2Zp bGVfczMyX2xlKGR1bXBfc3VmZml4LAorCQkJCQkJICAgICAgIGNhcHR1cmVfcmF0ZSwKKwkJCQkJ CSAgICAgICBjYXB0dXJlX2NoYW5uZWxzLAorCQkJCQkJICAgICAgICZkdW1wX3BhdGgpOworCQlp Z3RfYXNzZXJ0KGR1bXBfZmQgPj0gMCk7CisJfQorCiAJLyogTmVlZHMgdG8gYmUgYSBtdWx0aXBs ZSBvZiAxMjgsIGJlY2F1c2UgdGhhdCdzIHRoZSBudW1iZXIgb2Ygc2FtcGxlcwogCSAqIHdlIGdl dCBwZXIgY2hhbm5lbCBlYWNoIHRpbWUgd2UgcmVjZWl2ZSBhbiBhdWRpbyBwYWdlIGZyb20gdGhl CiAJICogQ2hhbWVsaXVtIGRldmljZS4gKi8KQEAgLTkzOSw3ICs5NTEsNyBAQCBkb190ZXN0X2Rp c3BsYXlfYXVkaW8oZGF0YV90ICpkYXRhLCBzdHJ1Y3QgY2hhbWVsaXVtX3BvcnQgKnBvcnQsCiAK IAlpZiAoZHVtcF9mZCA+PSAwKSB7CiAJCWNsb3NlKGR1bXBfZmQpOwotCQlpZiAoc3RyZWFrID09 IE1JTl9TVFJFQUspIHsKKwkJaWYgKHN1Y2Nlc3MpIHsKIAkJCS8qIFRlc3Qgc3VjY2VlZGVkLCBu byBuZWVkIHRvIGtlZXAgdGhlIGNhcHR1cmVkIGRhdGEgKi8KIAkJCXVubGluayhkdW1wX3BhdGgp OwogCQl9IGVsc2UKLS0gCjIuMjEuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9p Z3QtZGV2