From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7C47723D2 for ; Wed, 16 Feb 2022 17:35:59 +0000 (UTC) Received: by mail-wm1-f43.google.com with SMTP id d14-20020a05600c34ce00b0037bf4d14dc7so2165360wmq.3 for ; Wed, 16 Feb 2022 09:35:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kynesim-co-uk.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:references:in-reply-to :user-agent:mime-version:content-transfer-encoding; bh=MZhlxsFvgjP4WZV7dx4SGzteonrtxfsLah0a/XgwIpg=; b=vjOR1u4xWVOpTqfTnxqUwm0JNvmYwd+B6HeN3oVi1HTdIX5FfIBD0oatcmcGF8xBK2 vCtYbZ7WQKOKu+zs9RmNrAhG+TEIpcDOJv2srUaIMvsppNutxTI3nrOdKujWn2l9j056 m4QKzWtLY8seSz944Eo4pr6DLU/Sax9GWpdLqQFHSOj6KjXPSlgqdR0IrijTYte0mfqF Gds60pZNNFzA0fhgr5iTErDdaSeVT5prNIW7p4klpNpSjXM56jULXmacTjBMQOyHDFDr x4vg/u0EMbDmSDtYhxqz8aEZCjDLo9ybkaK/OLVI1GDxu+DUc58GRExdkD62Qu4wjqD+ vn5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:references :in-reply-to:user-agent:mime-version:content-transfer-encoding; bh=MZhlxsFvgjP4WZV7dx4SGzteonrtxfsLah0a/XgwIpg=; b=aBP0iSg6pzZK1+lSEnDZNsm/wNIKPs7bCT0Qj/adptqIZboSM3PZFvSD0MdVU1IPa4 nX+D/PweRubJCE9Id2+/GlfWmmKWTphdU28p7us4ZKkKWbFXuVtaM7AGYq4q/uIHnYzw S9tUeNikIrRAyr4VB4MCfCYiIQ3VGiBc4LBd/ZSu/0/oC5NjS2yTEMlOYcKC25unDGdF sclEI31YX8cyfJX3BWjXYmgtklDEj2N89Ml56ylQ9PBexL54XWwEQrIlGbL6/4KiQo9k qJ8f0sMdRR7s2aHxGjJs2jWaqPoibUvRWvdI/yCfeZByiqRyO6vickhwZPJL4ZpoR50d 4pjQ== X-Gm-Message-State: AOAM5336QfG1EwiC+PuFu5yjT7S9ole49hb15NQvvk73uHo+ZUl4MGyL uwspfCmmiFU7T9jh8KnFyq5YoQ== X-Google-Smtp-Source: ABdhPJzGwvO/1+cOuF9OxnB1a4zo32eW6Gn4iNZg/cppvyowaHV9Dlh9kU84pLZmm2d1MbdzzpArFQ== X-Received: by 2002:a05:600c:2d41:b0:354:24d2:8e13 with SMTP id a1-20020a05600c2d4100b0035424d28e13mr2651958wmg.138.1645032957655; Wed, 16 Feb 2022 09:35:57 -0800 (PST) Received: from CTHALPA.outer.uphall.net (cpc1-cmbg20-2-0-cust759.5-4.cable.virginm.net. [86.21.218.248]) by smtp.gmail.com with ESMTPSA id r14sm9129124wrz.84.2022.02.16.09.35.56 (version=TLS1 cipher=ECDHE-ECDSA-AES128-SHA bits=128/128); Wed, 16 Feb 2022 09:35:57 -0800 (PST) From: John Cox To: Benjamin Gaignard Cc: mchehab@kernel.org, ezequiel@vanguardiasur.com.ar, p.zabel@pengutronix.de, gregkh@linuxfoundation.org, mripard@kernel.org, paul.kocialkowski@bootlin.com, wens@csie.org, jernej.skrabec@gmail.com, hverkuil-cisco@xs4all.nl, jonas@kwiboo.se, nicolas@ndufresne.ca, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, kernel@collabora.com, knaerzche@gmail.com Subject: Re: [RFC v2 7/8] media: uapi: Add V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSET control Date: Wed, 16 Feb 2022 17:35:56 +0000 Message-ID: References: <20220215110103.241297-1-benjamin.gaignard@collabora.com> <20220215110103.241297-8-benjamin.gaignard@collabora.com> <846370ec-5c9e-e4cb-eccf-0b0c6bdbc847@collabora.com> In-Reply-To: <846370ec-5c9e-e4cb-eccf-0b0c6bdbc847@collabora.com> User-Agent: ForteAgent/8.00.32.1272 Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On Wed, 16 Feb 2022 18:19:10 +0100, you wrote: > >Le 16/02/2022 =C3=A0 11:54, John Cox a =C3=A9crit=C2=A0: >> On Tue, 15 Feb 2022 12:01:02 +0100, you wrote: >> >>> The number of 'entry point offset' could be very variable. >>> Rather than use a large static array define a v4l2 dynamic array >>> of integer control. >>> The number of entry point offsets is reported by the elems field. >> If we are going to support multiple slice headers in a single control >> then we are going to need to know how to split these entries between >> them as I assume that the entry point offset entries for all slice >> headers would just be catenated here. You could add extra elements = here >> or generate a completely new control but I think it would be easier to >> reinstate the num_entry_point_offsets field in the slice_params >> structure (its a field that userpace has in its hand anyway so its no >> effort for it to fill in). num_entry_point_offsets is a field that = RPi >> wants (without needing the entry points themselves) so that would help >> me. > >Would that means num_entry_point_offsets field in slice parameter = control >+ one control for the entry points themselves ? >or the both on slice parameter control (like now) ? I meant num_entry_point_offsets field in each slice parameter control + one control for the entry points themselves. Given that you have a varible number of entry points associated with each slice and you have a variable number of slices this seems the easiest answer to me both to construct in userspace and to use in the driver. Regards JC >Regards >Benjamin > >> >> Regards >> >> John Cox >> >>> Signed-off-by: Benjamin Gaignard >>> --- >>> version 2: >>> - Define a new CID for entry point offsets parameters >>> .../userspace-api/media/v4l/ext-ctrls-codec.rst | 9 = +++++++++ >>> include/uapi/linux/v4l2-controls.h | 1 + >>> 2 files changed, 10 insertions(+) >>> >>> diff --git = a/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst = b/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst >>> index c3ae97657fa7..679595e94643 100644 >>> --- a/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst >>> +++ b/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst >>> @@ -3101,6 +3101,15 @@ enum v4l2_mpeg_video_hevc_size_of_length_field= - >>> >>> \normalsize >>> >>> +``V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS (integer)`` >>> + Specifies the i-th entry point offset in bytes and is = represented by >>> + offset_len_minus1 plus 1 bits. >>> + This control is a dynamically sized array. The number of entry = point >>> + offsets is reported by the ``elems`` field. >>> + This bitstream parameter is defined according to :ref:`hevc`. >>> + They are described in section 7.4.7.1 "General slice segment = header >>> + semantics" of the specification. >>> + >>> ``V4L2_CID_STATELESS_HEVC_SCALING_MATRIX (struct)`` >>> Specifies the HEVC scaling matrix parameters used for the = scaling process >>> for transform coefficients. >>> diff --git a/include/uapi/linux/v4l2-controls.h = b/include/uapi/linux/v4l2-controls.h >>> index 27f5d272dc43..700e6cce958c 100644 >>> --- a/include/uapi/linux/v4l2-controls.h >>> +++ b/include/uapi/linux/v4l2-controls.h >>> @@ -2314,6 +2314,7 @@ struct v4l2_ctrl_vp9_compressed_hdr { >>> #define V4L2_CID_STATELESS_HEVC_DECODE_PARAMS = (V4L2_CID_CODEC_STATELESS_BASE + 404) >>> #define V4L2_CID_STATELESS_HEVC_DECODE_MODE = (V4L2_CID_CODEC_STATELESS_BASE + 405) >>> #define V4L2_CID_STATELESS_HEVC_START_CODE = (V4L2_CID_CODEC_STATELESS_BASE + 406) >>> +#define V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSET = (V4L2_CID_CODEC_STATELESS_BASE + 407) >>> >>> enum v4l2_stateless_hevc_decode_mode { >>> V4L2_STATELESS_HEVC_DECODE_MODE_SLICE_BASED, 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 9170AC433F5 for ; Wed, 16 Feb 2022 17:37:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:In-Reply-To:References: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=Sy7eUB6jXCM1L0pVvaxXQ11MsipG0evO9F54oNw5H2Y=; b=eJdiCzSN1PxR2X 6Nx+axk4owrcTYut5UMF4cB6CNQRHmUq8d9fGTRuZ+2fMWxBQ2rS09qeKq3O3vgzX1x6j+lFb5znt 2cLVSvXYuaL3AovTV943WhmpcXbioU+Opex5bYidBrR4YFrO594SRPAKYtILf6HSiB7zu/ug8hhWR EOfKsSMX9fdzn9yHqSEOlzDQ6KQ/0V+BFiFErptkHFwkNNP+sg/rBLCwnqhT+6zKyk8TyjwB4+1So /dLE8JKBH9tsCXcHgdHd9S0Mwj5fkviLK6HNTvWup6UJfPHsNDPw7ZmrdozXYN4FbztNv87NInlNW YEMuuNnQqQBfowXsCyPg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nKODm-007zDw-DQ; Wed, 16 Feb 2022 17:36:06 +0000 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nKODg-007zBS-1J for linux-arm-kernel@lists.infradead.org; Wed, 16 Feb 2022 17:36:02 +0000 Received: by mail-wm1-x331.google.com with SMTP id x3-20020a05600c21c300b0037c01ad715bso2176933wmj.2 for ; Wed, 16 Feb 2022 09:35:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kynesim-co-uk.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:references:in-reply-to :user-agent:mime-version:content-transfer-encoding; bh=MZhlxsFvgjP4WZV7dx4SGzteonrtxfsLah0a/XgwIpg=; b=vjOR1u4xWVOpTqfTnxqUwm0JNvmYwd+B6HeN3oVi1HTdIX5FfIBD0oatcmcGF8xBK2 vCtYbZ7WQKOKu+zs9RmNrAhG+TEIpcDOJv2srUaIMvsppNutxTI3nrOdKujWn2l9j056 m4QKzWtLY8seSz944Eo4pr6DLU/Sax9GWpdLqQFHSOj6KjXPSlgqdR0IrijTYte0mfqF Gds60pZNNFzA0fhgr5iTErDdaSeVT5prNIW7p4klpNpSjXM56jULXmacTjBMQOyHDFDr x4vg/u0EMbDmSDtYhxqz8aEZCjDLo9ybkaK/OLVI1GDxu+DUc58GRExdkD62Qu4wjqD+ vn5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:references :in-reply-to:user-agent:mime-version:content-transfer-encoding; bh=MZhlxsFvgjP4WZV7dx4SGzteonrtxfsLah0a/XgwIpg=; b=KnX1cHT+FOHybDccyetTDFHoODAVMIvf6RKJD71lymt6cxPqug5ugONR7y4uqx0nD1 Pr7vr+7BiADwlsaZZx7YxPdSXyFeCVWY779/whEqc7VAXA9SRf2pTxtPsQrtyQff0ZuS bIOKEZmsSM8/nD9Vomnp8HtZH2PBDJKCGoLmEcKmMsqDucSQpcNohtsqmm87kzqj4Ifg f+RqmpRwU+KfclnkAUGm1G0vjlERXnXaP8FeylnkCpHFhNWG+hSTyAS7wDrXweh+Q3a4 bl2dCziiwKrLeKQvsLsIlrQUycQKN9pCIiRd7xMnI1VulIrZb387kDIAiRBmMNa4o0KE qf9w== X-Gm-Message-State: AOAM530Z4RIJ036hLF8QeuJ8uQweSyS1ekLDF7i16u3jeGBp/klN5YnU 4SlwJvD5jUvk6k5/vlTSrNeihw== X-Google-Smtp-Source: ABdhPJzGwvO/1+cOuF9OxnB1a4zo32eW6Gn4iNZg/cppvyowaHV9Dlh9kU84pLZmm2d1MbdzzpArFQ== X-Received: by 2002:a05:600c:2d41:b0:354:24d2:8e13 with SMTP id a1-20020a05600c2d4100b0035424d28e13mr2651958wmg.138.1645032957655; Wed, 16 Feb 2022 09:35:57 -0800 (PST) Received: from CTHALPA.outer.uphall.net (cpc1-cmbg20-2-0-cust759.5-4.cable.virginm.net. [86.21.218.248]) by smtp.gmail.com with ESMTPSA id r14sm9129124wrz.84.2022.02.16.09.35.56 (version=TLS1 cipher=ECDHE-ECDSA-AES128-SHA bits=128/128); Wed, 16 Feb 2022 09:35:57 -0800 (PST) From: John Cox To: Benjamin Gaignard Cc: mchehab@kernel.org, ezequiel@vanguardiasur.com.ar, p.zabel@pengutronix.de, gregkh@linuxfoundation.org, mripard@kernel.org, paul.kocialkowski@bootlin.com, wens@csie.org, jernej.skrabec@gmail.com, hverkuil-cisco@xs4all.nl, jonas@kwiboo.se, nicolas@ndufresne.ca, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, kernel@collabora.com, knaerzche@gmail.com Subject: Re: [RFC v2 7/8] media: uapi: Add V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSET control Date: Wed, 16 Feb 2022 17:35:56 +0000 Message-ID: References: <20220215110103.241297-1-benjamin.gaignard@collabora.com> <20220215110103.241297-8-benjamin.gaignard@collabora.com> <846370ec-5c9e-e4cb-eccf-0b0c6bdbc847@collabora.com> In-Reply-To: <846370ec-5c9e-e4cb-eccf-0b0c6bdbc847@collabora.com> User-Agent: ForteAgent/8.00.32.1272 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220216_093600_160521_43002E8F X-CRM114-Status: GOOD ( 19.45 ) 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 T24gV2VkLCAxNiBGZWIgMjAyMiAxODoxOToxMCArMDEwMCwgeW91IHdyb3RlOgoKPgo+TGUgMTYv MDIvMjAyMiDDoCAxMTo1NCwgSm9obiBDb3ggYSDDqWNyaXTCoDoKPj4gT24gVHVlLCAxNSBGZWIg MjAyMiAxMjowMTowMiArMDEwMCwgeW91IHdyb3RlOgo+Pgo+Pj4gVGhlIG51bWJlciBvZiAnZW50 cnkgcG9pbnQgb2Zmc2V0JyBjb3VsZCBiZSB2ZXJ5IHZhcmlhYmxlLgo+Pj4gUmF0aGVyIHRoYW4g dXNlIGEgbGFyZ2Ugc3RhdGljIGFycmF5IGRlZmluZSBhIHY0bDIgZHluYW1pYyBhcnJheQo+Pj4g b2YgaW50ZWdlciBjb250cm9sLgo+Pj4gVGhlIG51bWJlciBvZiBlbnRyeSBwb2ludCBvZmZzZXRz IGlzIHJlcG9ydGVkIGJ5IHRoZSBlbGVtcyBmaWVsZC4KPj4gSWYgd2UgYXJlIGdvaW5nIHRvIHN1 cHBvcnQgbXVsdGlwbGUgc2xpY2UgaGVhZGVycyBpbiBhIHNpbmdsZSBjb250cm9sCj4+IHRoZW4g d2UgYXJlIGdvaW5nIHRvIG5lZWQgdG8ga25vdyBob3cgdG8gc3BsaXQgdGhlc2UgZW50cmllcyBi ZXR3ZWVuCj4+IHRoZW0gYXMgSSBhc3N1bWUgdGhhdCB0aGUgZW50cnkgcG9pbnQgb2Zmc2V0IGVu dHJpZXMgZm9yIGFsbCBzbGljZQo+PiBoZWFkZXJzIHdvdWxkIGp1c3QgYmUgY2F0ZW5hdGVkIGhl cmUuICBZb3UgY291bGQgYWRkIGV4dHJhIGVsZW1lbnRzIGhlcmUKPj4gb3IgZ2VuZXJhdGUgYSBj b21wbGV0ZWx5IG5ldyBjb250cm9sIGJ1dCBJIHRoaW5rIGl0IHdvdWxkIGJlIGVhc2llciB0bwo+ PiByZWluc3RhdGUgdGhlIG51bV9lbnRyeV9wb2ludF9vZmZzZXRzIGZpZWxkIGluIHRoZSBzbGlj ZV9wYXJhbXMKPj4gc3RydWN0dXJlIChpdHMgYSBmaWVsZCB0aGF0IHVzZXJwYWNlIGhhcyBpbiBp dHMgaGFuZCBhbnl3YXkgc28gaXRzIG5vCj4+IGVmZm9ydCBmb3IgaXQgdG8gZmlsbCBpbikuICBu dW1fZW50cnlfcG9pbnRfb2Zmc2V0cyBpcyBhIGZpZWxkIHRoYXQgUlBpCj4+IHdhbnRzICh3aXRo b3V0IG5lZWRpbmcgdGhlIGVudHJ5IHBvaW50cyB0aGVtc2VsdmVzKSBzbyB0aGF0IHdvdWxkIGhl bHAKPj4gbWUuCj4KPldvdWxkIHRoYXQgbWVhbnMgbnVtX2VudHJ5X3BvaW50X29mZnNldHMgZmll bGQgaW4gc2xpY2UgcGFyYW1ldGVyIGNvbnRyb2wKPisgb25lIGNvbnRyb2wgZm9yIHRoZSBlbnRy eSBwb2ludHMgdGhlbXNlbHZlcyA/Cj5vciB0aGUgYm90aCBvbiBzbGljZSBwYXJhbWV0ZXIgY29u dHJvbCAobGlrZSBub3cpID8KCkkgbWVhbnQgbnVtX2VudHJ5X3BvaW50X29mZnNldHMgZmllbGQg aW4gZWFjaCBzbGljZSBwYXJhbWV0ZXIgY29udHJvbCArCm9uZSBjb250cm9sIGZvciB0aGUgZW50 cnkgcG9pbnRzIHRoZW1zZWx2ZXMuICBHaXZlbiB0aGF0IHlvdSBoYXZlIGEKdmFyaWJsZSBudW1i ZXIgb2YgZW50cnkgcG9pbnRzIGFzc29jaWF0ZWQgd2l0aCBlYWNoIHNsaWNlIGFuZCB5b3UgaGF2 ZSBhCnZhcmlhYmxlIG51bWJlciBvZiBzbGljZXMgdGhpcyBzZWVtcyB0aGUgZWFzaWVzdCBhbnN3 ZXIgdG8gbWUgYm90aCB0bwpjb25zdHJ1Y3QgaW4gdXNlcnNwYWNlIGFuZCB0byB1c2UgaW4gdGhl IGRyaXZlci4KClJlZ2FyZHMKCkpDCgo+UmVnYXJkcwo+QmVuamFtaW4KPgo+Pgo+PiBSZWdhcmRz Cj4+Cj4+IEpvaG4gQ294Cj4+Cj4+PiBTaWduZWQtb2ZmLWJ5OiBCZW5qYW1pbiBHYWlnbmFyZCA8 YmVuamFtaW4uZ2FpZ25hcmRAY29sbGFib3JhLmNvbT4KPj4+IC0tLQo+Pj4gdmVyc2lvbiAyOgo+ Pj4gLSBEZWZpbmUgYSBuZXcgQ0lEIGZvciBlbnRyeSBwb2ludCBvZmZzZXRzIHBhcmFtZXRlcnMK Pj4+IC4uLi91c2Vyc3BhY2UtYXBpL21lZGlhL3Y0bC9leHQtY3RybHMtY29kZWMucnN0ICAgICAg ICAgIHwgOSArKysrKysrKysKPj4+IGluY2x1ZGUvdWFwaS9saW51eC92NGwyLWNvbnRyb2xzLmgg ICAgICAgICAgICAgICAgICAgICAgIHwgMSArCj4+PiAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2Vy dGlvbnMoKykKPj4+Cj4+PiBkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi91c2Vyc3BhY2UtYXBp L21lZGlhL3Y0bC9leHQtY3RybHMtY29kZWMucnN0IGIvRG9jdW1lbnRhdGlvbi91c2Vyc3BhY2Ut YXBpL21lZGlhL3Y0bC9leHQtY3RybHMtY29kZWMucnN0Cj4+PiBpbmRleCBjM2FlOTc2NTdmYTcu LjY3OTU5NWU5NDY0MyAxMDA2NDQKPj4+IC0tLSBhL0RvY3VtZW50YXRpb24vdXNlcnNwYWNlLWFw aS9tZWRpYS92NGwvZXh0LWN0cmxzLWNvZGVjLnJzdAo+Pj4gKysrIGIvRG9jdW1lbnRhdGlvbi91 c2Vyc3BhY2UtYXBpL21lZGlhL3Y0bC9leHQtY3RybHMtY29kZWMucnN0Cj4+PiBAQCAtMzEwMSw2 ICszMTAxLDE1IEBAIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2hldmNfc2l6ZV9vZl9sZW5ndGhfZmll bGQgLQo+Pj4KPj4+ICAgICAgXG5vcm1hbHNpemUKPj4+Cj4+PiArYGBWNEwyX0NJRF9TVEFURUxF U1NfSEVWQ19FTlRSWV9QT0lOVF9PRkZTRVRTIChpbnRlZ2VyKWBgCj4+PiArICAgIFNwZWNpZmll cyB0aGUgaS10aCBlbnRyeSBwb2ludCBvZmZzZXQgaW4gYnl0ZXMgYW5kIGlzIHJlcHJlc2VudGVk IGJ5Cj4+PiArICAgIG9mZnNldF9sZW5fbWludXMxIHBsdXMgMSBiaXRzLgo+Pj4gKyAgICBUaGlz IGNvbnRyb2wgaXMgYSBkeW5hbWljYWxseSBzaXplZCBhcnJheS4gVGhlIG51bWJlciBvZiBlbnRy eSBwb2ludAo+Pj4gKyAgICBvZmZzZXRzIGlzIHJlcG9ydGVkIGJ5IHRoZSBgYGVsZW1zYGAgZmll bGQuCj4+PiArICAgIFRoaXMgYml0c3RyZWFtIHBhcmFtZXRlciBpcyBkZWZpbmVkIGFjY29yZGlu ZyB0byA6cmVmOmBoZXZjYC4KPj4+ICsgICAgVGhleSBhcmUgZGVzY3JpYmVkIGluIHNlY3Rpb24g Ny40LjcuMSAiR2VuZXJhbCBzbGljZSBzZWdtZW50IGhlYWRlcgo+Pj4gKyAgICBzZW1hbnRpY3Mi IG9mIHRoZSBzcGVjaWZpY2F0aW9uLgo+Pj4gKwo+Pj4gYGBWNEwyX0NJRF9TVEFURUxFU1NfSEVW Q19TQ0FMSU5HX01BVFJJWCAoc3RydWN0KWBgCj4+PiAgICAgIFNwZWNpZmllcyB0aGUgSEVWQyBz Y2FsaW5nIG1hdHJpeCBwYXJhbWV0ZXJzIHVzZWQgZm9yIHRoZSBzY2FsaW5nIHByb2Nlc3MKPj4+ ICAgICAgZm9yIHRyYW5zZm9ybSBjb2VmZmljaWVudHMuCj4+PiBkaWZmIC0tZ2l0IGEvaW5jbHVk ZS91YXBpL2xpbnV4L3Y0bDItY29udHJvbHMuaCBiL2luY2x1ZGUvdWFwaS9saW51eC92NGwyLWNv bnRyb2xzLmgKPj4+IGluZGV4IDI3ZjVkMjcyZGM0My4uNzAwZTZjY2U5NThjIDEwMDY0NAo+Pj4g LS0tIGEvaW5jbHVkZS91YXBpL2xpbnV4L3Y0bDItY29udHJvbHMuaAo+Pj4gKysrIGIvaW5jbHVk ZS91YXBpL2xpbnV4L3Y0bDItY29udHJvbHMuaAo+Pj4gQEAgLTIzMTQsNiArMjMxNCw3IEBAIHN0 cnVjdCB2NGwyX2N0cmxfdnA5X2NvbXByZXNzZWRfaGRyIHsKPj4+ICNkZWZpbmUgVjRMMl9DSURf U1RBVEVMRVNTX0hFVkNfREVDT0RFX1BBUkFNUwkoVjRMMl9DSURfQ09ERUNfU1RBVEVMRVNTX0JB U0UgKyA0MDQpCj4+PiAjZGVmaW5lIFY0TDJfQ0lEX1NUQVRFTEVTU19IRVZDX0RFQ09ERV9NT0RF CShWNEwyX0NJRF9DT0RFQ19TVEFURUxFU1NfQkFTRSArIDQwNSkKPj4+ICNkZWZpbmUgVjRMMl9D SURfU1RBVEVMRVNTX0hFVkNfU1RBUlRfQ09ERQkoVjRMMl9DSURfQ09ERUNfU1RBVEVMRVNTX0JB U0UgKyA0MDYpCj4+PiArI2RlZmluZSBWNEwyX0NJRF9TVEFURUxFU1NfSEVWQ19FTlRSWV9QT0lO VF9PRkZTRVQJKFY0TDJfQ0lEX0NPREVDX1NUQVRFTEVTU19CQVNFICsgNDA3KQo+Pj4KPj4+IGVu dW0gdjRsMl9zdGF0ZWxlc3NfaGV2Y19kZWNvZGVfbW9kZSB7Cj4+PiAJVjRMMl9TVEFURUxFU1Nf SEVWQ19ERUNPREVfTU9ERV9TTElDRV9CQVNFRCwKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4 LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK