From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.0 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,T_DKIMWL_WL_HIGH,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DB0C6C282DD for ; Fri, 24 May 2019 03:16:24 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id AE850217D9 for ; Fri, 24 May 2019 03:16:24 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="k6aWcK8D"; dkim=fail reason="key not found in DNS" (0-bit key) header.d=codeaurora.org header.i=@codeaurora.org header.b="Yx6m/VB2"; dkim=fail reason="key not found in DNS" (0-bit key) header.d=codeaurora.org header.i=@codeaurora.org header.b="ipYr7kWr" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AE850217D9 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender:Content-Type: Content-Transfer-Encoding:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Message-ID:Subject:To:From:Date:MIME-Version: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=BLbAuanGhOK36qJw9LR/jokFGmqfM6Nzey7t+mx0cq8=; b=k6aWcK8DBO0Cl+IGjC30TK0Rqq PQYoEkAtKDiTI105kBMk4309WWtjpAYsNCvFHWNDmMqdKLohzHMTw7L22sFj/9WZL9SZkYu7k0Sok AP0vlKekNFdgSUl8bEOiTGK0VWkcsstnroG4obd2Z4mBHhfV6honQIUl2oB0rtGEdnZWnH4C55/IM zBV97W/hEUmraZ17tptRNew5TBIZgz24AWVP/Nq5EG41LMYDvgaucR4kY/THFZq1T0duc8UMaCSw8 bMezJjNw/uxd1/O3Qbk0V9HUh3BPHdBfZRTgw6aXVnyc0AN6aCq5w/2JMk+VUQa795S8RxXnwdk3l ZJ5XnLSQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1hU0gw-0002Th-8L; Fri, 24 May 2019 03:16:22 +0000 Received: from smtp.codeaurora.org ([198.145.29.96]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1hU0gs-0002TL-N4 for linux-arm-kernel@lists.infradead.org; Fri, 24 May 2019 03:16:20 +0000 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id AEFED6087A; Fri, 24 May 2019 03:16:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1558667777; bh=UfUOkq1yueIuFHRCYwReJukg9DnuYytlPgBSWsYteYI=; h=Date:From:To:Cc:Subject:From; b=Yx6m/VB2KcpMl2a85QuiJUCONQ5dv/ZK0PkE2IXk/NglQdiAslKZCIlbBB8CtAAAN 0Sz8KHOHQi658aI+qT+MYSM6Fm22LFnDTL7OS2th6i2ZQiXyx5MXPWIKAXFP3Rp97c yiS/QA5W4P6lXfXeHRl/kMjgB3EIR4AFb+hg3vFY= Received: from mail.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.codeaurora.org (Postfix) with ESMTP id 7ED2C602F8; Fri, 24 May 2019 03:16:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1558667776; bh=UfUOkq1yueIuFHRCYwReJukg9DnuYytlPgBSWsYteYI=; h=Date:From:To:Cc:Subject:From; b=ipYr7kWrhDYzMDqvpORoOVR37GGSUGG5J1iH61s8hM2Kbbc8Fb+oJQy6zdPy6/D7G zc7T4QauzYvsCK9YTxkIqwqyJn9UED08wp2wBL4mNpb7pTuObCfc3WMYv9eryfZIq7 3+7vxYy9KpPgGRNca09vcC4TjXbzWbxlh8Y79k7Y= MIME-Version: 1.0 Date: Fri, 24 May 2019 11:16:16 +0800 From: tengfeif@codeaurora.org To: Anshuman Khandual Subject: [PATCH] arm64: break while loop if task had been rescheduled Message-ID: <52076172bb8a55305846f6d4dc97bb52@codeaurora.org> X-Sender: tengfeif@codeaurora.org User-Agent: Roundcube Webmail/1.2.5 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190523_201618_786981_88A51BE9 X-CRM114-Status: GOOD ( 19.09 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: mark.rutland@arm.com, tengfei@codeaurora.org, marc.zyngier@arm.com, catalin.marinas@arm.com, will.deacon@arm.com, linux-kernel@vger.kernel.org, andreyknvl@google.com, linux-arm-kernel@lists.infradead.org Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org V2hlbiB0YXNrIGlzbid0IGN1cnJlbnQgdGFzaywgdGhpcyB0YXNrJ3Mgc3RhdGUgaGF2ZQpjaGFu Y2UgdG8gYmUgY2hhbmdlZCBkdXJpbmcgcHJpbnRpbmcgdGhpcyB0YXNrJ3MKYmFja3RyYWNlLCBz byBpdCBpcyBwb3NzaWJsZSB0aGF0IHRhc2sncyBmcCBhbmQgZnArOApoYXZlIHRoZSBzYW1lIHZh dWxlLCBzbyBjYW5ub3QgYnJlYWsgdGhlIHdoaWxlIGxvb3AuClRvIGZpeCB0aGlzIGlzc3VlLCB3 ZSBmaXJzdCBzYXZlIHRoZSB0YXNrJ3Mgc3RhdGUsIHNwCmFuZCBmcCwgdGhlbiB3ZSB3aWxsIGdl dCB0aGUgdGFzaydzIGN1cnJlbnQgc3RhdGUsIHNwCmFuZCBmcCBpbiBlYWNoIHdoaWxlIGFnYWlu LiB3ZSB3aWxsIHN0b3AgdG8gcHJpbnQKYmFja3RyYWNlIGlmIHdlIGZvdW5kIGFueSBvZiB0aGUg dmFsdWVzIGFyZSBkaWZmZXJlbnQKdGhhbiB3aGF0IHdlIHNhdmVkLgoKLyoqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqYW5zd2VyIApxdWVzdGlvbioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKiovClRoaXMgaXMgdmVyeSBjb25mdXNpbmcuIElJVUMgaXQgc3VnZ2VzdHMgdGhh dCB3aGlsZSBwcmludGluZwp0aGUgYmFja3RyYWNlIGZvciBub24tY3VycmVudCB0YXNrcyB0aGUg ZG8vd2hpbGUgbG9vcCBkb2VzIG5vdApleGl0IGJlY2F1c2UgZnAgYW5kIGZwKzggbWlnaHQgaGF2 ZSB0aGUgc2FtZSB2YWx1ZSA/IFdoZW4gd291bGQKdGhpcyBoYXBwZW4gPyBFdmVuIGluIHRoYXQg Y2FzZSB0aGUgY29tbWl0IG1lc3NhZ2UgaGVyZSBkb2VzIG5vdApwcm9wZXJseSBtYXRjaCB0aGUg Y2hhbmdlIGluIHRoaXMgcGF0Y2guCgpJbiBvdXIgaXNzdWUsIHdlIGdvdCBmcD1wYz0weEZGRkZG RjgwMjVBMTNCQTAsIHNvIGNhbm5vdCBleGl0IHdoaWxlCmxvb3AgaW4gZHVtcF9iYXNrdHJhY2Uo KS4KQWZ0ZXIgYW5hbHl6ZSBvdXIgaXNzdWUncyBkdW1wLCB3ZSBmb3VuZCBvbmUgdGFzayhzdWNo IGFzOiB0YXNrIEEpCmlzIGV4aXRpbmcgdmlhIGludm9rZSBkb19leGl0KCkgZHVyaW5nIGFub3Ro ZXIgdGFzayBpcyBzaG93aW5nIHRhc2sKQSdzIGR1bXB0YXNrLiBJbiBrZXJuZWwgY29kZSwgZG9f ZXhpdCgpIGFuZCBleGl0X25vdGlmeSBhcmUgZGVmaW5lZAphcyBmb2xsb3dzOgp2b2lkIG5vcmV0 dXJuIGRvX2V4aXQobG9uZyBjb2RlKQp7CiAgICAgIC4uLi4uLgogICAgICBleGl0X25vdGlmeSh0 c2ssIGdyb3VwX2RlYWQpOwogICAgICAuLi4uLi4KfQpzdGF0aWMgdm9pZCBleGl0X25vdGlmeShz dHJ1Y3QgdGFza19zdHJ1Y3QgKnRzaywgaW50IGdyb3VwX2RlYWQpCnsKICAgICAgLi4uLi4uCn0K QmVjYXVzZSBvZiBleGl0X25vdGlmeSgpIGlzIGEgc3RhdGljIGZ1bmN0aW9uLCBzbyBpdCBpcyBp bmxpbmVkIHRvCmRvX2V4aXQoKSB3aGVuIGNvbXBpbGUga2VybmVsLCBzbyB3ZSBjYW4gZ2V0IHBh cnRpYWwgYXNzZW1ibHkgY29kZQpvZiBkb19leGl0KCkgYXMgZm9sbG93czoK4oCm4oCmCnsKICAg ICAgICAgYm9vbCBhdXRvcmVhcDsKICAgICAgICAgc3RydWN0IHRhc2tfc3RydWN0ICpwLCAqbjsK ICAgICAgICAgTElTVF9IRUFEKGRlYWQpOwoKICAgICAgICAgd3JpdGVfbG9ja19pcnEoJnRhc2ts aXN0X2xvY2spOwogICAgICBjMTA6ICAgICAgIDkwMDAwMDAwICAgICAgICBhZHJwICAgIHgwLCAw IDx0YXNrbGlzdF9sb2NrPgogICAgICBjMTQ6ICAgICAgIDkxMDAwM2U4ICAgICAgICBtb3YgICAg IHg4LCBzcAogICAgICBjMTg6ICAgICAgIDkxMDAwMDAwICAgICAgICBhZGQgICAgIHgwLCB4MCwg IzB4MAoqLwpzdGF0aWMgdm9pZCBleGl0X25vdGlmeShzdHJ1Y3QgdGFza19zdHJ1Y3QgKnRzaywg aW50IGdyb3VwX2RlYWQpCnsKICAgICAgICAgYm9vbCBhdXRvcmVhcDsKICAgICAgICAgc3RydWN0 IHRhc2tfc3RydWN0ICpwLCAqbjsKICAgICAgICAgTElTVF9IRUFEKGRlYWQpOwogICAgICBjMWM6 ICAgICAgIGE5MDAyM2U4ICAgICAgICBzdHAgICAgIHg4LCB4OCwgW3NwXQoKICAgICAgICAgd3Jp dGVfbG9ja19pcnEoJnRhc2tsaXN0X2xvY2spOwogICAgICBjMjA6ICAgICAgIDk0MDAwMDAwICAg ICAgICBibCAgICAgIDAgPF9yYXdfd3JpdGVfbG9ja19pcnE+CiAgICAgIGMyNDogICAgICAgZjk0 MzUyNjggICAgICAgIGxkciAgICAgeDgsIFt4MTksIzE2OTZdCuKApuKApgogRnJvbSB0aGUgY29k ZSAiYzE0OiIgYW5kICJjMWM6Iiwgd2Ugd2lsbCBmaW5kIHNwJ3MgYWRkciB2YWx1ZSBpcyBzdG9y ZWQKaW4gc3AgYW5kIHNwKzgsIHNvIHNwJ3MgdmF1bGUgZXF1YWwgKHNwKzgpJ3MgdmFsdWUuCklu IG91ciBpc3N1ZSwgdGhlcmUgaXMgYSBjaGFuY2Ugb2YgZnAgcG9pbnQgc3AsIHNvIHRoZXJlIHdp bGwgYmUgCmZwPXBjPWZwJ3MKYWRkciB2YWx1ZSxzbyBjb2RlIGNhbm5vdCBicmVhayBmcm9tIHdo aWxlIGxvb3AgaW4gZHVtcF9iYWNrdHJhY2UoKS4KCi8qKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKmFuc3dlciAKcXVlc3Rpb24qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq LwoKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqYW5zd2VyIApxdWVzdGlvbioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKiovClRoaXMgcGF0Y2ggdHJpZXMgdG8gc3RvcCBw cmludGluZyB0aGUgc3RhY2sgZm9yIG5vbi1jdXJyZW50IHRhc2tzCmlmIHRoZWlyIHN0YXRlIGNo YW5nZSB3aGlsZSB0aGVyZSBpcyBvbmUgZHVtcF9iYWNrdHJhY2UoKSB0cnlpbmcKdG8gcHJpbnQg YmFjayB0cmFjZS4gRG9udCB3ZSBoYXZlIGFueSBsb2NrIHByZXZlbnRpbmcgYSB0YXNrIGluCnRo aXMgc2l0dWF0aW9uICh3aGlsZSBkdW1waW5nIGl0J3MgYmFja3RyYWNlKSBmcm9tIHJ1bm5pbmcg YWdhaW4Kb3IgY2hhbmdpbmcgc3RhdGUuCkkgaGF2ZW4ndCBmb3VuZCBhbnkgbG9jayBwcmV2ZW50 aW5nIGEgdGFzayBpbiB0aGlzIHNpdHVhdGlvbiwgYW5kIEkgCnRoaW5rIHdlIHNob3VsZG4ndApw cmV2ZW50IHRhc2sgcnVubmluZyBpZiB0aGlzIHRhc2sgaXMgc2NoZWR1bGVkLgovKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKiphbnN3ZXIgCnF1ZXN0aW9uKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKi8KClNpZ25lZC1vZmYtYnk6IFRlbmdmZWkgRmFuIDx0ZW5nZmVpZkBj b2RlYXVyb3JhLm9yZz4KLS0tCiAgYXJjaC9hcm02NC9rZXJuZWwvdHJhcHMuYyB8IDIzICsrKysr KysrKysrKysrKysrKysrKysrCiAgMSBmaWxlIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKykKCmRp ZmYgLS1naXQgYS9hcmNoL2FybTY0L2tlcm5lbC90cmFwcy5jIGIvYXJjaC9hcm02NC9rZXJuZWwv dHJhcHMuYwppbmRleCAyOTc1NTk4Li45ZGY2ZTAyIDEwMDY0NAotLS0gYS9hcmNoL2FybTY0L2tl cm5lbC90cmFwcy5jCisrKyBiL2FyY2gvYXJtNjQva2VybmVsL3RyYXBzLmMKQEAgLTEwMyw2ICsx MDMsOSBAQCB2b2lkIGR1bXBfYmFja3RyYWNlKHN0cnVjdCBwdF9yZWdzICpyZWdzLCBzdHJ1Y3Qg CnRhc2tfc3RydWN0ICp0c2spCiAgewogICAgICBzdHJ1Y3Qgc3RhY2tmcmFtZSBmcmFtZTsKICAg ICAgaW50IHNraXAgPSAwOworICAgIGxvbmcgY3VyX3N0YXRlID0gMDsKKyAgICB1bnNpZ25lZCBs b25nIGN1cl9zcCA9IDA7CisgICAgdW5zaWduZWQgbG9uZyBjdXJfZnAgPSAwOwoKICAgICAgcHJf ZGVidWcoIiVzKHJlZ3MgPSAlcCB0c2sgPSAlcClcbiIsIF9fZnVuY19fLCByZWdzLCB0c2spOwoK QEAgLTEyNyw2ICsxMzAsOSBAQCB2b2lkIGR1bXBfYmFja3RyYWNlKHN0cnVjdCBwdF9yZWdzICpy ZWdzLCBzdHJ1Y3QgCnRhc2tfc3RydWN0ICp0c2spCiAgICAgICAgICAgKi8KICAgICAgICAgIGZy YW1lLmZwID0gdGhyZWFkX3NhdmVkX2ZwKHRzayk7CiAgICAgICAgICBmcmFtZS5wYyA9IHRocmVh ZF9zYXZlZF9wYyh0c2spOworICAgICAgICBjdXJfc3RhdGUgPSB0c2stPnN0YXRlOworICAgICAg ICBjdXJfc3AgPSB0aHJlYWRfc2F2ZWRfc3AodHNrKTsKKyAgICAgICAgY3VyX2ZwID0gZnJhbWUu ZnA7CgovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiphbnN3ZXIgCnF1ZXN0aW9uKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KU2hvdWxkICdzYXZlZF9zdGF0ZXxzcHxm cCcgaW5zdGVhZCBhcyBpdHMgYXBwbGljYWJsZSB0byBub24tY3VycmVudAp0YXNrcyBvbmx5Lgon c2F2ZWRfc3RhdGV8c3B8ZnAnIG9ubHkgYXBwbGllcyB0byBub24tY3VycmVudCB0YXNrcy4KCi8q KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKmFuc3dlciAKcXVlc3Rpb24qKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqLwoKICAgICAgfQogICNpZmRlZiBDT05GSUdfRlVOQ1RJ T05fR1JBUEhfVFJBQ0VSCiAgICAgIGZyYW1lLmdyYXBoID0gMDsKQEAgLTEzNCw2ICsxNDAsMjMg QEAgdm9pZCBkdW1wX2JhY2t0cmFjZShzdHJ1Y3QgcHRfcmVncyAqcmVncywgc3RydWN0IAp0YXNr X3N0cnVjdCAqdHNrKQoKICAgICAgcHJpbnRrKCJDYWxsIHRyYWNlOlxuIik7CiAgICAgIGRvIHsK KyAgICAgICAgaWYgKHRzayAhPSBjdXJyZW50ICYmIChjdXJfc3RhdGUgIT0gdHNrLT5zdGF0ZQor ICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAqIFdlIHdvdWxkIG5vdCBiZSBwcmludGluZyBi YWNrdHJhY2UgZm9yIHRoZSB0YXNrCisgICAgICAgICAgICAgKiB0aGF0IGhhcyBjaGFuZ2VkIHN0 YXRlIGZyb20gInNhdmVkIiBzdGF0ZSB0byBvaHRlcgorICAgICAgICAgICAgICogc3RhdGUgYmVm b3JlIGhpdHRpbmcgdGhlIGRvLXdoaWxlIGxvb3AgYnV0IGFmdGVyCisgICAgICAgICAgICAgKiBz YXZpbmcgdGhlIGN1cnJlbnQgc3RhdGUuIElmIHRhc2sncyBjdXJyZW50IHN0YXRlCisgICAgICAg ICAgICAgKiBub3QgZXF1YWwgdGhlICJzYXZlZCIgc3RhdGUsIHRoZW4gd2UgbWF5IHByaW50Cisg ICAgICAgICAgICAgKiB3cm9uZyBjYWxsIHRyYWNlIG9yIGVuZCB1cCBpbiBpbmZpbml0ZSB3aGls ZSBsb29wCisgICAgICAgICAgICAgKiBpZiAqKGZwKSBhbmQgKihmcCs4KSBhcmUgc2FtZS4gV2hp bGUgdGhlIHNpdHVhdGlvbgorICAgICAgICAgICAgICogc2hvdWxkIGJlIHN0b3BlZCBvbmNlIHdl IGZvdW5kIHRoZSB0YXNrJ3Mgc3RhdGUKKyAgICAgICAgICAgICAqIGlzIGNoYW5nZWQsIHNvIHdl IGRldGVjdCB0aGUgdGFzaydzIGN1cnJlbnQgc3RhdGUsCisgICAgICAgICAgICAgKiBzcCBhbmQg ZnAgaW4gZWFjaCB3aGlsZS4KKyAgICAgICAgICAgICAqLworICAgICAgICAgICAgfHwgY3VyX3Nw ICE9IHRocmVhZF9zYXZlZF9zcCh0c2spCisgICAgICAgICAgICB8fCBjdXJfZnAgIT0gdGhyZWFk X3NhdmVkX2ZwKHRzaykpKSB7CgovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiphbnN3 ZXIgCnF1ZXN0aW9uKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KV2h5IGRvZXMg YW55IG9mIHRoZXNlIHRocmVlIG1pc21hdGNoZXMgZGV0ZWN0IHRoZSBwcm9ibGVtYXRpYyB0cmFu c2l0aW9uCm5vdCBqdXN0IHRoZSBzdGF0ZSA/CjEuIHdlIGNhbiB1c2UgImN1cl9zdGF0ZSAhPSB0 c2stPnN0YXRlIiBwcmV2ZW50IHByaW50aW5nIGJhY2t0cmFjZSBpZiAKdGhlIHRhc2sncwogICAg c3RhdGUgaXMgY2hhbmdlZCBhZnRlciAic2F2ZWQiIHRhc2sncyBzdGF0ZS4KMi4gd2UgY2FuIHVz ZSAiY3VyX3NwICE9IHRocmVhZF9zYXZlZF9zcCh0c2spIiBhbmQgImN1cl9mcCAhPSAKdGhyZWFk X3NhdmVkX2ZwKHRzaykiCiAgICBwcmV2ZW50IHByaW50aW5nIGJhY2t0cmFjZSBpZiB0aGUgdGFz aydzIHN0YXRlIGlzIGNoYW5nZWQgYmVmb3JlIAoic2F2ZWQiIHRhc2sncwogICAgc3RhdGUuIEJl Y2F1c2UgdGhlIHZhbHVlIG9mICJ0aHJlYWRfc2F2ZWRfc3AodHNrKSIgYW5kIAoidGhyZWFkX3Nh dmVkX2ZwKHRzaykiCiAgICB3aWxsIG5vdCBlcXVhbCAic2F2ZWQiIHNwKGN1cl9zcCkgYW5kIGZw KGN1cl9mcCkuCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKmFuc3dlciAKcXVlc3Rp b24qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxp c3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZy YWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=