From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [RFC 7/7] drm: make the callers of drm_wait_vblank() allocate the memory Date: Wed, 19 Nov 2014 17:47:15 -0200 Message-ID: <1416426435-2237-9-git-send-email-przanoni@gmail.com> References: <1416426435-2237-1-git-send-email-przanoni@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1416426435-2237-1-git-send-email-przanoni@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org, Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org RnJvbTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+CgpUaGlzIHdheSwg dGhlIEtlcm5lbCB1c2VycyB3aWxsIGJlIGFibGUgdG8gZnVsbHkgY29udHJvbCB0aGUgbGlmZXRp bWUKb2Ygc3RydWN0IGRybV92Ymxhbmtfd2FpdF9pdGVtLCBhbmQgdGhleSB3aWxsIGFsc28gYmUg YWJsZSB0byB3cmFwIGl0CnRvIHN0b3JlIHRoZWlyIG93biBpbmZvcm1hdGlvbi4gQXMgYSByZXN1 bHQsIG9uZSBsZXNzIG1lbW9yeQphbGxvY2F0aW9uIHdpbGwgaGFwcGVuLCBhbmQgdGhlIEtlcm5l bCBjb2RlcGF0aCB3aWxsIG5vdCBzZXQgYWxsIHRob3NlCmRybV9wZW5kaW5nX3ZibGFua19ldmVu dCBzdHJ1Y3QgZmllbGRzLgoKU2lnbmVkLW9mZi1ieTogUGF1bG8gWmFub25pIDxwYXVsby5yLnph bm9uaUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9pcnEuYyAgICAgICAgICAg fCA5MiArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2RlYnVnZnMuYyB8IDExICsrLS0tCiBpbmNsdWRlL2RybS9kcm1QLmggICAg ICAgICAgICAgICAgICB8ICAyICstCiAzIGZpbGVzIGNoYW5nZWQsIDU3IGluc2VydGlvbnMoKyks IDQ4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faXJxLmMg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX2lycS5jCmluZGV4IGRkMDkxYzMuLjVmYTU0MzEgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faXJxLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9pcnEuYwpAQCAtMTQwMiwzNiArMTQwMiwyNiBAQCBzdGF0aWMgdm9pZCBkcm1fdmJsYW5rX2V2 ZW50X3dvcmtfZnVuYyhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCiAKIHN0YXRpYyBpbnQgZHJt X3F1ZXVlX3ZibGFua19ldmVudChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgcGlwZSwKIAkJ CQkgIHVuaW9uIGRybV93YWl0X3ZibGFuayAqdmJsd2FpdCwKLQkJCQkgIHN0cnVjdCBkcm1fZmls ZSAqZmlsZV9wcml2LAogCQkJCSAgYm9vbCBjYWxsYmFja19mcm9tX3dvcmssCi0JCQkJICBkcm1f dmJsYW5rX2NhbGxiYWNrX3QgY2FsbGJhY2spCisJCQkJICBkcm1fdmJsYW5rX2NhbGxiYWNrX3Qg Y2FsbGJhY2ssCisJCQkJICBzdHJ1Y3QgZHJtX3ZibGFua193YWl0X2l0ZW0gKml0ZW0pCiB7CiAJ c3RydWN0IGRybV92YmxhbmtfY3J0YyAqdmJsYW5rID0gJmRldi0+dmJsYW5rW3BpcGVdOwotCXN0 cnVjdCBkcm1fcGVuZGluZ192YmxhbmtfZXZlbnQgKmU7CiAJc3RydWN0IHRpbWV2YWwgbm93Owog CXVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAJdW5zaWduZWQgaW50IHNlcTsKIAlpbnQgcmV0OwogCi0J ZSA9IGt6YWxsb2Moc2l6ZW9mICplLCBHRlBfS0VSTkVMKTsKLQlpZiAoZSA9PSBOVUxMKSB7Ci0J CXJldCA9IC1FTk9NRU07CisJaWYgKFdBUk5fT04oIWl0ZW0pKSB7CisJCXJldCA9IC1FSU5WQUw7 CiAJCWdvdG8gZXJyX3B1dDsKIAl9CiAKLQllLT5pdGVtLnBpcGUgPSBwaXBlOwotCWUtPmJhc2Uu cGlkID0gY3VycmVudC0+cGlkOwotCWUtPmV2ZW50LmJhc2UudHlwZSA9IERSTV9FVkVOVF9WQkxB Tks7Ci0JZS0+ZXZlbnQuYmFzZS5sZW5ndGggPSBzaXplb2YgZS0+ZXZlbnQ7Ci0JZS0+ZXZlbnQu dXNlcl9kYXRhID0gdmJsd2FpdC0+cmVxdWVzdC5zaWduYWw7Ci0JZS0+YmFzZS5ldmVudCA9ICZl LT5ldmVudC5iYXNlOwotCWUtPmJhc2UuZmlsZV9wcml2ID0gZmlsZV9wcml2OwotCWUtPmJhc2Uu ZGVzdHJveSA9ICh2b2lkICgqKSAoc3RydWN0IGRybV9wZW5kaW5nX2V2ZW50ICopKSBrZnJlZTsK LQllLT5pdGVtLmZyb21fdXNlcl9zcGFjZSA9IHRydWU7Ci0JZS0+aXRlbS5jYWxsYmFjayA9IGNh bGxiYWNrOwotCWUtPml0ZW0uY2FsbGJhY2tfZnJvbV93b3JrID0gY2FsbGJhY2tfZnJvbV93b3Jr OworCWl0ZW0tPnBpcGUgPSBwaXBlOworCWl0ZW0tPmNhbGxiYWNrID0gY2FsbGJhY2s7CisJaXRl bS0+Y2FsbGJhY2tfZnJvbV93b3JrID0gY2FsbGJhY2tfZnJvbV93b3JrOwogCWlmIChjYWxsYmFj a19mcm9tX3dvcmspCi0JCUlOSVRfV09SSygmZS0+aXRlbS5jYWxsYmFja193b3JrLCBkcm1fdmJs YW5rX2V2ZW50X3dvcmtfZnVuYyk7CisJCUlOSVRfV09SSygmaXRlbS0+Y2FsbGJhY2tfd29yaywg ZHJtX3ZibGFua19ldmVudF93b3JrX2Z1bmMpOwogCiAJc3Bpbl9sb2NrX2lycXNhdmUoJmRldi0+ ZXZlbnRfbG9jaywgZmxhZ3MpOwogCkBAIC0xNDQ3LDE1ICsxNDM3LDYgQEAgc3RhdGljIGludCBk cm1fcXVldWVfdmJsYW5rX2V2ZW50KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBwaXBlLAog CQlnb3RvIGVycl91bmxvY2s7CiAJfQogCi0JaWYgKGZpbGVfcHJpdikgewotCQlpZiAoZmlsZV9w cml2LT5ldmVudF9zcGFjZSA8IHNpemVvZiBlLT5ldmVudCkgewotCQkJcmV0ID0gLUVCVVNZOwot CQkJZ290byBlcnJfdW5sb2NrOwotCQl9Ci0KLQkJZmlsZV9wcml2LT5ldmVudF9zcGFjZSAtPSBz aXplb2YgZS0+ZXZlbnQ7Ci0JfQotCiAJc2VxID0gZHJtX3ZibGFua19jb3VudF9hbmRfdGltZShk ZXYsIHBpcGUsICZub3cpOwogCiAJaWYgKCh2Ymx3YWl0LT5yZXF1ZXN0LnR5cGUgJiBfRFJNX1ZC TEFOS19ORVhUT05NSVNTKSAmJgpAQCAtMTQ3MCwxNCArMTQ1MSwxNCBAQCBzdGF0aWMgaW50IGRy bV9xdWV1ZV92YmxhbmtfZXZlbnQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgaW50IHBpcGUsCiAJ dHJhY2VfZHJtX3ZibGFua19ldmVudF9xdWV1ZWQoY3VycmVudC0+cGlkLCBwaXBlLAogCQkJCSAg ICAgIHZibHdhaXQtPnJlcXVlc3Quc2VxdWVuY2UpOwogCi0JZS0+aXRlbS53YW50ZWRfc2VxID0g dmJsd2FpdC0+cmVxdWVzdC5zZXF1ZW5jZTsKKwlpdGVtLT53YW50ZWRfc2VxID0gdmJsd2FpdC0+ cmVxdWVzdC5zZXF1ZW5jZTsKIAlpZiAoKHNlcSAtIHZibHdhaXQtPnJlcXVlc3Quc2VxdWVuY2Up IDw9ICgxIDw8IDIzKSkgewogCQlkcm1fdmJsYW5rX3B1dChkZXYsIHBpcGUpOwotCQlkcm1fd2Fp dF92YmxhbmtfY2FsbGJhY2soZGV2LCAmZS0+aXRlbSwgc2VxLCAmbm93LCBmYWxzZSk7CisJCWRy bV93YWl0X3ZibGFua19jYWxsYmFjayhkZXYsIGl0ZW0sIHNlcSwgJm5vdywgZmFsc2UpOwogCQl2 Ymx3YWl0LT5yZXBseS5zZXF1ZW5jZSA9IHNlcTsKIAl9IGVsc2UgewogCQkvKiBkcm1faGFuZGxl X3ZibGFua19ldmVudHMgd2lsbCBjYWxsIGRybV92YmxhbmtfcHV0ICovCi0JCWxpc3RfYWRkX3Rh aWwoJmUtPml0ZW0ubGluaywgJmRldi0+dmJsYW5rX2V2ZW50X2xpc3QpOworCQlsaXN0X2FkZF90 YWlsKCZpdGVtLT5saW5rLCAmZGV2LT52YmxhbmtfZXZlbnRfbGlzdCk7CiAJCXZibHdhaXQtPnJl cGx5LnNlcXVlbmNlID0gdmJsd2FpdC0+cmVxdWVzdC5zZXF1ZW5jZTsKIAl9CiAKQEAgLTE0ODcs NyArMTQ2OCw2IEBAIHN0YXRpYyBpbnQgZHJtX3F1ZXVlX3ZibGFua19ldmVudChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCBpbnQgcGlwZSwKIAogZXJyX3VubG9jazoKIAlzcGluX3VubG9ja19pcnFy ZXN0b3JlKCZkZXYtPmV2ZW50X2xvY2ssIGZsYWdzKTsKLQlrZnJlZShlKTsKIGVycl9wdXQ6CiAJ ZHJtX3ZibGFua19wdXQoZGV2LCBwaXBlKTsKIAlyZXR1cm4gcmV0OwpAQCAtMTUwOSw5ICsxNDg5 LDkgQEAgZXJyX3B1dDoKICAqLwogc3RhdGljIGludCBfX2RybV93YWl0X3ZibGFuayhzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LAogCQkJICAgICB1bmlvbiBkcm1fd2FpdF92YmxhbmsgKnZibHdhaXQs Ci0JCQkgICAgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2LAogCQkJICAgICBib29sIGNhbGxi YWNrX2Zyb21fd29yaywKLQkJCSAgICAgZHJtX3ZibGFua19jYWxsYmFja190IGNhbGxiYWNrKQor CQkJICAgICBkcm1fdmJsYW5rX2NhbGxiYWNrX3QgY2FsbGJhY2ssCisJCQkgICAgIHN0cnVjdCBk cm1fdmJsYW5rX3dhaXRfaXRlbSAqaXRlbSkKIHsKIAlzdHJ1Y3QgZHJtX3ZibGFua19jcnRjICp2 Ymxhbms7CiAJaW50IHJldDsKQEAgLTE1NjYsOCArMTU0Niw5IEBAIHN0YXRpYyBpbnQgX19kcm1f d2FpdF92Ymxhbmsoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJLyogbXVzdCBob2xkIG9uIHRv IHRoZSB2YmxhbmsgcmVmIHVudGlsIHRoZSBldmVudCBmaXJlcwogCQkgKiBkcm1fdmJsYW5rX3B1 dCB3aWxsIGJlIGNhbGxlZCBhc3luY2hyb25vdXNseQogCQkgKi8KLQkJcmV0dXJuIGRybV9xdWV1 ZV92YmxhbmtfZXZlbnQoZGV2LCBjcnRjLCB2Ymx3YWl0LCBmaWxlX3ByaXYsCi0JCQkJCSAgICAg IGNhbGxiYWNrX2Zyb21fd29yaywgY2FsbGJhY2spOworCQlyZXR1cm4gZHJtX3F1ZXVlX3ZibGFu a19ldmVudChkZXYsIGNydGMsIHZibHdhaXQsCisJCQkJCSAgICAgIGNhbGxiYWNrX2Zyb21fd29y aywgY2FsbGJhY2ssCisJCQkJCSAgICAgIGl0ZW0pOwogCX0KIAogCWlmICgoZmxhZ3MgJiBfRFJN X1ZCTEFOS19ORVhUT05NSVNTKSAmJgpAQCAtMTYwNiwxNSArMTU4Nyw0NCBAQCBpbnQgZHJtX3dh aXRfdmJsYW5rX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCQkg IHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2KQogewogCXVuaW9uIGRybV93YWl0X3ZibGFuayAq dmJsd2FpdCA9IGRhdGE7CisJc3RydWN0IGRybV9wZW5kaW5nX3ZibGFua19ldmVudCAqZSA9IE5V TEw7CisJdW5zaWduZWQgaW50IGZsYWdzID0gdmJsd2FpdC0+cmVxdWVzdC50eXBlICYgX0RSTV9W QkxBTktfRkxBR1NfTUFTSzsKKwlpbnQgcmV0OworCisJaWYgKGZsYWdzICYgX0RSTV9WQkxBTktf RVZFTlQpIHsKKwkJZSA9IGt6YWxsb2Moc2l6ZW9mICplLCBHRlBfS0VSTkVMKTsKKwkJaWYgKGUg PT0gTlVMTCkKKwkJCXJldHVybiAtRU5PTUVNOworCisJCWUtPmJhc2UucGlkID0gY3VycmVudC0+ cGlkOworCQllLT5ldmVudC5iYXNlLnR5cGUgPSBEUk1fRVZFTlRfVkJMQU5LOworCQllLT5ldmVu dC5iYXNlLmxlbmd0aCA9IHNpemVvZiBlLT5ldmVudDsKKwkJZS0+ZXZlbnQudXNlcl9kYXRhID0g dmJsd2FpdC0+cmVxdWVzdC5zaWduYWw7CisJCWUtPmJhc2UuZXZlbnQgPSAmZS0+ZXZlbnQuYmFz ZTsKKwkJZS0+YmFzZS5maWxlX3ByaXYgPSBmaWxlX3ByaXY7CisJCWUtPmJhc2UuZGVzdHJveSA9 ICh2b2lkICgqKSAoc3RydWN0IGRybV9wZW5kaW5nX2V2ZW50ICopKSBrZnJlZTsKKwkJZS0+aXRl bS5mcm9tX3VzZXJfc3BhY2UgPSB0cnVlOwogCi0JcmV0dXJuIF9fZHJtX3dhaXRfdmJsYW5rKGRl diwgdmJsd2FpdCwgZmlsZV9wcml2LCBmYWxzZSwKLQkJCQkgc2VuZF92YmxhbmtfZXZlbnQpOwor CQlpZiAoZmlsZV9wcml2LT5ldmVudF9zcGFjZSA8IHNpemVvZiBlLT5ldmVudCkgeworCQkJa2Zy ZWUoZSk7CisJCQlyZXR1cm4gLUVCVVNZOworCQl9CisJCWZpbGVfcHJpdi0+ZXZlbnRfc3BhY2Ug LT0gc2l6ZW9mIGUtPmV2ZW50OworCX0KKworCXJldCA9IF9fZHJtX3dhaXRfdmJsYW5rKGRldiwg dmJsd2FpdCwgZmFsc2UsIHNlbmRfdmJsYW5rX2V2ZW50LAorCQkJCSZlLT5pdGVtKTsKKworCWlm IChyZXQgJiYgZSkKKwkJa2ZyZWUoZSk7CisKKwlyZXR1cm4gcmV0OwogfQogCiBpbnQgZHJtX3dh aXRfdmJsYW5rX2tlcm5lbChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGludCBjb3VudCwgYm9vbCBh YnNvbHV0ZSwKIAkJCSAgIGJvb2wgY2FsbGJhY2tfZnJvbV93b3JrLAogCQkJICAgZHJtX3ZibGFu a19jYWxsYmFja190IGNhbGxiYWNrLAotCQkJICAgdW5zaWduZWQgbG9uZyB1c2VyX2RhdGEpCisJ CQkgICBzdHJ1Y3QgZHJtX3ZibGFua193YWl0X2l0ZW0gKml0ZW0pCiB7CiAJc3RydWN0IGRybV9k ZXZpY2UgKmRldiA9IGNydGMtPmRldjsKIAl1bmlvbiBkcm1fd2FpdF92YmxhbmsgdmJsd2FpdDsK QEAgLTE2MjcsMTAgKzE2MzcsMTAgQEAgaW50IGRybV93YWl0X3ZibGFua19rZXJuZWwoc3RydWN0 IGRybV9jcnRjICpjcnRjLCBpbnQgY291bnQsIGJvb2wgYWJzb2x1dGUsCiAKIAl2Ymx3YWl0LnJl cXVlc3QudHlwZSA9IHR5cGU7CiAJdmJsd2FpdC5yZXF1ZXN0LnNlcXVlbmNlID0gY291bnQ7Ci0J dmJsd2FpdC5yZXF1ZXN0LnNpZ25hbCA9IHVzZXJfZGF0YTsKKwl2Ymx3YWl0LnJlcXVlc3Quc2ln bmFsID0gMDsKIAotCXJldHVybiBfX2RybV93YWl0X3ZibGFuayhkZXYsICZ2Ymx3YWl0LCBOVUxM LCBjYWxsYmFja19mcm9tX3dvcmssCi0JCQkJIGNhbGxiYWNrKTsKKwlyZXR1cm4gX19kcm1fd2Fp dF92YmxhbmsoZGV2LCAmdmJsd2FpdCwgY2FsbGJhY2tfZnJvbV93b3JrLCBjYWxsYmFjaywKKwkJ CQkgaXRlbSk7CiB9CiBFWFBPUlRfU1lNQk9MKGRybV93YWl0X3ZibGFua19rZXJuZWwpOwogCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCmluZGV4IGI1YzNmODEuLmQyZjNjYTkgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCkBAIC0yNzE5LDYgKzI3MTksNyBAQCBzdHJ1Y3Qg dmJsYW5rX2RhdGEgewogCWludCBlaWdodDsKIAljb25zdCBjaGFyICptZXNzYWdlOwogCWJvb2wg Y2FuX3NsZWVwOworCXN0cnVjdCBkcm1fdmJsYW5rX3dhaXRfaXRlbSBpdGVtOwogfTsKIAogc3Rh dGljIHZvaWQgdmJsYW5rX2NhbGxiYWNrKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCkBAIC0yNzI2 LDE2ICsyNzI3LDE0IEBAIHN0YXRpYyB2b2lkIHZibGFua19jYWxsYmFjayhzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAogCQkJICAgIHVuc2lnbmVkIGxvbmcgc2VxLCBzdHJ1Y3QgdGltZXZhbCAqbm93 LAogCQkJICAgIGJvb2wgcHJlbWF0dXJlKQogewotCXN0cnVjdCBkcm1fcGVuZGluZ192Ymxhbmtf ZXZlbnQgKmUgPQotCQljb250YWluZXJfb2YoaXRlbSwgc3RydWN0IGRybV9wZW5kaW5nX3ZibGFu a19ldmVudCwgaXRlbSk7Ci0Jc3RydWN0IHZibGFua19kYXRhICpkYXRhID0gKHN0cnVjdCB2Ymxh bmtfZGF0YSAqKWUtPmV2ZW50LnVzZXJfZGF0YTsKKwlzdHJ1Y3QgdmJsYW5rX2RhdGEgKmRhdGEg PQorCQljb250YWluZXJfb2YoaXRlbSwgc3RydWN0IHZibGFua19kYXRhLCBpdGVtKTsKIAogCVdB Uk5fT04oZGF0YS0+Y2FuX3NsZWVwICE9IGRybV9jYW5fc2xlZXAoKSk7CiAJV0FSTl9PTihkYXRh LT5laWdodCAhPSA4KTsKIAlEUk1fREVCVUdfS01TKCJ2YmxhbmsgY2FsbGJhY2ssIHNlcTogJWx1 LCBwcmVtYXR1cmU6ICVzIG1lc3NhZ2U6JXNcbiIsCiAJCSAgICAgIHNlcSwgeWVzbm8ocHJlbWF0 dXJlKSwgZGF0YS0+bWVzc2FnZSk7CiAKLQllLT5iYXNlLmRlc3Ryb3koJmUtPmJhc2UpOwogCWtm cmVlKGRhdGEpOwogfQogCkBAIC0yNzgzLDcgKzI3ODIsNyBAQCBzdGF0aWMgaW50IGk5MTVfdmJs YW5rX3F1ZXVlX3Rlc3RfbmV3KHN0cnVjdCBzZXFfZmlsZSAqbSwgdm9pZCAqdW51c2VkKQogCiAJ RFJNX0RFQlVHX0tNUygic2NoZWR1bGluZyA2MCB2YmxhbmtzICh3aXRoIGNhbGxiYWNrLCBjYW4n dCBzbGVlcClcbiIpOwogCXJldCA9IGRybV93YWl0X3ZibGFua19rZXJuZWwoJmNydGMtPmJhc2Us IDYwLCBmYWxzZSwgZmFsc2UsCi0JCQkJICAgICB2YmxhbmtfY2FsbGJhY2ssICh1bnNpZ25lZCBs b25nKSBkYXRhMSk7CisJCQkJICAgICB2YmxhbmtfY2FsbGJhY2ssICZkYXRhMS0+aXRlbSk7CiAJ aWYgKHJldCkgewogCQlEUk1fREVCVUdfS01TKCJ2Ymxhbmsgc2NoZWR1bGUgZXJyb3I6ICVkXG4i LCByZXQpOwogCQlrZnJlZShkYXRhMSk7CkBAIC0yNzk0LDcgKzI3OTMsNyBAQCBzdGF0aWMgaW50 IGk5MTVfdmJsYW5rX3F1ZXVlX3Rlc3RfbmV3KHN0cnVjdCBzZXFfZmlsZSAqbSwgdm9pZCAqdW51 c2VkKQogCiAJRFJNX0RFQlVHX0tNUygic2NoZWR1bGluZyA2MCB2YmxhbmtzICh3aXRoIGNhbGxi YWNrLCBjYW4gc2xlZXApXG4iKTsKIAlyZXQgPSBkcm1fd2FpdF92Ymxhbmtfa2VybmVsKCZjcnRj LT5iYXNlLCA2MCwgZmFsc2UsIHRydWUsCi0JCQkJICAgICB2YmxhbmtfY2FsbGJhY2ssICh1bnNp Z25lZCBsb25nKSBkYXRhMik7CisJCQkJICAgICB2YmxhbmtfY2FsbGJhY2ssICZkYXRhMi0+aXRl bSk7CiAJaWYgKHJldCkgewogCQlEUk1fREVCVUdfS01TKCJ2Ymxhbmsgc2NoZWR1bGUgZXJyb3I6 ICVkXG4iLCByZXQpOwogCQlrZnJlZShkYXRhMik7CmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9k cm1QLmggYi9pbmNsdWRlL2RybS9kcm1QLmgKaW5kZXggNDY3MjRkOS4uNTVkNzNkMCAxMDA2NDQK LS0tIGEvaW5jbHVkZS9kcm0vZHJtUC5oCisrKyBiL2luY2x1ZGUvZHJtL2RybVAuaApAQCAtOTI2 LDcgKzkyNiw3IEBAIGV4dGVybiBpbnQgZHJtX3dhaXRfdmJsYW5rX2lvY3RsKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiBleHRlcm4gaW50IGRybV93YWl0X3ZibGFua19rZXJu ZWwoc3RydWN0IGRybV9jcnRjICpjcnRjLCBpbnQgY291bnQsCiAJCQkJICBib29sIGFic29sdXRl LCBib29sIGNhbGxiYWNrX2Zyb21fd29yaywKIAkJCQkgIGRybV92YmxhbmtfY2FsbGJhY2tfdCBj YWxsYmFjaywKLQkJCQkgIHVuc2lnbmVkIGxvbmcgdXNlcl9kYXRhKTsKKwkJCQkgIHN0cnVjdCBk cm1fdmJsYW5rX3dhaXRfaXRlbSAqaXRlbSk7CiBleHRlcm4gdTMyIGRybV92YmxhbmtfY291bnQo c3RydWN0IGRybV9kZXZpY2UgKmRldiwgaW50IGNydGMpOwogZXh0ZXJuIHUzMiBkcm1fdmJsYW5r X2NvdW50X2FuZF90aW1lKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBjcnRjLAogCQkJCSAg ICAgc3RydWN0IHRpbWV2YWwgKnZibGFua3RpbWUpOwotLSAKMi4xLjEKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QK ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==