From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH i-g-t 12/17] gem_wsim: Save some lines by changing to implicit NULL checking Date: Thu, 18 Oct 2018 16:28:10 +0100 Message-ID: <20181018152815.31816-13-tvrtko.ursulin@linux.intel.com> References: <20181018152815.31816-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm1-x343.google.com (mail-wm1-x343.google.com [IPv6:2a00:1450:4864:20::343]) by gabe.freedesktop.org (Postfix) with ESMTPS id CF1BD6E028 for ; Thu, 18 Oct 2018 15:28:35 +0000 (UTC) Received: by mail-wm1-x343.google.com with SMTP id y144-v6so734515wmd.4 for ; Thu, 18 Oct 2018 08:28:35 -0700 (PDT) In-Reply-To: <20181018152815.31816-1-tvrtko.ursulin@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: igt-dev@lists.freedesktop.org Cc: Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGNhbiBp bXByb3ZlIHRoZSBwYXJzaW5nIGxvb3AgcmVhZGFiaWxpdHkgYSBiaXQgbW9yZSBieSBhdm9pZGlu ZyBzb21lCmxpbmUgYnJlYWtzIGNhdXNlZCBieSBleHBsaWNpdCBOVUxMIGNoZWNrcy4KClNpZ25l ZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQog YmVuY2htYXJrcy9nZW1fd3NpbS5jIHwgMzkgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvYmVuY2htYXJrcy9nZW1fd3NpbS5jIGIvYmVuY2htYXJrcy9nZW1f d3NpbS5jCmluZGV4IGZiZWMyM2FkMTc1My4uNTkyNDNhZjVjZGU4IDEwMDY0NAotLS0gYS9iZW5j aG1hcmtzL2dlbV93c2ltLmMKKysrIGIvYmVuY2htYXJrcy9nZW1fd3NpbS5jCkBAIC0zODYsNyAr Mzg2LDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICphcmcsIHVuc2lnbmVkIGludCBm bGFncywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAogCWlndF9hc3NlcnQoZGVzYyk7CiAKLQl3 aGlsZSAoKF90b2tlbiA9IHN0cnRva19yKHRzdGFydCwgIiwiLCAmdGN0eCkpICE9IE5VTEwpIHsK Kwl3aGlsZSAoKF90b2tlbiA9IHN0cnRva19yKHRzdGFydCwgIiwiLCAmdGN0eCkpKSB7CiAJCXRz dGFydCA9IE5VTEw7CiAJCXRva2VuID0gc3RyZHVwKF90b2tlbik7CiAJCWlndF9hc3NlcnQodG9r ZW4pOwpAQCAtMzk0LDEyICszOTQsMTEgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICph cmcsIHVuc2lnbmVkIGludCBmbGFncywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAkJdmFsaWQg PSAwOwogCQltZW1zZXQoJnN0ZXAsIDAsIHNpemVvZihzdGVwKSk7CiAKLQkJaWYgKChmaWVsZCA9 IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9IE5VTEwpIHsKKwkJaWYgKChmaWVsZCA9 IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpKSB7CiAJCQlmc3RhcnQgPSBOVUxMOwogCiAJ CQlpZiAoIXN0cmNtcChmaWVsZCwgImQiKSkgewotCQkJCWlmICgoZmllbGQgPSBzdHJ0b2tfcihm c3RhcnQsICIuIiwgJmZjdHgpKSAhPQotCQkJCSAgICBOVUxMKSB7CisJCQkJaWYgKChmaWVsZCA9 IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpKSB7CiAJCQkJCXRtcCA9IGF0b2koZmllbGQp OwogCQkJCQljaGVja19hcmcodG1wIDw9IDAsCiAJCQkJCQkgICJJbnZhbGlkIGRlbGF5IGF0IHN0 ZXAgJXUhXG4iLApAQCAtNDA5LDggKzQwOCw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2Fy ZyAqYXJnLCB1bnNpZ25lZCBpbnQgZmxhZ3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJ CWdvdG8gYWRkX3N0ZXA7CiAJCQkJfQogCQkJfSBlbHNlIGlmICghc3RyY21wKGZpZWxkLCAicCIp KSB7Ci0JCQkJaWYgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9Ci0J CQkJICAgIE5VTEwpIHsKKwkJCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZm Y3R4KSkpIHsKIAkJCQkJdG1wID0gYXRvaShmaWVsZCk7CiAJCQkJCWNoZWNrX2FyZyh0bXAgPD0g MCwKIAkJCQkJCSAgIkludmFsaWQgcGVyaW9kIGF0IHN0ZXAgJXUhXG4iLApAQCAtNDIxLDggKzQx OSw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJnLCB1bnNpZ25lZCBpbnQgZmxh Z3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJfQogCQkJfSBlbHNlIGlmICghc3RyY21w KGZpZWxkLCAiUCIpKSB7CiAJCQkJdW5zaWduZWQgaW50IG5yID0gMDsKLQkJCQl3aGlsZSAoKGZp ZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkgIT0KLQkJCQkgICAgTlVMTCkgewor CQkJCXdoaWxlICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIuIiwgJmZjdHgpKSkgewogCQkJ CQl0bXAgPSBhdG9pKGZpZWxkKTsKIAkJCQkJY2hlY2tfYXJnKG5yID09IDAgJiYgdG1wIDw9IDAs CiAJCQkJCQkgICJJbnZhbGlkIGNvbnRleHQgYXQgc3RlcCAldSFcbiIsCkBAIC00NDIsOCArNDM5 LDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICphcmcsIHVuc2lnbmVkIGludCBmbGFn cywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAkJCQlzdGVwLnR5cGUgPSBDVFhfUFJJT1JJVFk7 CiAJCQkJZ290byBhZGRfc3RlcDsKIAkJCX0gZWxzZSBpZiAoIXN0cmNtcChmaWVsZCwgInMiKSkg ewotCQkJCWlmICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIuIiwgJmZjdHgpKSAhPQotCQkJ CSAgICBOVUxMKSB7CisJCQkJaWYgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0 eCkpKSB7CiAJCQkJCXRtcCA9IGF0b2koZmllbGQpOwogCQkJCQljaGVja19hcmcodG1wID49IDAg fHwKIAkJCQkJCSAgKChpbnQpbnJfc3RlcHMgKyB0bXApIDwgMCwKQEAgLTQ1NCw4ICs0NTAsNyBA QCBwYXJzZV93b3JrbG9hZChzdHJ1Y3Qgd19hcmcgKmFyZywgdW5zaWduZWQgaW50IGZsYWdzLCBz dHJ1Y3Qgd29ya2xvYWQgKmFwcF93KQogCQkJCQlnb3RvIGFkZF9zdGVwOwogCQkJCX0KIAkJCX0g ZWxzZSBpZiAoIXN0cmNtcChmaWVsZCwgInQiKSkgewotCQkJCWlmICgoZmllbGQgPSBzdHJ0b2tf cihmc3RhcnQsICIuIiwgJmZjdHgpKSAhPQotCQkJCSAgICBOVUxMKSB7CisJCQkJaWYgKChmaWVs ZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpKSB7CiAJCQkJCXRtcCA9IGF0b2koZmll bGQpOwogCQkJCQljaGVja19hcmcodG1wIDwgMCwKIAkJCQkJCSAgIkludmFsaWQgdGhyb3R0bGUg YXQgc3RlcCAldSFcbiIsCkBAIC00NjUsOCArNDYwLDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0 IHdfYXJnICphcmcsIHVuc2lnbmVkIGludCBmbGFncywgc3RydWN0IHdvcmtsb2FkICphcHBfdykK IAkJCQkJZ290byBhZGRfc3RlcDsKIAkJCQl9CiAJCQl9IGVsc2UgaWYgKCFzdHJjbXAoZmllbGQs ICJxIikpIHsKLQkJCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkg IT0KLQkJCQkgICAgTlVMTCkgeworCQkJCWlmICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIu IiwgJmZjdHgpKSkgewogCQkJCQl0bXAgPSBhdG9pKGZpZWxkKTsKIAkJCQkJY2hlY2tfYXJnKHRt cCA8IDAsCiAJCQkJCQkgICJJbnZhbGlkIHFkIHRocm90dGxlIGF0IHN0ZXAgJXUhXG4iLApAQCAt NDc2LDggKzQ3MCw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJnLCB1bnNpZ25l ZCBpbnQgZmxhZ3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJCWdvdG8gYWRkX3N0ZXA7 CiAJCQkJfQogCQkJfSBlbHNlIGlmICghc3RyY21wKGZpZWxkLCAiYSIpKSB7Ci0JCQkJaWYgKChm aWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9Ci0JCQkJICAgIE5VTEwpIHsK KwkJCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkpIHsKIAkJCQkJ dG1wID0gYXRvaShmaWVsZCk7CiAJCQkJCWNoZWNrX2FyZyh0bXAgPj0gMCwKIAkJCQkJCSAgIklu dmFsaWQgc3cgZmVuY2Ugc2lnbmFsIGF0IHN0ZXAgJXUhXG4iLApAQCAtNDkxLDggKzQ4NCw3IEBA IHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJnLCB1bnNpZ25lZCBpbnQgZmxhZ3MsIHN0 cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJZ290byBhZGRfc3RlcDsKIAkJCX0gZWxzZSBpZiAo IXN0cmNtcChmaWVsZCwgIk0iKSkgewogCQkJCXVuc2lnbmVkIGludCBuciA9IDA7Ci0JCQkJd2hp bGUgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9Ci0JCQkJICAgIE5V TEwpIHsKKwkJCQl3aGlsZSAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkp IHsKIAkJCQkJdG1wID0gYXRvaShmaWVsZCk7CiAJCQkJCWNoZWNrX2FyZyhuciA9PSAwICYmIHRt cCA8PSAwLAogCQkJCQkJICAiSW52YWxpZCBjb250ZXh0IGF0IHN0ZXAgJXUhXG4iLApAQCAtNTE4 LDggKzUxMCw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJnLCB1bnNpZ25lZCBp bnQgZmxhZ3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJZ290byBhZGRfc3RlcDsKIAkJ CX0gZWxzZSBpZiAoIXN0cmNtcChmaWVsZCwgIlgiKSkgewogCQkJCXVuc2lnbmVkIGludCBuciA9 IDA7Ci0JCQkJd2hpbGUgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9 Ci0JCQkJICAgIE5VTEwpIHsKKwkJCQl3aGlsZSAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAi LiIsICZmY3R4KSkpIHsKIAkJCQkJdG1wID0gYXRvaShmaWVsZCk7CiAJCQkJCWNoZWNrX2FyZyhu ciA9PSAwICYmIHRtcCA8PSAwLAogCQkJCQkJICAiSW52YWxpZCBjb250ZXh0IGF0IHN0ZXAgJXUh XG4iLApAQCAtNTUxLDcgKzU0Miw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJn LCB1bnNpZ25lZCBpbnQgZmxhZ3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQl2YWxpZCsr OwogCQl9CiAKLQkJaWYgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9 IE5VTEwpIHsKKwkJaWYgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpKSB7 CiAJCQlmc3RhcnQgPSBOVUxMOwogCiAJCQlpID0gc3RyX3RvX2VuZ2luZShmaWVsZCk7CkBAIC01 NjQsNyArNTU1LDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICphcmcsIHVuc2lnbmVk IGludCBmbGFncywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAkJCQliY3NfdXNlZCA9IHRydWU7 CiAJCX0KIAotCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkgIT0g TlVMTCkgeworCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkpIHsK IAkJCWNoYXIgKnNlcCA9IE5VTEw7CiAJCQlsb25nIGludCB0bXBsOwogCkBAIC01OTIsNyArNTgz LDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICphcmcsIHVuc2lnbmVkIGludCBmbGFn cywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAkJCXZhbGlkKys7CiAJCX0KIAotCQlpZiAoKGZp ZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkgIT0gTlVMTCkgeworCQlpZiAoKGZp ZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkpIHsKIAkJCWZzdGFydCA9IE5VTEw7 CiAKIAkJCXRtcCA9IHBhcnNlX2RlcGVuZGVuY2llcyhucl9zdGVwcywgJnN0ZXAsIGZpZWxkKTsK QEAgLTYwMiw3ICs1OTMsNyBAQCBwYXJzZV93b3JrbG9hZChzdHJ1Y3Qgd19hcmcgKmFyZywgdW5z aWduZWQgaW50IGZsYWdzLCBzdHJ1Y3Qgd29ya2xvYWQgKmFwcF93KQogCQkJdmFsaWQrKzsKIAkJ fQogCi0JCWlmICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIuIiwgJmZjdHgpKSAhPSBOVUxM KSB7CisJCWlmICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIuIiwgJmZjdHgpKSkgewogCQkJ ZnN0YXJ0ID0gTlVMTDsKIAogCQkJY2hlY2tfYXJnKHN0cmxlbihmaWVsZCkgIT0gMSB8fAotLSAK Mi4xNy4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm1-x344.google.com (mail-wm1-x344.google.com [IPv6:2a00:1450:4864:20::344]) by gabe.freedesktop.org (Postfix) with ESMTPS id 18E3A6E01C for ; Thu, 18 Oct 2018 15:28:36 +0000 (UTC) Received: by mail-wm1-x344.google.com with SMTP id 189-v6so707619wmw.2 for ; Thu, 18 Oct 2018 08:28:36 -0700 (PDT) From: Tvrtko Ursulin Date: Thu, 18 Oct 2018 16:28:10 +0100 Message-Id: <20181018152815.31816-13-tvrtko.ursulin@linux.intel.com> In-Reply-To: <20181018152815.31816-1-tvrtko.ursulin@linux.intel.com> References: <20181018152815.31816-1-tvrtko.ursulin@linux.intel.com> Subject: [igt-dev] [PATCH i-g-t 12/17] gem_wsim: Save some lines by changing to implicit NULL checking List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 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 Cc: Intel-gfx@lists.freedesktop.org, Tvrtko Ursulin List-ID: RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGNhbiBp bXByb3ZlIHRoZSBwYXJzaW5nIGxvb3AgcmVhZGFiaWxpdHkgYSBiaXQgbW9yZSBieSBhdm9pZGlu ZyBzb21lCmxpbmUgYnJlYWtzIGNhdXNlZCBieSBleHBsaWNpdCBOVUxMIGNoZWNrcy4KClNpZ25l ZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQog YmVuY2htYXJrcy9nZW1fd3NpbS5jIHwgMzkgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvYmVuY2htYXJrcy9nZW1fd3NpbS5jIGIvYmVuY2htYXJrcy9nZW1f d3NpbS5jCmluZGV4IGZiZWMyM2FkMTc1My4uNTkyNDNhZjVjZGU4IDEwMDY0NAotLS0gYS9iZW5j aG1hcmtzL2dlbV93c2ltLmMKKysrIGIvYmVuY2htYXJrcy9nZW1fd3NpbS5jCkBAIC0zODYsNyAr Mzg2LDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICphcmcsIHVuc2lnbmVkIGludCBm bGFncywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAogCWlndF9hc3NlcnQoZGVzYyk7CiAKLQl3 aGlsZSAoKF90b2tlbiA9IHN0cnRva19yKHRzdGFydCwgIiwiLCAmdGN0eCkpICE9IE5VTEwpIHsK Kwl3aGlsZSAoKF90b2tlbiA9IHN0cnRva19yKHRzdGFydCwgIiwiLCAmdGN0eCkpKSB7CiAJCXRz dGFydCA9IE5VTEw7CiAJCXRva2VuID0gc3RyZHVwKF90b2tlbik7CiAJCWlndF9hc3NlcnQodG9r ZW4pOwpAQCAtMzk0LDEyICszOTQsMTEgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICph cmcsIHVuc2lnbmVkIGludCBmbGFncywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAkJdmFsaWQg PSAwOwogCQltZW1zZXQoJnN0ZXAsIDAsIHNpemVvZihzdGVwKSk7CiAKLQkJaWYgKChmaWVsZCA9 IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9IE5VTEwpIHsKKwkJaWYgKChmaWVsZCA9 IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpKSB7CiAJCQlmc3RhcnQgPSBOVUxMOwogCiAJ CQlpZiAoIXN0cmNtcChmaWVsZCwgImQiKSkgewotCQkJCWlmICgoZmllbGQgPSBzdHJ0b2tfcihm c3RhcnQsICIuIiwgJmZjdHgpKSAhPQotCQkJCSAgICBOVUxMKSB7CisJCQkJaWYgKChmaWVsZCA9 IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpKSB7CiAJCQkJCXRtcCA9IGF0b2koZmllbGQp OwogCQkJCQljaGVja19hcmcodG1wIDw9IDAsCiAJCQkJCQkgICJJbnZhbGlkIGRlbGF5IGF0IHN0 ZXAgJXUhXG4iLApAQCAtNDA5LDggKzQwOCw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2Fy ZyAqYXJnLCB1bnNpZ25lZCBpbnQgZmxhZ3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJ CWdvdG8gYWRkX3N0ZXA7CiAJCQkJfQogCQkJfSBlbHNlIGlmICghc3RyY21wKGZpZWxkLCAicCIp KSB7Ci0JCQkJaWYgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9Ci0J CQkJICAgIE5VTEwpIHsKKwkJCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZm Y3R4KSkpIHsKIAkJCQkJdG1wID0gYXRvaShmaWVsZCk7CiAJCQkJCWNoZWNrX2FyZyh0bXAgPD0g MCwKIAkJCQkJCSAgIkludmFsaWQgcGVyaW9kIGF0IHN0ZXAgJXUhXG4iLApAQCAtNDIxLDggKzQx OSw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJnLCB1bnNpZ25lZCBpbnQgZmxh Z3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJfQogCQkJfSBlbHNlIGlmICghc3RyY21w KGZpZWxkLCAiUCIpKSB7CiAJCQkJdW5zaWduZWQgaW50IG5yID0gMDsKLQkJCQl3aGlsZSAoKGZp ZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkgIT0KLQkJCQkgICAgTlVMTCkgewor CQkJCXdoaWxlICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIuIiwgJmZjdHgpKSkgewogCQkJ CQl0bXAgPSBhdG9pKGZpZWxkKTsKIAkJCQkJY2hlY2tfYXJnKG5yID09IDAgJiYgdG1wIDw9IDAs CiAJCQkJCQkgICJJbnZhbGlkIGNvbnRleHQgYXQgc3RlcCAldSFcbiIsCkBAIC00NDIsOCArNDM5 LDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICphcmcsIHVuc2lnbmVkIGludCBmbGFn cywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAkJCQlzdGVwLnR5cGUgPSBDVFhfUFJJT1JJVFk7 CiAJCQkJZ290byBhZGRfc3RlcDsKIAkJCX0gZWxzZSBpZiAoIXN0cmNtcChmaWVsZCwgInMiKSkg ewotCQkJCWlmICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIuIiwgJmZjdHgpKSAhPQotCQkJ CSAgICBOVUxMKSB7CisJCQkJaWYgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0 eCkpKSB7CiAJCQkJCXRtcCA9IGF0b2koZmllbGQpOwogCQkJCQljaGVja19hcmcodG1wID49IDAg fHwKIAkJCQkJCSAgKChpbnQpbnJfc3RlcHMgKyB0bXApIDwgMCwKQEAgLTQ1NCw4ICs0NTAsNyBA QCBwYXJzZV93b3JrbG9hZChzdHJ1Y3Qgd19hcmcgKmFyZywgdW5zaWduZWQgaW50IGZsYWdzLCBz dHJ1Y3Qgd29ya2xvYWQgKmFwcF93KQogCQkJCQlnb3RvIGFkZF9zdGVwOwogCQkJCX0KIAkJCX0g ZWxzZSBpZiAoIXN0cmNtcChmaWVsZCwgInQiKSkgewotCQkJCWlmICgoZmllbGQgPSBzdHJ0b2tf cihmc3RhcnQsICIuIiwgJmZjdHgpKSAhPQotCQkJCSAgICBOVUxMKSB7CisJCQkJaWYgKChmaWVs ZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpKSB7CiAJCQkJCXRtcCA9IGF0b2koZmll bGQpOwogCQkJCQljaGVja19hcmcodG1wIDwgMCwKIAkJCQkJCSAgIkludmFsaWQgdGhyb3R0bGUg YXQgc3RlcCAldSFcbiIsCkBAIC00NjUsOCArNDYwLDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0 IHdfYXJnICphcmcsIHVuc2lnbmVkIGludCBmbGFncywgc3RydWN0IHdvcmtsb2FkICphcHBfdykK IAkJCQkJZ290byBhZGRfc3RlcDsKIAkJCQl9CiAJCQl9IGVsc2UgaWYgKCFzdHJjbXAoZmllbGQs ICJxIikpIHsKLQkJCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkg IT0KLQkJCQkgICAgTlVMTCkgeworCQkJCWlmICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIu IiwgJmZjdHgpKSkgewogCQkJCQl0bXAgPSBhdG9pKGZpZWxkKTsKIAkJCQkJY2hlY2tfYXJnKHRt cCA8IDAsCiAJCQkJCQkgICJJbnZhbGlkIHFkIHRocm90dGxlIGF0IHN0ZXAgJXUhXG4iLApAQCAt NDc2LDggKzQ3MCw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJnLCB1bnNpZ25l ZCBpbnQgZmxhZ3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJCWdvdG8gYWRkX3N0ZXA7 CiAJCQkJfQogCQkJfSBlbHNlIGlmICghc3RyY21wKGZpZWxkLCAiYSIpKSB7Ci0JCQkJaWYgKChm aWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9Ci0JCQkJICAgIE5VTEwpIHsK KwkJCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkpIHsKIAkJCQkJ dG1wID0gYXRvaShmaWVsZCk7CiAJCQkJCWNoZWNrX2FyZyh0bXAgPj0gMCwKIAkJCQkJCSAgIklu dmFsaWQgc3cgZmVuY2Ugc2lnbmFsIGF0IHN0ZXAgJXUhXG4iLApAQCAtNDkxLDggKzQ4NCw3IEBA IHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJnLCB1bnNpZ25lZCBpbnQgZmxhZ3MsIHN0 cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJZ290byBhZGRfc3RlcDsKIAkJCX0gZWxzZSBpZiAo IXN0cmNtcChmaWVsZCwgIk0iKSkgewogCQkJCXVuc2lnbmVkIGludCBuciA9IDA7Ci0JCQkJd2hp bGUgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9Ci0JCQkJICAgIE5V TEwpIHsKKwkJCQl3aGlsZSAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkp IHsKIAkJCQkJdG1wID0gYXRvaShmaWVsZCk7CiAJCQkJCWNoZWNrX2FyZyhuciA9PSAwICYmIHRt cCA8PSAwLAogCQkJCQkJICAiSW52YWxpZCBjb250ZXh0IGF0IHN0ZXAgJXUhXG4iLApAQCAtNTE4 LDggKzUxMCw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJnLCB1bnNpZ25lZCBp bnQgZmxhZ3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQkJZ290byBhZGRfc3RlcDsKIAkJ CX0gZWxzZSBpZiAoIXN0cmNtcChmaWVsZCwgIlgiKSkgewogCQkJCXVuc2lnbmVkIGludCBuciA9 IDA7Ci0JCQkJd2hpbGUgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9 Ci0JCQkJICAgIE5VTEwpIHsKKwkJCQl3aGlsZSAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAi LiIsICZmY3R4KSkpIHsKIAkJCQkJdG1wID0gYXRvaShmaWVsZCk7CiAJCQkJCWNoZWNrX2FyZyhu ciA9PSAwICYmIHRtcCA8PSAwLAogCQkJCQkJICAiSW52YWxpZCBjb250ZXh0IGF0IHN0ZXAgJXUh XG4iLApAQCAtNTUxLDcgKzU0Miw3IEBAIHBhcnNlX3dvcmtsb2FkKHN0cnVjdCB3X2FyZyAqYXJn LCB1bnNpZ25lZCBpbnQgZmxhZ3MsIHN0cnVjdCB3b3JrbG9hZCAqYXBwX3cpCiAJCQl2YWxpZCsr OwogCQl9CiAKLQkJaWYgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpICE9 IE5VTEwpIHsKKwkJaWYgKChmaWVsZCA9IHN0cnRva19yKGZzdGFydCwgIi4iLCAmZmN0eCkpKSB7 CiAJCQlmc3RhcnQgPSBOVUxMOwogCiAJCQlpID0gc3RyX3RvX2VuZ2luZShmaWVsZCk7CkBAIC01 NjQsNyArNTU1LDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICphcmcsIHVuc2lnbmVk IGludCBmbGFncywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAkJCQliY3NfdXNlZCA9IHRydWU7 CiAJCX0KIAotCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkgIT0g TlVMTCkgeworCQlpZiAoKGZpZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkpIHsK IAkJCWNoYXIgKnNlcCA9IE5VTEw7CiAJCQlsb25nIGludCB0bXBsOwogCkBAIC01OTIsNyArNTgz LDcgQEAgcGFyc2Vfd29ya2xvYWQoc3RydWN0IHdfYXJnICphcmcsIHVuc2lnbmVkIGludCBmbGFn cywgc3RydWN0IHdvcmtsb2FkICphcHBfdykKIAkJCXZhbGlkKys7CiAJCX0KIAotCQlpZiAoKGZp ZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkgIT0gTlVMTCkgeworCQlpZiAoKGZp ZWxkID0gc3RydG9rX3IoZnN0YXJ0LCAiLiIsICZmY3R4KSkpIHsKIAkJCWZzdGFydCA9IE5VTEw7 CiAKIAkJCXRtcCA9IHBhcnNlX2RlcGVuZGVuY2llcyhucl9zdGVwcywgJnN0ZXAsIGZpZWxkKTsK QEAgLTYwMiw3ICs1OTMsNyBAQCBwYXJzZV93b3JrbG9hZChzdHJ1Y3Qgd19hcmcgKmFyZywgdW5z aWduZWQgaW50IGZsYWdzLCBzdHJ1Y3Qgd29ya2xvYWQgKmFwcF93KQogCQkJdmFsaWQrKzsKIAkJ fQogCi0JCWlmICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIuIiwgJmZjdHgpKSAhPSBOVUxM KSB7CisJCWlmICgoZmllbGQgPSBzdHJ0b2tfcihmc3RhcnQsICIuIiwgJmZjdHgpKSkgewogCQkJ ZnN0YXJ0ID0gTlVMTDsKIAogCQkJY2hlY2tfYXJnKHN0cmxlbihmaWVsZCkgIT0gMSB8fAotLSAK Mi4xNy4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpp Z3QtZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXYK