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 Received: from picard.linux.it (picard.linux.it [213.254.12.146]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 87897C77B75 for ; Fri, 21 Apr 2023 06:35:58 +0000 (UTC) Received: from picard.linux.it (localhost [IPv6:::1]) by picard.linux.it (Postfix) with ESMTP id 97EE83CBEC2 for ; Fri, 21 Apr 2023 08:35:55 +0200 (CEST) Received: from in-7.smtp.seeweb.it (in-7.smtp.seeweb.it [IPv6:2001:4b78:1:20::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by picard.linux.it (Postfix) with ESMTPS id 73F293CB335 for ; Fri, 21 Apr 2023 08:35:43 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by in-7.smtp.seeweb.it (Postfix) with ESMTPS id 374342009F3 for ; Fri, 21 Apr 2023 08:35:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1682058940; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Lap6/0r4g4JmbDrCc7Nld9qUiGLf8jGGi34u00B7/wI=; b=BdNSsATOOONS36tX/JFuOCCXJOAQRJe0X04ZqZ3vdzi0UYTBCAkH7cOpHVyakK0c4lzEJv T9MbLo5vIsbrX57AGnYQ3g5LM/FRh7JeR1rM1E8GU+vWeNxM85mAA/DRWpdhfgRX2AkfJU WVAOzLTfpCpC0wVOuoLuV6xplqeGmVE= Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-33-xKO47UZsOASzIP39n0y_lg-1; Fri, 21 Apr 2023 02:35:38 -0400 X-MC-Unique: xKO47UZsOASzIP39n0y_lg-1 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-3f18c2b2110so4089265e9.3 for ; Thu, 20 Apr 2023 23:35:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682058937; x=1684650937; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Lap6/0r4g4JmbDrCc7Nld9qUiGLf8jGGi34u00B7/wI=; b=AB4q3XSRG9355uLnz2ygaCx1qGfD/D4stXLq7kHp4sxBOaU/4VeNI5XG5Xq5RRuUz1 TfSOwDnSQOJkLf9QAqv/KtiRAUtgydBj86mq6+9SZeCQC3w+M0iwXRRx3v7ca8vj3Z+Z mXRM91pzsxQ2KtZ9Zp8N69Nlzqshk4ur7FUZo6jahlixXkdxBdrGrz3vhDzozKNtHmgv VcSS5J5T264JI6zUue2UZLAkyBRZCM+WE2gnIOJONTfh3aPFlJWu0Ul2T7W6SKyEzbbU NQ9F7vFzPUW+d8EiQMv5yA6jHCtfg9CFYONTQaaWn4yYmmCwvbvC6G/MjewGli1ew2EW KqVA== X-Gm-Message-State: AAQBX9c2MeFUq7G9Z3W0l+5Ivt5hKEeI4I/t2ETY50KXX2HJexHOve9d YkLBXwfPSoz8NTEbawxPohl+4PcK0e0RCPAAYe/3vM2DgakzDtYZ1jEWST7edRaODyLfRAarQLR cd1HLOnqHdSH0LpbsWqEd9VPEW3w= X-Received: by 2002:a1c:f418:0:b0:3f1:92aa:4e9b with SMTP id z24-20020a1cf418000000b003f192aa4e9bmr674306wma.23.1682058936894; Thu, 20 Apr 2023 23:35:36 -0700 (PDT) X-Google-Smtp-Source: AKy350ZfwJzAeLwDiltNtLzOFoMV7RiT9VNivwd1BYx2vv+1U7WNhe7w/CQzwaiYUZ/E6m5VfQ/EOvzVkBsvbYy6Rts= X-Received: by 2002:a1c:f418:0:b0:3f1:92aa:4e9b with SMTP id z24-20020a1cf418000000b003f192aa4e9bmr674289wma.23.1682058936465; Thu, 20 Apr 2023 23:35:36 -0700 (PDT) MIME-Version: 1.0 References: <20230419151849.13152-1-wegao@suse.com> <20230421012642.16625-1-wegao@suse.com> <20230421012642.16625-2-wegao@suse.com> In-Reply-To: <20230421012642.16625-2-wegao@suse.com> From: Li Wang Date: Fri, 21 Apr 2023 14:35:24 +0800 Message-ID: To: Wei Gao X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com X-Virus-Scanned: clamav-milter 0.102.4 at in-7.smtp.seeweb.it X-Virus-Status: Clean X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [LTP] [PATCH v8 1/2] kill01: New case cgroup kill X-BeenThere: ltp@lists.linux.it X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux Test Project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: ltp@lists.linux.it Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ltp-bounces+ltp=archiver.kernel.org@lists.linux.it Sender: "ltp" T24gRnJpLCBBcHIgMjEsIDIwMjMgYXQgOToyN+KAr0FNIFdlaSBHYW8gdmlhIGx0cCA8bHRwQGxp c3RzLmxpbnV4Lml0PiB3cm90ZToKCj4gU2lnbmVkLW9mZi1ieTogV2VpIEdhbyA8d2VnYW9Ac3Vz ZS5jb20+Cj4gLS0tCj4gIGxpYi90c3RfY2dyb3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgMSArCj4gIHJ1bnRlc3QvY29udHJvbGxlcnMgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgMSArCj4gIC4uLi9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL2tpbGwvLmdpdGln bm9yZSB8ICAgMSArCj4gIC4uLi9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL2tpbGwvTWFrZWZp bGUgICB8ICAgNiArCj4gIC4uLi9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL2tpbGwva2lsbDAx LmMgICB8IDE0NCArKysrKysrKysrKysrKysrKysKPiAgNSBmaWxlcyBjaGFuZ2VkLCAxNTMgaW5z ZXJ0aW9ucygrKQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdGNhc2VzL2tlcm5lbC9jb250cm9s bGVycy9jZ3JvdXAva2lsbC8uZ2l0aWdub3JlCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0Y2Fz ZXMva2VybmVsL2NvbnRyb2xsZXJzL2Nncm91cC9raWxsL01ha2VmaWxlCj4gIGNyZWF0ZSBtb2Rl IDEwMDY0NCB0ZXN0Y2FzZXMva2VybmVsL2NvbnRyb2xsZXJzL2Nncm91cC9raWxsL2tpbGwwMS5j Cj4KPiBkaWZmIC0tZ2l0IGEvbGliL3RzdF9jZ3JvdXAuYyBiL2xpYi90c3RfY2dyb3VwLmMKPiBp bmRleCA1MDY5OWJjNjMuLjc3NTc1NDMxZCAxMDA2NDQKPiAtLS0gYS9saWIvdHN0X2Nncm91cC5j Cj4gKysrIGIvbGliL3RzdF9jZ3JvdXAuYwo+IEBAIC0xNjYsNiArMTY2LDcgQEAgc3RhdGljIGNv bnN0IHN0cnVjdCBjZ3JvdXBfZmlsZSBjZ3JvdXBfY3RybF9maWxlc1tdID0gewo+ICAgICAgICAg eyAiY2dyb3VwLmNvbnRyb2xsZXJzIiwgTlVMTCwgMCB9LAo+ICAgICAgICAgeyAiY2dyb3VwLnN1 YnRyZWVfY29udHJvbCIsIE5VTEwsIDAgfSwKPiAgICAgICAgIHsgImNncm91cC5jbG9uZV9jaGls ZHJlbiIsICJjZ3JvdXAuY2xvbmVfY2hpbGRyZW4iLCAwIH0sCj4gKyAgICAgICB7ICJjZ3JvdXAu a2lsbCIsIE5VTEwsIDAgfSwKPiAgICAgICAgIHsgfQo+ICB9Owo+Cj4gZGlmZiAtLWdpdCBhL3J1 bnRlc3QvY29udHJvbGxlcnMgYi9ydW50ZXN0L2NvbnRyb2xsZXJzCj4gaW5kZXggOGQxYjkzNmJm Li4yZjY5YThlYzIgMTAwNjQ0Cj4gLS0tIGEvcnVudGVzdC9jb250cm9sbGVycwo+ICsrKyBiL3J1 bnRlc3QvY29udHJvbGxlcnMKPiBAQCAtMjMsNiArMjMsNyBAQCBtZW1jb250cm9sMDEgbWVtY29u dHJvbDAxCj4gIG1lbWNvbnRyb2wwMiBtZW1jb250cm9sMDIKPiAgbWVtY29udHJvbDAzIG1lbWNv bnRyb2wwMwo+ICBtZW1jb250cm9sMDQgbWVtY29udHJvbDA0Cj4gK2tpbGwwMSBraWxsMDEKPgo+ ICBjZ3JvdXBfZmpfZnVuY3Rpb25fZGVidWcgY2dyb3VwX2ZqX2Z1bmN0aW9uLnNoIGRlYnVnCj4g IGNncm91cF9mal9mdW5jdGlvbl9jcHVzZXQgY2dyb3VwX2ZqX2Z1bmN0aW9uLnNoIGNwdXNldAo+ IGRpZmYgLS1naXQgYS90ZXN0Y2FzZXMva2VybmVsL2NvbnRyb2xsZXJzL2Nncm91cC9raWxsLy5n aXRpZ25vcmUKPiBiL3Rlc3RjYXNlcy9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL2tpbGwvLmdp dGlnbm9yZQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAwLi40Zjk2NDll MjcKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvdGVzdGNhc2VzL2tlcm5lbC9jb250cm9sbGVycy9j Z3JvdXAva2lsbC8uZ2l0aWdub3JlCj4gQEAgLTAsMCArMSBAQAo+ICsva2lsbDAxCj4gZGlmZiAt LWdpdCBhL3Rlc3RjYXNlcy9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL2tpbGwvTWFrZWZpbGUK PiBiL3Rlc3RjYXNlcy9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL2tpbGwvTWFrZWZpbGUKPiBu ZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAwMC4uYmY1YWVhOWU3Cj4gLS0tIC9k ZXYvbnVsbAo+ICsrKyBiL3Rlc3RjYXNlcy9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL2tpbGwv TWFrZWZpbGUKPiBAQCAtMCwwICsxLDYgQEAKPiArIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog R1BMLTIuMC1vci1sYXRlcgo+ICsKPiArdG9wX3NyY2RpciAgICAgICAgICAgICA/PSAuLi8uLi8u Li8uLi8uLi8KPgoKClRoZSBkZXB0aCBvZiB0b3Bfc3JjZGlyIGlzIGluY29ycmVjdCwgYWxzbyB0 aGUgdXBwZXIgZGlyIE1ha2VmaWxlCnNob3VsZCBiZSBjaGFuZ2VkIHRvIGluY2x1ZGUgZ2VuZXJp Y190cnVua190YXJnZXQubWsuCgppLmUuCgojIGdpdCBkaWZmCmRpZmYgLS1naXQgYS90ZXN0Y2Fz ZXMva2VybmVsL2NvbnRyb2xsZXJzL2Nncm91cC9NYWtlZmlsZQpiL3Rlc3RjYXNlcy9rZXJuZWwv Y29udHJvbGxlcnMvY2dyb3VwL01ha2VmaWxlCmluZGV4IDBkYjBhN2QuLjE1OTJkOGUgMTAwNjQ0 Ci0tLSBhL3Rlc3RjYXNlcy9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL01ha2VmaWxlCisrKyBi L3Rlc3RjYXNlcy9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL01ha2VmaWxlCkBAIC05LDQgKzks NCBAQCBpbmNsdWRlICQoYWJzX3NyY2RpcikvLi4vTWFrZWZpbGUuaW5jCgogSU5TVEFMTF9UQVJH RVRTICAgICAgICAgICAgICAgIDo9ICouc2gKCi1pbmNsdWRlICQodG9wX3NyY2RpcikvaW5jbHVk ZS9tay9nZW5lcmljX2xlYWZfdGFyZ2V0Lm1rCitpbmNsdWRlICQodG9wX3NyY2RpcikvaW5jbHVk ZS9tay9nZW5lcmljX3RydW5rX3RhcmdldC5tawpkaWZmIC0tZ2l0IGEvdGVzdGNhc2VzL2tlcm5l bC9jb250cm9sbGVycy9jZ3JvdXAva2lsbC9NYWtlZmlsZQpiL3Rlc3RjYXNlcy9rZXJuZWwvY29u dHJvbGxlcnMvY2dyb3VwL2tpbGwvTWFrZWZpbGUKaW5kZXggYmY1YWVhOS4uMmYxOThlNiAxMDA2 NDQKLS0tIGEvdGVzdGNhc2VzL2tlcm5lbC9jb250cm9sbGVycy9jZ3JvdXAva2lsbC9NYWtlZmls ZQorKysgYi90ZXN0Y2FzZXMva2VybmVsL2NvbnRyb2xsZXJzL2Nncm91cC9raWxsL01ha2VmaWxl CkBAIC0xLDYgKzEsNiBAQAogIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMC1vci1s YXRlcgoKLXRvcF9zcmNkaXIgICAgICAgICAgICAgPz0gLi4vLi4vLi4vLi4vLi4vCit0b3Bfc3Jj ZGlyICAgICAgICAgICAgID89IC4uLy4uLy4uLy4uLy4uCgogaW5jbHVkZSAkKHRvcF9zcmNkaXIp L2luY2x1ZGUvbWsvdGVzdGNhc2VzLm1rCiBpbmNsdWRlICQodG9wX3NyY2RpcikvaW5jbHVkZS9t ay9nZW5lcmljX2xlYWZfdGFyZ2V0Lm1rCgpCdXQgSSBndWVzcyB0aGUgc3VnZ2VzdGlvbiBvZiBS aWNoYXJkIGlzIHByb2JhYmx5IHRvIHJlbmFtZQpraWxsMDEuYyB0byBjZ3JvdXBfY29yZTAzLmMv Y2dyb3VwX2tpbGwwMS5jIGFuZCBwdXQgaXQgaW50bwoiLi4uL2NvbnRyb2xsZXJzL2Nncm91cC8i IGRpcmVjdGx5LgoKVGhlbiB3ZSBkb24ndCBuZWVkIHRvIGNyZWF0ZSBhIHN1YmRpciBvciBNYWtl ZmlsZSBmb3Iga2lsbC8gYW55bW9yZS4KCgoKPiArCj4gK2luY2x1ZGUgJCh0b3Bfc3JjZGlyKS9p bmNsdWRlL21rL3Rlc3RjYXNlcy5tawo+ICtpbmNsdWRlICQodG9wX3NyY2RpcikvaW5jbHVkZS9t ay9nZW5lcmljX2xlYWZfdGFyZ2V0Lm1rCj4gZGlmZiAtLWdpdCBhL3Rlc3RjYXNlcy9rZXJuZWwv Y29udHJvbGxlcnMvY2dyb3VwL2tpbGwva2lsbDAxLmMKPiBiL3Rlc3RjYXNlcy9rZXJuZWwvY29u dHJvbGxlcnMvY2dyb3VwL2tpbGwva2lsbDAxLmMKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGlu ZGV4IDAwMDAwMDAwMC4uNmEzMjhhNzcwCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL3Rlc3RjYXNl cy9rZXJuZWwvY29udHJvbGxlcnMvY2dyb3VwL2tpbGwva2lsbDAxLmMKPiBAQCAtMCwwICsxLDE0 NCBAQAo+ICsvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMC1vci1sYXRlcgo+ICsv Kgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTIgQ2hyaXN0aWFuIEJyYXVuZXIgPGJyYXVuZXItQVQt a2VybmVsLm9yZz4KPiArICogQ29weXJpZ2h0IChjKSAyMDIzIFNVU0UgTExDIDx3ZWdhb0BzdXNl LmNvbT4KPiArICovCj4gKwo+ICsvKlwKPiArICogW0Rlc2NyaXB0aW9uXQo+ICsgKgo+ICsgKiBU aGlzIHRlc3QgaXMgY29waWVkIGZyb20ga3NlbGZ0ZXN0Cj4gKyAqIHRvb2xzL3Rlc3Rpbmcvc2Vs ZnRlc3RzL2Nncm91cC90ZXN0X2tpbGwuYwo+ICsgKiBPbmx5IHNpbXBsZSB0ZXN0IGltcGxlbWVu dGVkIHdpdGhpbiBjdXJyZW50IGNhc2UsIHRoZSBvdGhlciBjYXNlcyBzdWNoCj4gKyAqIGFzIHRl c3RfY2draWxsX3RyZWUgYW5kIHRlc3RfY2draWxsX2Zvcmtib21iIGNhbiBiZSBjcmVhdGVkIGxh dGVyLgo+ICsgKgo+ICsgKi8KPiArCj4gKyNpbmNsdWRlIDxzeXMvd2FpdC5oPgo+ICsKPiArI2lu Y2x1ZGUgImxhcGkvc3lzY2FsbHMuaCIKPiArI2luY2x1ZGUgInRzdF90ZXN0LmgiCj4gKwo+ICsj ZGVmaW5lIE1BWF9QSURfTlVNIDEwMAo+ICsjZGVmaW5lIFBJRF9OVU0gTUlOKE1BWF9QSURfTlVN LCAodHN0X25jcHVzX2F2YWlsYWJsZSgpICsgMSkpCj4gKyNkZWZpbmUgQlVGX0xFTiAoMjAgKiBQ SURfTlVNKQo+ICsKPiArc3RhdGljIGludCAqZGF0YV9wdHI7Cj4gK3N0YXRpYyBjaGFyICpidWY7 Cj4gK3N0YXRpYyBzdHJ1Y3QgdHN0X2NnX2dyb3VwICpjZ19jaGlsZF90ZXN0X3NpbXBsZTsKPiAr Cj4gK3N0YXRpYyBpbnQgd2FpdF9mb3JfcGlkKHBpZF90IHBpZCkKPiArewo+ICsgICAgICAgaW50 IHN0YXR1cywgcmV0Owo+ICsKPiArYWdhaW46Cj4gKyAgICAgICByZXQgPSB3YWl0cGlkKHBpZCwg JnN0YXR1cywgMCk7Cj4gKyAgICAgICBpZiAocmV0ID09IC0xKSB7Cj4gKyAgICAgICAgICAgICAg IGlmIChlcnJubyA9PSBFSU5UUikKPiArICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGFnYWlu Owo+ICsKPiArICAgICAgICAgICAgICAgcmV0dXJuIC0xOwo+ICsgICAgICAgfQo+ICsKPiArICAg ICAgIGlmIChXSUZTSUdOQUxFRChzdGF0dXMpKQo+ICsgICAgICAgICAgICAgICByZXR1cm4gMDsK PiArCj4gKyAgICAgICByZXR1cm4gLTE7Cj4gK30KPiArCj4gKy8qCj4gKyAqIEEgc2ltcGxlIHBy b2Nlc3MgcnVubmluZyBpbiBhIHNsZWVwIGxvb3AgdW50aWwgYmVpbmcKPiArICogcmUtcGFyZW50 ZWQuCj4gKyAqLwo+ICtzdGF0aWMgdm9pZCBjaGlsZF9mbih2b2lkKQo+ICt7Cj4gKyAgICAgICBp bnQgcHBpZCA9IGdldHBwaWQoKTsKPiArCj4gKyAgICAgICB3aGlsZSAoZ2V0cHBpZCgpID09IHBw aWQpCj4gKyAgICAgICAgICAgICAgIHVzbGVlcCgxMDAwKTsKPiArCj4gK30KPiArCj4gK3N0YXRp YyBpbnQgY2dfcnVuX25vd2FpdChjb25zdCBzdHJ1Y3QgdHN0X2NnX2dyb3VwICpjb25zdCBjZywK PiArICAgICAgICAgICAgICAgICB2b2lkICgqZm4pKHZvaWQpKQo+ICt7Cj4gKyAgICAgICBpbnQg cGlkOwo+ICsKPiArICAgICAgIHBpZCA9IFNBRkVfRk9SSygpOwo+ICsgICAgICAgaWYgKHBpZCA9 PSAwKSB7Cj4gKyAgICAgICAgICAgICAgIFNBRkVfQ0dfUFJJTlRGKGNnLCAiY2dyb3VwLnByb2Nz IiwgIiVkIiwgZ2V0cGlkKCkpOwo+ICsgICAgICAgICAgICAgICB0c3RfYXRvbWljX2luYyhkYXRh X3B0cik7Cj4gKyAgICAgICAgICAgICAgIGlmICh0c3RfYXRvbWljX2xvYWQoZGF0YV9wdHIpID09 IFBJRF9OVU0pCj4gKyAgICAgICAgICAgICAgICAgICAgICAgVFNUX0NIRUNLUE9JTlRfV0FLRSgw KTsKPiArICAgICAgICAgICAgICAgZm4oKTsKPiArICAgICAgIH0KPiArCj4gKyAgICAgICByZXR1 cm4gcGlkOwo+ICt9Cj4gKwo+ICtzdGF0aWMgaW50IGNnX3dhaXRfZm9yX3Byb2NfY291bnQoY29u c3Qgc3RydWN0IHRzdF9jZ19ncm91cCAqY2csIGludAo+IGNvdW50KQo+ICt7Cj4gKyAgICAgICBj aGFyICpwdHI7Cj4gKwo+ICsgICAgICAgaW50IG5yID0gMDsKPiArCj4gKyAgICAgICBTQUZFX0NH X1JFQUQoY2csICJjZ3JvdXAucHJvY3MiLCBidWYsIEJVRl9MRU4pOwo+ICsKPiArICAgICAgIGZv ciAocHRyID0gYnVmOyAqcHRyOyBwdHIrKykKPiArICAgICAgICAgICAgICAgaWYgKCpwdHIgPT0g J1xuJykKPiArICAgICAgICAgICAgICAgICAgICAgICBucisrOwo+ICsKPiArICAgICAgIGlmIChu ciA+PSBjb3VudCkKPiArICAgICAgICAgICAgICAgcmV0dXJuIDA7Cj4gKwo+ICsgICAgICAgdHN0 X3JlcyhUSU5GTywgIkV4cGVjdCBwcm9jZXNzIG51bSBpcyAlZCBidXQgZ2V0ICVkIiwgY291bnQs IG5yKTsKPiArCj4gKyAgICAgICByZXR1cm4gLTE7Cj4gK30KPiArCj4gK3N0YXRpYyB2b2lkIHJ1 bih2b2lkKQo+ICt7Cj4gKyAgICAgICBwaWRfdCBwaWRzW01BWF9QSURfTlVNXTsKPiArICAgICAg IGludCBpOwo+ICsgICAgICAgKmRhdGFfcHRyID0gMDsKPiArCj4gKyAgICAgICBjZ19jaGlsZF90 ZXN0X3NpbXBsZSA9IHRzdF9jZ19ncm91cF9tayh0c3RfY2csICJjZ190ZXN0X3NpbXBsZSIpOwo+ ICsKPiArICAgICAgIG1lbXNldChidWYsIDAsIEJVRl9MRU4pOwo+ICsKPiArICAgICAgIGZvciAo aSA9IDA7IGkgPCBQSURfTlVNOyBpKyspCj4gKyAgICAgICAgICAgICAgIHBpZHNbaV0gPSBjZ19y dW5fbm93YWl0KGNnX2NoaWxkX3Rlc3Rfc2ltcGxlLCBjaGlsZF9mbik7Cj4gKwo+ICsgICAgICAg VFNUX0NIRUNLUE9JTlRfV0FJVCgwKTsKPiArICAgICAgIFRTVF9FWFBfUEFTUyhjZ193YWl0X2Zv cl9wcm9jX2NvdW50KGNnX2NoaWxkX3Rlc3Rfc2ltcGxlLAo+IFBJRF9OVU0pKTsKPiArICAgICAg IFNBRkVfQ0dfUFJJTlRGKGNnX2NoaWxkX3Rlc3Rfc2ltcGxlLCAiY2dyb3VwLmtpbGwiLCAiJWQi LCAxKTsKPiArCj4gKyAgICAgICBmb3IgKGkgPSAwOyBpIDwgUElEX05VTTsgaSsrKQo+ICsgICAg ICAgICAgICAgICBUU1RfRVhQX1BBU1NfU0lMRU5UKHdhaXRfZm9yX3BpZChwaWRzW2ldKSk7Cj4g Kwo+ICsgICAgICAgY2dfY2hpbGRfdGVzdF9zaW1wbGUgPSB0c3RfY2dfZ3JvdXBfcm0oY2dfY2hp bGRfdGVzdF9zaW1wbGUpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCBzZXR1cCh2b2lkKQo+ICt7 Cj4gKyAgICAgICBidWYgPSB0c3RfYWxsb2MoQlVGX0xFTik7Cj4gKyAgICAgICBkYXRhX3B0ciA9 IFNBRkVfTU1BUChOVUxMLCBzaXplb2YodWludHB0cl90KSwgUFJPVF9SRUFEIHwKPiBQUk9UX1dS SVRFLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBN QVBfU0hBUkVEIHwKPiBNQVBfQU5PTllNT1VTLCAtMSwgMCk7Cj4gK30KPiArCj4gK3N0YXRpYyB2 b2lkIGNsZWFudXAodm9pZCkKPiArewo+ICsgICAgICAgaWYgKGRhdGFfcHRyKQo+ICsgICAgICAg ICAgICAgICBTQUZFX01VTk1BUChkYXRhX3B0ciwgc2l6ZW9mKHVpbnRwdHJfdCkpOwo+ICt9Cj4g Kwo+ICtzdGF0aWMgc3RydWN0IHRzdF90ZXN0IHRlc3QgPSB7Cj4gKyAgICAgICAudGVzdF9hbGwg PSBydW4sCj4gKyAgICAgICAuc2V0dXAgPSBzZXR1cCwKPiArICAgICAgIC5jbGVhbnVwID0gY2xl YW51cCwKPiArICAgICAgIC5mb3Jrc19jaGlsZCA9IDEsCj4gKyAgICAgICAubWF4X3J1bnRpbWUg PSAyMCwKPiArICAgICAgIC5uZWVkc19jZ3JvdXBfY3RybHMgPSAoY29uc3QgY2hhciAqY29uc3Qg W10peyAibWVtb3J5IiwgTlVMTCB9LAo+CgpPYnZpb3VzbHksIHdlIHNob3VsZG4ndCByZXF1ZXN0 ICJtZW1vcnkiIGNvbnRyb2xsZXIgYW55bW9yZS4KCiAgICAubmVlZHNfY2dyb3VwX2N0cmxzID0g KGNvbnN0IGNoYXIgKmNvbnN0IFtdKXsgInBzZXVkbyIsIE5VTEwgfSwKCgoKPiArICAgICAgIC5u ZWVkc19jZ3JvdXBfdmVyID0gVFNUX0NHX1YyLAo+ICsgICAgICAgLm5lZWRzX2NoZWNrcG9pbnRz ID0gMSwKPiArfTsKPiAtLQo+IDIuMzUuMwo+Cj4KPiAtLQo+IE1haWxpbmcgbGlzdCBpbmZvOiBo dHRwczovL2xpc3RzLmxpbnV4Lml0L2xpc3RpbmZvL2x0cAo+Cj4KCi0tIApSZWdhcmRzLApMaSBX YW5nCgotLSAKTWFpbGluZyBsaXN0IGluZm86IGh0dHBzOi8vbGlzdHMubGludXguaXQvbGlzdGlu Zm8vbHRwCg==