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=-21.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable 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 2CB12C433B4 for ; Wed, 5 May 2021 21:07:28 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 0082261008 for ; Wed, 5 May 2021 21:07:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232847AbhEEVIU (ORCPT ); Wed, 5 May 2021 17:08:20 -0400 Received: from mail.kernel.org ([198.145.29.99]:57712 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229579AbhEEVIQ (ORCPT ); Wed, 5 May 2021 17:08:16 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 9AF906103E; Wed, 5 May 2021 21:07:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1620248839; bh=XX1MaOTqwyZbNr2qmHq5rmE0mWNmyfdB4PmUbQZYwUo=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=RqUGfG4+pss2kUdZkYz06SbJtB1Rg53udv27PIENHNcJsIsyubScIIKfZW1Tkn++W xc97UDxnyPoz7YO0awonulkH074LQxGqj5cNRewqyF1U45u3aSD20rOZGpLidjS9Ob OQu1XFIOfNZX8oWFv39+1i8UtuJugoPZOfSu6Cp0I8mYA1oTZGiaZezylMCLHM8/tr 8Tt+y2TarOj1SZPIcynZJb35lqKlJReKOdgAkmEU2XidP0wwmLK542EqbeYpRsAete n4Y3MS9C9uJ2+k4jcMEW6dmC3F7pspRVU0GX6Jlf+b71N4uYC2LlGR7RS/+sy520MT CSfXbwPg2l31w== Date: Wed, 5 May 2021 14:07:14 -0700 From: Nathan Chancellor To: Jian Cai Cc: stable@vger.kernel.org, gregkh@linuxfoundation.org, sashal@kernel.org, ndesaulniers@google.com, manojgupta@google.com, llozano@google.com, clang-built-linux@googlegroups.com, Catalin Marinas , Will Deacon , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3] arm64: vdso: remove commas between macro name and arguments Message-ID: References: <20210416203522.2397801-1-jiancai@google.com> <20210416232341.2421342-1-jiancai@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20210416232341.2421342-1-jiancai@google.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Jian, On Fri, Apr 16, 2021 at 04:23:41PM -0700, Jian Cai wrote: > LLVM's integrated assembler does not support using commas separating > the name and arguments in .macro. However, only spaces are used in the > manual page. This replaces commas between macro names and the subsequent > arguments with space in calls to clock_gettime_return to make it > compatible with IAS. > > Link: > https://sourceware.org/binutils/docs/as/Macro.html#Macro > https://github.com/ClangBuiltLinux/linux/issues/1349 > > Signed-off-by: Jian Cai The actual patch itself looks fine to me but there should be some more explanation in the commit message that this patch is for 4.19 only and why it is not applicable upstream. Additionally, I would recommend using the '--subject-prefix=' flag to 'git format-patch' to clarify that as well, something like '--subject-prefix="PATCH 4.19 ONLY"'? My explanation would be something like (take bits and pieces as you feel necessary): ======================================================================== [PATCH 4.19 ONLY] arm64: vdso: remove commas between macro name and arguments LLVM's integrated assembler does not support using a comma to separate a macro name and its arguments when there is only one argument with a default value: arch/arm64/kernel/vdso/gettimeofday.S:230:24: error: too many positional arguments clock_gettime_return, shift=1 ^ arch/arm64/kernel/vdso/gettimeofday.S:253:24: error: too many positional arguments clock_gettime_return, shift=1 ^ arch/arm64/kernel/vdso/gettimeofday.S:274:24: error: too many positional arguments clock_gettime_return, shift=1 ^ This error is not in mainline because commit 28b1a824a4f4 ("arm64: vdso: Substitute gettimeofday() with C implementation") rewrote this assembler file in C as part of a 25 patch series that is unsuitable for stable. Just remove the comma in the clock_gettime_return invocations in 4.19 so that GNU as and LLVM's integrated assembler work the same. ======================================================================== I worded the first sentence the way that I did because correct me if I am wrong but it seems that the integrated assembler has no issues with the use of commas separating the arguments in a .macro definition as that is done everywhere in arch/arm64, just not when there is a single parameter with a default value because essentially what it is evaluating it to is "clock_gettime_return ,shift=1", which according to the GAS manual [1] means that "shift" is actually being set to 0 then there is an other parameter, when it expects only one. [1]: After the definition is complete, you can call the macro either as ‘reserve_str a,b’ (with ‘\p1’ evaluating to a and ‘\p2’ evaluating to b), or as ‘reserve_str ,b’ (with ‘\p1’ evaluating as the default, in this case ‘0’, and ‘\p2’ evaluating to b). Lastly, Will or Catalin should ack this as an explicitly out of mainline patch so that Greg or Sasha can take it. I would put them on the "To:" line in addition to Greg and Sasha. Hopefully this is helpful! Cheers, Nathan > --- > > Changes v1 -> v2: > Keep the comma in the macro definition to be consistent with other > definitions. > > Changes v2 -> v3: > Edit tags. > > arch/arm64/kernel/vdso/gettimeofday.S | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/arch/arm64/kernel/vdso/gettimeofday.S b/arch/arm64/kernel/vdso/gettimeofday.S > index 856fee6d3512..b6faf8b5d1fe 100644 > --- a/arch/arm64/kernel/vdso/gettimeofday.S > +++ b/arch/arm64/kernel/vdso/gettimeofday.S > @@ -227,7 +227,7 @@ realtime: > seqcnt_check fail=realtime > get_ts_realtime res_sec=x10, res_nsec=x11, \ > clock_nsec=x15, xtime_sec=x13, xtime_nsec=x14, nsec_to_sec=x9 > - clock_gettime_return, shift=1 > + clock_gettime_return shift=1 > > ALIGN > monotonic: > @@ -250,7 +250,7 @@ monotonic: > clock_nsec=x15, xtime_sec=x13, xtime_nsec=x14, nsec_to_sec=x9 > > add_ts sec=x10, nsec=x11, ts_sec=x3, ts_nsec=x4, nsec_to_sec=x9 > - clock_gettime_return, shift=1 > + clock_gettime_return shift=1 > > ALIGN > monotonic_raw: > @@ -271,7 +271,7 @@ monotonic_raw: > clock_nsec=x15, nsec_to_sec=x9 > > add_ts sec=x10, nsec=x11, ts_sec=x13, ts_nsec=x14, nsec_to_sec=x9 > - clock_gettime_return, shift=1 > + clock_gettime_return shift=1 > > ALIGN > realtime_coarse: > -- > 2.31.1.368.gbe11c130af-goog > 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=-19.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS,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 5163DC433B4 for ; Wed, 5 May 2021 21:09:31 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (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 BFDAF613EA for ; Wed, 5 May 2021 21:09:30 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BFDAF613EA Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+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=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=bHANzXctuygCTmTGnImJj+DPBpaOY63D86uqfTJmxmQ=; b=BzZJdgmJm60giPV+OoY3dk1qu 8Su73jMlIKpGK/4NEB6CAv4xc+CwD3HmAep94OGWfuyqIPewB9PsUYAQTOsX+VDb3MnBa3Lkp6rbY KTclDOri9ejdlV/RYh2WOryZw35YQIQMO2RbF+LReMAmC0ucn5G0TVxnc3YEQj5YN3RmM8Xv2Iznp pMU8cLyYQY4dtiiGI1T6t/t7+/Ew8cwmNnigdyAAiua6coaFxapyD70VB5+XO7Fbz89rVU1XoIzGI Xb4ytACpM2dHzp6qSUJvYDtXg56F0RUgmY9Aq7OzqPv1rZhAU+fNAs4PtF7GfVVcaJtimDusRc8iy 700j4a4Hg==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1leOjt-002KwF-Ob; Wed, 05 May 2021 21:07:25 +0000 Received: from bombadil.infradead.org ([2607:7c80:54:e::133]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1leOjr-002Kvq-Sv for linux-arm-kernel@desiato.infradead.org; Wed, 05 May 2021 21:07:24 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Transfer-Encoding :Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Sender:Reply-To:Content-ID:Content-Description; bh=bl2T2I4euCheO6kuPRufjI1BLux88KgyyYFnH6PcY50=; b=qffGJWDy5foDslk9OgmbyMnP63 oBiAKXw4V8YKO0+DSArKLb4VpxbJ8tsu/zlqQ3OXm3V92pdjkIO7eWAOK3kguHmAT2kQSeCqULMUB dWL1Dk1CrEDVEGhddHiJCMS2KL29JQjNS4grwdUwgah15E7omZCVlGezt6SEHN9RM5GN4yUZQjbBx R1TnIodAQt8Wr8tWQzrC6dWrh6XaQm1omUEi2lxrnnDASByvF2Fav8wVSt+1v7pJ2L1DmaDZDzONo 3fJxW/wi4xFl6zzRXtG8mbbCu6WvYtfTkgpEWBygamLOjOmcLlu4Zm6GvSl0NdwJMEKoNWDPWDBnB Go0A4nig==; Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1leOjo-005HIm-Uj for linux-arm-kernel@lists.infradead.org; Wed, 05 May 2021 21:07:22 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id 9AF906103E; Wed, 5 May 2021 21:07:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1620248839; bh=XX1MaOTqwyZbNr2qmHq5rmE0mWNmyfdB4PmUbQZYwUo=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=RqUGfG4+pss2kUdZkYz06SbJtB1Rg53udv27PIENHNcJsIsyubScIIKfZW1Tkn++W xc97UDxnyPoz7YO0awonulkH074LQxGqj5cNRewqyF1U45u3aSD20rOZGpLidjS9Ob OQu1XFIOfNZX8oWFv39+1i8UtuJugoPZOfSu6Cp0I8mYA1oTZGiaZezylMCLHM8/tr 8Tt+y2TarOj1SZPIcynZJb35lqKlJReKOdgAkmEU2XidP0wwmLK542EqbeYpRsAete n4Y3MS9C9uJ2+k4jcMEW6dmC3F7pspRVU0GX6Jlf+b71N4uYC2LlGR7RS/+sy520MT CSfXbwPg2l31w== Date: Wed, 5 May 2021 14:07:14 -0700 From: Nathan Chancellor To: Jian Cai Cc: stable@vger.kernel.org, gregkh@linuxfoundation.org, sashal@kernel.org, ndesaulniers@google.com, manojgupta@google.com, llozano@google.com, clang-built-linux@googlegroups.com, Catalin Marinas , Will Deacon , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3] arm64: vdso: remove commas between macro name and arguments Message-ID: References: <20210416203522.2397801-1-jiancai@google.com> <20210416232341.2421342-1-jiancai@google.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20210416232341.2421342-1-jiancai@google.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210505_140721_057734_9308CF0A X-CRM114-Status: GOOD ( 27.96 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgSmlhbiwKCk9uIEZyaSwgQXByIDE2LCAyMDIxIGF0IDA0OjIzOjQxUE0gLTA3MDAsIEppYW4g Q2FpIHdyb3RlOgo+IExMVk0ncyBpbnRlZ3JhdGVkIGFzc2VtYmxlciBkb2VzIG5vdCBzdXBwb3J0 IHVzaW5nIGNvbW1hcyBzZXBhcmF0aW5nCj4gdGhlIG5hbWUgYW5kIGFyZ3VtZW50cyBpbiAubWFj cm8uIEhvd2V2ZXIsIG9ubHkgc3BhY2VzIGFyZSB1c2VkIGluIHRoZQo+IG1hbnVhbCBwYWdlLiBU aGlzIHJlcGxhY2VzIGNvbW1hcyBiZXR3ZWVuIG1hY3JvIG5hbWVzIGFuZCB0aGUgc3Vic2VxdWVu dAo+IGFyZ3VtZW50cyB3aXRoIHNwYWNlIGluIGNhbGxzIHRvIGNsb2NrX2dldHRpbWVfcmV0dXJu IHRvIG1ha2UgaXQKPiBjb21wYXRpYmxlIHdpdGggSUFTLgo+IAo+IExpbms6Cj4gaHR0cHM6Ly9z b3VyY2V3YXJlLm9yZy9iaW51dGlscy9kb2NzL2FzL01hY3JvLmh0bWwjTWFjcm8KPiBodHRwczov L2dpdGh1Yi5jb20vQ2xhbmdCdWlsdExpbnV4L2xpbnV4L2lzc3Vlcy8xMzQ5Cj4gCj4gU2lnbmVk LW9mZi1ieTogSmlhbiBDYWkgPGppYW5jYWlAZ29vZ2xlLmNvbT4KClRoZSBhY3R1YWwgcGF0Y2gg aXRzZWxmIGxvb2tzIGZpbmUgdG8gbWUgYnV0IHRoZXJlIHNob3VsZCBiZSBzb21lIG1vcmUKZXhw bGFuYXRpb24gaW4gdGhlIGNvbW1pdCBtZXNzYWdlIHRoYXQgdGhpcyBwYXRjaCBpcyBmb3IgNC4x OSBvbmx5IGFuZAp3aHkgaXQgaXMgbm90IGFwcGxpY2FibGUgdXBzdHJlYW0uIEFkZGl0aW9uYWxs eSwgSSB3b3VsZCByZWNvbW1lbmQgdXNpbmcKdGhlICctLXN1YmplY3QtcHJlZml4PScgZmxhZyB0 byAnZ2l0IGZvcm1hdC1wYXRjaCcgdG8gY2xhcmlmeSB0aGF0IGFzCndlbGwsIHNvbWV0aGluZyBs aWtlICctLXN1YmplY3QtcHJlZml4PSJQQVRDSCA0LjE5IE9OTFkiJz8KCk15IGV4cGxhbmF0aW9u IHdvdWxkIGJlIHNvbWV0aGluZyBsaWtlICh0YWtlIGJpdHMgYW5kIHBpZWNlcyBhcyB5b3UgZmVl bApuZWNlc3NhcnkpOgoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpbUEFUQ0ggNC4xOSBPTkxZXSBhcm02NDog dmRzbzogcmVtb3ZlIGNvbW1hcyBiZXR3ZWVuIG1hY3JvIG5hbWUgYW5kCmFyZ3VtZW50cwoKTExW TSdzIGludGVncmF0ZWQgYXNzZW1ibGVyIGRvZXMgbm90IHN1cHBvcnQgdXNpbmcgYSBjb21tYSB0 byBzZXBhcmF0ZQphIG1hY3JvIG5hbWUgYW5kIGl0cyBhcmd1bWVudHMgd2hlbiB0aGVyZSBpcyBv bmx5IG9uZSBhcmd1bWVudCB3aXRoIGEKZGVmYXVsdCB2YWx1ZToKCmFyY2gvYXJtNjQva2VybmVs L3Zkc28vZ2V0dGltZW9mZGF5LlM6MjMwOjI0OiBlcnJvcjogdG9vIG1hbnkgcG9zaXRpb25hbAph cmd1bWVudHMKIGNsb2NrX2dldHRpbWVfcmV0dXJuLCBzaGlmdD0xCiAgICAgICAgICAgICAgICAg ICAgICAgXgphcmNoL2FybTY0L2tlcm5lbC92ZHNvL2dldHRpbWVvZmRheS5TOjI1MzoyNDogZXJy b3I6IHRvbyBtYW55IHBvc2l0aW9uYWwKYXJndW1lbnRzCiBjbG9ja19nZXR0aW1lX3JldHVybiwg c2hpZnQ9MQogICAgICAgICAgICAgICAgICAgICAgIF4KYXJjaC9hcm02NC9rZXJuZWwvdmRzby9n ZXR0aW1lb2ZkYXkuUzoyNzQ6MjQ6IGVycm9yOiB0b28gbWFueSBwb3NpdGlvbmFsCmFyZ3VtZW50 cwogY2xvY2tfZ2V0dGltZV9yZXR1cm4sIHNoaWZ0PTEKICAgICAgICAgICAgICAgICAgICAgICBe CgpUaGlzIGVycm9yIGlzIG5vdCBpbiBtYWlubGluZSBiZWNhdXNlIGNvbW1pdCAyOGIxYTgyNGE0 ZjQgKCJhcm02NDogdmRzbzoKU3Vic3RpdHV0ZSBnZXR0aW1lb2ZkYXkoKSB3aXRoIEMgaW1wbGVt ZW50YXRpb24iKSByZXdyb3RlIHRoaXMgYXNzZW1ibGVyCmZpbGUgaW4gQyBhcyBwYXJ0IG9mIGEg MjUgcGF0Y2ggc2VyaWVzIHRoYXQgaXMgdW5zdWl0YWJsZSBmb3Igc3RhYmxlLgpKdXN0IHJlbW92 ZSB0aGUgY29tbWEgaW4gdGhlIGNsb2NrX2dldHRpbWVfcmV0dXJuIGludm9jYXRpb25zIGluIDQu MTkgc28KdGhhdCBHTlUgYXMgYW5kIExMVk0ncyBpbnRlZ3JhdGVkIGFzc2VtYmxlciB3b3JrIHRo ZSBzYW1lLgoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09CgpJIHdvcmRlZCB0aGUgZmlyc3Qgc2VudGVuY2UgdGhl IHdheSB0aGF0IEkgZGlkIGJlY2F1c2UgY29ycmVjdCBtZSBpZiBJCmFtIHdyb25nIGJ1dCBpdCBz ZWVtcyB0aGF0IHRoZSBpbnRlZ3JhdGVkIGFzc2VtYmxlciBoYXMgbm8gaXNzdWVzIHdpdGgKdGhl IHVzZSBvZiBjb21tYXMgc2VwYXJhdGluZyB0aGUgYXJndW1lbnRzIGluIGEgLm1hY3JvIGRlZmlu aXRpb24gYXMKdGhhdCBpcyBkb25lIGV2ZXJ5d2hlcmUgaW4gYXJjaC9hcm02NCwganVzdCBub3Qg d2hlbiB0aGVyZSBpcyBhIHNpbmdsZQpwYXJhbWV0ZXIgd2l0aCBhIGRlZmF1bHQgdmFsdWUgYmVj YXVzZSBlc3NlbnRpYWxseSB3aGF0IGl0IGlzIGV2YWx1YXRpbmcKaXQgdG8gaXMgImNsb2NrX2dl dHRpbWVfcmV0dXJuICxzaGlmdD0xIiwgd2hpY2ggYWNjb3JkaW5nIHRvIHRoZSBHQVMKbWFudWFs IFsxXSBtZWFucyB0aGF0ICJzaGlmdCIgaXMgYWN0dWFsbHkgYmVpbmcgc2V0IHRvIDAgdGhlbiB0 aGVyZSBpcyBhbgpvdGhlciBwYXJhbWV0ZXIsIHdoZW4gaXQgZXhwZWN0cyBvbmx5IG9uZS4KClsx XTogQWZ0ZXIgdGhlIGRlZmluaXRpb24gaXMgY29tcGxldGUsIHlvdSBjYW4gY2FsbCB0aGUgbWFj cm8gZWl0aGVyIGFzCuKAmHJlc2VydmVfc3RyIGEsYuKAmSAod2l0aCDigJhccDHigJkgZXZhbHVh dGluZyB0byBhIGFuZCDigJhccDLigJkgZXZhbHVhdGluZyB0bwpiKSwgb3IgYXMg4oCYcmVzZXJ2 ZV9zdHIgLGLigJkgKHdpdGgg4oCYXHAx4oCZIGV2YWx1YXRpbmcgYXMgdGhlIGRlZmF1bHQsIGlu CnRoaXMgY2FzZSDigJgw4oCZLCBhbmQg4oCYXHAy4oCZIGV2YWx1YXRpbmcgdG8gYikuCgpMYXN0 bHksIFdpbGwgb3IgQ2F0YWxpbiBzaG91bGQgYWNrIHRoaXMgYXMgYW4gZXhwbGljaXRseSBvdXQg b2YgbWFpbmxpbmUKcGF0Y2ggc28gdGhhdCBHcmVnIG9yIFNhc2hhIGNhbiB0YWtlIGl0LiBJIHdv dWxkIHB1dCB0aGVtIG9uIHRoZSAiVG86IgpsaW5lIGluIGFkZGl0aW9uIHRvIEdyZWcgYW5kIFNh c2hhLgoKSG9wZWZ1bGx5IHRoaXMgaXMgaGVscGZ1bCEKCkNoZWVycywKTmF0aGFuCgo+IC0tLQo+ IAo+IENoYW5nZXMgdjEgLT4gdjI6Cj4gICBLZWVwIHRoZSBjb21tYSBpbiB0aGUgbWFjcm8gZGVm aW5pdGlvbiB0byBiZSBjb25zaXN0ZW50IHdpdGggb3RoZXIKPiAgIGRlZmluaXRpb25zLgo+IAo+ IENoYW5nZXMgdjIgLT4gdjM6Cj4gICBFZGl0IHRhZ3MuCj4gCj4gIGFyY2gvYXJtNjQva2VybmVs L3Zkc28vZ2V0dGltZW9mZGF5LlMgfCA2ICsrKy0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgMyBpbnNl cnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybTY0L2tl cm5lbC92ZHNvL2dldHRpbWVvZmRheS5TIGIvYXJjaC9hcm02NC9rZXJuZWwvdmRzby9nZXR0aW1l b2ZkYXkuUwo+IGluZGV4IDg1NmZlZTZkMzUxMi4uYjZmYWY4YjVkMWZlIDEwMDY0NAo+IC0tLSBh L2FyY2gvYXJtNjQva2VybmVsL3Zkc28vZ2V0dGltZW9mZGF5LlMKPiArKysgYi9hcmNoL2FybTY0 L2tlcm5lbC92ZHNvL2dldHRpbWVvZmRheS5TCj4gQEAgLTIyNyw3ICsyMjcsNyBAQCByZWFsdGlt ZToKPiAgCXNlcWNudF9jaGVjayBmYWlsPXJlYWx0aW1lCj4gIAlnZXRfdHNfcmVhbHRpbWUgcmVz X3NlYz14MTAsIHJlc19uc2VjPXgxMSwgXAo+ICAJCWNsb2NrX25zZWM9eDE1LCB4dGltZV9zZWM9 eDEzLCB4dGltZV9uc2VjPXgxNCwgbnNlY190b19zZWM9eDkKPiAtCWNsb2NrX2dldHRpbWVfcmV0 dXJuLCBzaGlmdD0xCj4gKwljbG9ja19nZXR0aW1lX3JldHVybiBzaGlmdD0xCj4gIAo+ICAJQUxJ R04KPiAgbW9ub3RvbmljOgo+IEBAIC0yNTAsNyArMjUwLDcgQEAgbW9ub3RvbmljOgo+ICAJCWNs b2NrX25zZWM9eDE1LCB4dGltZV9zZWM9eDEzLCB4dGltZV9uc2VjPXgxNCwgbnNlY190b19zZWM9 eDkKPiAgCj4gIAlhZGRfdHMgc2VjPXgxMCwgbnNlYz14MTEsIHRzX3NlYz14MywgdHNfbnNlYz14 NCwgbnNlY190b19zZWM9eDkKPiAtCWNsb2NrX2dldHRpbWVfcmV0dXJuLCBzaGlmdD0xCj4gKwlj bG9ja19nZXR0aW1lX3JldHVybiBzaGlmdD0xCj4gIAo+ICAJQUxJR04KPiAgbW9ub3RvbmljX3Jh dzoKPiBAQCAtMjcxLDcgKzI3MSw3IEBAIG1vbm90b25pY19yYXc6Cj4gIAkJY2xvY2tfbnNlYz14 MTUsIG5zZWNfdG9fc2VjPXg5Cj4gIAo+ICAJYWRkX3RzIHNlYz14MTAsIG5zZWM9eDExLCB0c19z ZWM9eDEzLCB0c19uc2VjPXgxNCwgbnNlY190b19zZWM9eDkKPiAtCWNsb2NrX2dldHRpbWVfcmV0 dXJuLCBzaGlmdD0xCj4gKwljbG9ja19nZXR0aW1lX3JldHVybiBzaGlmdD0xCj4gIAo+ICAJQUxJ R04KPiAgcmVhbHRpbWVfY29hcnNlOgo+IC0tIAo+IDIuMzEuMS4zNjguZ2JlMTFjMTMwYWYtZ29v Zwo+IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGlu dXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRl YWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgt YXJtLWtlcm5lbAo=