From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ej1-f48.google.com (mail-ej1-f48.google.com [209.85.218.48]) (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 599197E; Wed, 1 Jun 2022 16:35:27 +0000 (UTC) Received: by mail-ej1-f48.google.com with SMTP id m20so4868093ejj.10; Wed, 01 Jun 2022 09:35:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1EvKDiEy2mDM7M3ZxgWlbFl9Z+GodMXi6d9iudxPnGU=; b=JmLG+8b1EiVyVLTs8YmmpsnIEKHzGCt2qwyKITVt7fKPZxzr3XE7JUluqsYAgcnjzj 8pvWHwtmIs/K8xHs/RojrozRWD+hVjb+8am5zwbKSJW9iWcfRVFfDlOAY+M3mpi8EESo fivqF5g2Vz+djoM+R3szKSLr7vKErG0Blu07ShZ96dy4WFXJdC2ekugfoUe9oPuW7fXj 7nzjtDxgtl3UKZWdXcL0Nk9TTaT6gPROks2F99d1yJhoavZ6z8UvxsYKF6jBUabRxAxc WCz7X72s1LfYpm4Ebfzd95hosS6lhJCySs2upwzaqaYW4zKvyf7gMf0Pruk7Ka5aorjx 8EPQ== 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=1EvKDiEy2mDM7M3ZxgWlbFl9Z+GodMXi6d9iudxPnGU=; b=aN+J54tYmYoJXLj1XiLdyhP+QeDsBkBZWHXlZuAARA1JgSvQ9Kc9F9dV891y9CVwpO UZXRRLmDiyfBkbtM7RwBUPmNSkR2o6gu/YsYGyZKuCY+zDf2lMtSwyEjf0mp0+X6ExVV xkq4mHU22cUE/jtqGLSW/B2Mmy8LwrbAmbxr0rVNYBxzej2MrrnpYwdrPJHPJXJJbEU7 CroFfFWBkl5BcV6xUZ8WFsfp/IPQanOmPYPw33b6NSlFlyeQMOa1QymQKo1TFo1whQtb HBwqVz9WHhLjdl5MDUUlU8ejLb3wd+wnLdCo4U/VplcD8OZMEuiOIX38UmtGW62axqJn hDRA== X-Gm-Message-State: AOAM532Zc9tk8YISN+CGZezqlrHIpmABAgT9Tyj9zPKED1HmMYKwW/KJ Uuc+VAslN84nCOJTygBGGFw= X-Google-Smtp-Source: ABdhPJwxZzkqm5dCsP8Ds0XHL9RdHf0YFnMeVJGn/lyzHpSOHMWBIVw1LWtDn0BIibmiKKHXbbXOTg== X-Received: by 2002:a17:907:1621:b0:6fe:fc8f:21f1 with SMTP id hb33-20020a170907162100b006fefc8f21f1mr321615ejc.359.1654101325457; Wed, 01 Jun 2022 09:35:25 -0700 (PDT) Received: from jernej-laptop.localnet (213-161-3-76.dynamic.telemach.net. [213.161.3.76]) by smtp.gmail.com with ESMTPSA id f3-20020a056402150300b0042dd3bf1403sm1177480edw.54.2022.06.01.09.35.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 09:35:25 -0700 (PDT) From: Jernej =?utf-8?B?xaBrcmFiZWM=?= To: mchehab@kernel.org, ezequiel@vanguardiasur.com.ar, p.zabel@pengutronix.de, gregkh@linuxfoundation.org, mripard@kernel.org, paul.kocialkowski@bootlin.com, wens@csie.org, samuel@sholland.org, andrzej.p@collabora.com, Hans Verkuil , Benjamin Gaignard , Nicolas Dufresne Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, kernel@collabora.com Subject: Re: [PATCH v6 11/17] media: uapi: Add V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS control Date: Wed, 01 Jun 2022 18:35:23 +0200 Message-ID: <11988268.O9o76ZdvQC@jernej-laptop> In-Reply-To: <95261aa18425e8f5571888a41ee03d9dfd2814b9.camel@collabora.com> References: <20220527143134.3360174-1-benjamin.gaignard@collabora.com> <2102878.irdbgypaU6@kista> <95261aa18425e8f5571888a41ee03d9dfd2814b9.camel@collabora.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="UTF-8" Dne sreda, 01. junij 2022 ob 18:20:53 CEST je Nicolas Dufresne napisal(a): > Le mardi 31 mai 2022 =C3=A0 20:20 +0200, Jernej =C5=A0krabec a =C3=A9crit= : > > Dne torek, 31. maj 2022 ob 08:58:46 CEST je Benjamin Gaignard napisal(a= ): > > > Le 30/05/2022 =C3=A0 23:24, Jernej =C5=A0krabec a =C3=A9crit : > > > > Dne ponedeljek, 30. maj 2022 ob 15:49:57 CEST je Hans Verkuil=20 napisal(a): > > > > > On 30/05/2022 11:18, Hans Verkuil wrote: > > > > > > On 29/05/2022 08:40, Jernej =C5=A0krabec wrote: > > > > > > > Hi! > > > > > > >=20 > > > > > > > This series looks very good and I plan to test it shortly on > > > > > > > Cedrus, > >=20 > > but > >=20 > > > > I > > > >=20 > > > > > > > have one major concern below. > > > > > > >=20 > > > > > > > Dne petek, 27. maj 2022 ob 16:31:28 CEST je Benjamin Gaignard > >=20 > > napisal(a): > > > > > > > > The number of 'entry point offset' can be very variable. > > > > > > > > Instead of using a large static array define a v4l2 dynamic > > > > > > > > array > > > > > > > > of U32 (V4L2_CTRL_TYPE_U32). > > > > > > > > The number of entry point offsets is reported by the elems > > > > > > > > field > > > > > > > > and in struct > > > > > > > > v4l2_ctrl_hevc_slice_params.num_entry_point_offsets > > > > > > > > field. > > > > > > >=20 > > > > > > > Slice control by itself is variable length array, so you would > > > > > > > actually > > > >=20 > > > > need > > > >=20 > > > > > > > 2D variable array for entry points which is not supported. > > > > > > > However, > >=20 > > easy > >=20 > > > > > > > workaround for that is to flatten 2D array to 1D and either h= ave > > > > > > > another > > > >=20 > > > > slice > > > >=20 > > > > > > > control field which would tell first entry point index for > > > > > > > convenience or > > > >=20 > > > > let > > > >=20 > > > > > > > driver calculate it by adding up all num_entry_point_offsets = of > > > > > > > previous > > > > > > > slices. > > > > > > >=20 > > > > > > > Hans, what do you think? > > > > > >=20 > > > > > > If I would support 2D variable array sizes, wouldn't that be mo= re > >=20 > > elegant? > >=20 > > > > > > The current implementation doesn't support that, but as the com= mit > > > > > > log > >=20 > > for > >=20 > > > > > > patch 1/17 says: > > > > > >=20 > > > > > > "Currently dynamically sized arrays are limited to one dimensio= nal > >=20 > > arrays, > >=20 > > > > > > but that might change in the future if there is a need for it." > > > > > >=20 > > > > > > Let me know if you agree, and I'll try to implement this. It's > > > > > > been a > > > >=20 > > > > while > > > >=20 > > > > > > since I last looked at this, so I'm not sure how much work it i= s, > > > > > > but it > > > >=20 > > > > is > > > >=20 > > > > > > probably worth a shot. > > > > >=20 > > > > > Digging more into this made me realize that this doesn't actually > > > > > help > >=20 > > for > >=20 > > > > this > > > >=20 > > > > > particular case. > > > > >=20 > > > > > I would lean towards your second suggestion of adding up all > > > >=20 > > > > num_entry_point_offsets > > > >=20 > > > > > of previous slices. > > > >=20 > > > > Just one question/clarification about dynamic arrays - does driver > > > > need to > > > > reserve maximum amount of memory for dynamic array control at > >=20 > > initialization > >=20 > > > > time? If so, this would still be problematic, since there cound be a > > > > huge > > > > amount of entry points in theory. > > >=20 > > > When adding the control the driver could set .dims field to specify > > > the max number of accepted slices. > > > I have added '#define V4L2_HEVC_SLICE_MAX_COUNT 600' that you could u= se > > > for this field. It is the value we have found when using slices with > > > RKVDEC > > > driver. > >=20 > > Is this maximum value applicable only to RKVDEC or is universal? Anyway, > > this means maximum offset points control for Cedrus would be 600 * 1024 > > (max. offset points supported per slice) * 4 ~=3D 2.4 MB, which is a lot > > for one control, but I can live with that... >=20 > I believe its defined following "Table A.8 =E2=80=93 General tier and lev= el limits". > With the assumption there will never be a level 7 (which I think is fair). > If anyone saw other reasons for this limit, let me know. >=20 > This is a worse case scenario, this is quite unlikely in practice, so whi= le > performance might be a disaster if your craft a stream for that case, I > don't think it will ever happen in real life. But do we really need to cover worst case scenario? In theory, one driver c= an=20 set limit to (for example) max 100 slices and if there is a frame with 600= =20 slices, userspace app would submit 6 decode requests. Basically the same wa= y=20 it's done today. While not as performant, it would be good compromise betwe= en=20 resources and speed. >=20 > > Best regards, > > Jernej > >=20 > > > Regards, > > > Benjamin > > >=20 > > > > Best regards, > > > > Jernej > > > >=20 > > > > > Regards, > > > > >=20 > > > > > Hans > > > > > =09 > > > > > > Regards, > > > > > >=20 > > > > > > Hans > > > > > > =09 > > > > > > > Note, it seems that H265 decoding on Cedrus still works witho= ut > > > > > > > entry > > > >=20 > > > > points, > > > >=20 > > > > > > > so this problem can be solved later. I'm not sure what we lose > > > > > > > with > >=20 > > that > >=20 > > > > but > > > >=20 > > > > > > > it was suggested that this could influence speed or error > > > > > > > resilience or > > > >=20 > > > > both. > > > >=20 > > > > > > > However, I think we're close to solve it, so I'd like to do t= hat > > > > > > > now. > > > > > > >=20 > > > > > > > Best regards, > > > > > > > Jernej > > > > > > >=20 > > > > > > > > Signed-off-by: Benjamin Gaignard > > > > > > > > > > > > > > > > --- > > > > > > > >=20 > > > > > > > > .../userspace-api/media/v4l/ext-ctrls-codec.rst | 11 > > > > > > > > +++++++++ > >=20 > > ++ > >=20 > > > > > > > > drivers/media/v4l2-core/v4l2-ctrls-defs.c | 5 > > > > > > > > +++++ > > > > > > > > include/media/hevc-ctrls.h | 5 > > > > > > > > ++++- > > > > > > > > 3 files changed, 20 insertions(+), 1 deletion(-) > > > > > > > >=20 > > > > > > > > diff --git > > > > > > > > a/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst > >=20 > > b/ > >=20 > > > > > > > Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst > > > > > > >=20 > > > > > > > > index 0796b1563daa..05228e280f66 100644 > > > > > > > > --- > > > > > > > > a/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst > > > > > > > > +++ > > > > > > > > b/Documentation/userspace-api/media/v4l/ext-ctrls-codec.rst > > > > > > > > @@ -3010,6 +3010,9 @@ enum > > > > > > > > v4l2_mpeg_video_hevc_size_of_length_field - > > > > > > > >=20 > > > > > > > > * - __u32 > > > > > > > > =20 > > > > > > > > - ``data_bit_offset`` > > > > > > > > - Offset (in bits) to the video data in the current > > > > > > > > slice data. > > > > > > > >=20 > > > > > > > > + * - __u32 > > > > > > > > + - ``num_entry_point_offsets`` > > > > > > > > + - Specifies the number of entry point offset syntax > > > > > > > > elements in > >=20 > > the > >=20 > > > > > > > slice header. > > > > > > >=20 > > > > > > > > * - __u8 > > > > > > > > =20 > > > > > > > > - ``nal_unit_type`` > > > > > > > > - Specifies the coding type of the slice (B, P or I= ). > > > > > > > >=20 > > > > > > > > @@ -3150,6 +3153,14 @@ enum > > > > > > > > v4l2_mpeg_video_hevc_size_of_length_field - > > > > > > > >=20 > > > > > > > > \normalsize > > > > > > > >=20 > > > > > > > > +``V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS (integer)`` > > > > > > > > + Specifies entry point offsets in bytes. > > > > > > > > + This control is a dynamically sized array. The number = of > > > > > > > > entry > > > >=20 > > > > point > > > >=20 > > > > > > > > + 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 > >=20 > > header > >=20 > > > > > > > > + semantics" of the specification. > > > > > > > > + > > > > > > > >=20 > > > > > > > > ``V4L2_CID_STATELESS_HEVC_SCALING_MATRIX (struct)`` > > > > > > > > =20 > > > > > > > > Specifies the HEVC scaling matrix parameters used for > > > > > > > > the scaling > > > > > > >=20 > > > > > > > process > > > > > > >=20 > > > > > > > > for transform coefficients. > > > > > > > >=20 > > > > > > > > diff --git a/drivers/media/v4l2-core/v4l2-ctrls-defs.c > > > > > > > > b/drivers/media/ > > > >=20 > > > > v4l2- > > > >=20 > > > > > > > core/v4l2-ctrls-defs.c > > > > > > >=20 > > > > > > > > index d594efbcbb93..e22921e7ea61 100644 > > > > > > > > --- a/drivers/media/v4l2-core/v4l2-ctrls-defs.c > > > > > > > > +++ b/drivers/media/v4l2-core/v4l2-ctrls-defs.c > > > > > > > > @@ -1188,6 +1188,7 @@ const char *v4l2_ctrl_get_name(u32 id) > > > > > > > >=20 > > > > > > > > case V4L2_CID_STATELESS_HEVC_DECODE_PARAMS: =09 return > > > > > > >=20 > > > > > > > "HEVC Decode Parameters"; > > > > > > >=20 > > > > > > > > case V4L2_CID_STATELESS_HEVC_DECODE_MODE: =09 return > > > > > > >=20 > > > > > > > "HEVC Decode Mode"; > > > > > > >=20 > > > > > > > > case V4L2_CID_STATELESS_HEVC_START_CODE: =09 return > > > > > > >=20 > > > > > > > "HEVC Start Code"; > > > > > > >=20 > > > > > > > > + case V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS:=09 return > > > > > > >=20 > > > > > > > "HEVC Entry Point Offsets"; > > > > > > >=20 > > > > > > > > /* Colorimetry controls */ > > > > > > > > /* Keep the order of the 'case's the same as in > > > > > > > > v4l2-controls.h! > > > > > > >=20 > > > > > > > */ > > > > > > >=20 > > > > > > > > @@ -1518,6 +1519,10 @@ void v4l2_ctrl_fill(u32 id, const ch= ar > > > > > > > > **name, > > > >=20 > > > > enum > > > >=20 > > > > > > > v4l2_ctrl_type *type, > > > > > > >=20 > > > > > > > > case V4L2_CID_STATELESS_HEVC_DECODE_PARAMS: > > > > > > > > *type =3D=20 V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS; > > > > > > > > break; > > > > > > > >=20 > > > > > > > > + case V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS: > > > > > > > > + *type =3D V4L2_CTRL_TYPE_U32; > > > > > > > > + *flags |=3D V4L2_CTRL_FLAG_DYNAMIC_ARRAY; > > > > > > > > + break; > > > > > > > >=20 > > > > > > > > case V4L2_CID_STATELESS_VP9_COMPRESSED_HDR: > > > > > > > > *type =3D=20 V4L2_CTRL_TYPE_VP9_COMPRESSED_HDR; > > > > > > > > break; > > > > > > > >=20 > > > > > > > > diff --git a/include/media/hevc-ctrls.h > > > > > > > > b/include/media/hevc-ctrls.h > > > > > > > > index a3c829ef531a..1319cb99ae3f 100644 > > > > > > > > --- a/include/media/hevc-ctrls.h > > > > > > > > +++ b/include/media/hevc-ctrls.h > > > > > > > > @@ -20,6 +20,7 @@ > > > > > > > >=20 > > > > > > > > #define V4L2_CID_STATELESS_HEVC_DECODE_PARAMS > >=20 > > (V4L2_CID_CODEC_BASE > >=20 > > > > > > > + 1012) > > > > > > >=20 > > > > > > > > #define V4L2_CID_STATELESS_HEVC_DECODE_MODE > >=20 > > (V4L2_CID_CODEC_BASE > >=20 > > > > + 1015) > > > >=20 > > > > > > > > #define V4L2_CID_STATELESS_HEVC_START_CODE > >=20 > > (V4L2_CID_CODEC_BASE + 1016) > >=20 > > > > > > > > +#define V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS > >=20 > > (V4L2_CID_CODEC_BASE > >=20 > > > > + > > > >=20 > > > > > > > 1017) > > > > > > >=20 > > > > > > > > /* enum v4l2_ctrl_type type values */ > > > > > > > > #define V4L2_CTRL_TYPE_HEVC_SPS 0x0120 > > > > > > > >=20 > > > > > > > > @@ -318,6 +319,8 @@ struct v4l2_hevc_pred_weight_table { > > > > > > > >=20 > > > > > > > > * > > > > > > > > * @bit_size: size (in bits) of the current slice data > > > > > > > > * @data_bit_offset: offset (in bits) to the video data in > > > > > > > > the current > > > >=20 > > > > slice > > > >=20 > > > > > > > data > > > > > > >=20 > > > > > > > > + * @num_entry_point_offsets: specifies the number of entry > > > > > > > > point offset > > > >=20 > > > > syntax > > > >=20 > > > > > > > > + * elements in the slice=20 header. > > > > > > > >=20 > > > > > > > > * @nal_unit_type: specifies the coding type of the slice > > > > > > > > (B, P or I) > > > > > > > > * @nuh_temporal_id_plus1: minus 1 specifies a temporal > > > > > > > > identifier for > > > >=20 > > > > the > > > >=20 > > > > > > > NAL unit > > > > > > >=20 > > > > > > > > * @slice_type: see V4L2_HEVC_SLICE_TYPE_{} > > > > > > > >=20 > > > > > > > > @@ -360,7 +363,7 @@ struct v4l2_hevc_pred_weight_table { > > > > > > > >=20 > > > > > > > > struct v4l2_ctrl_hevc_slice_params { > > > > > > > > =20 > > > > > > > > __u32 bit_size; > > > > > > > > __u32 data_bit_offset; > > > > > > > >=20 > > > > > > > > - > > > > > > > > + __u32 num_entry_point_offsets; > > > > > > > >=20 > > > > > > > > /* ISO/IEC 23008-2, ITU-T Rec. H.265: NAL unit=20 header */ > > > > > > > > __u8 nal_unit_type; > > > > > > > > __u8 nuh_temporal_id_plus1; 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 7AFC0C433EF for ; Wed, 1 Jun 2022 16:35:42 +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:References:In-Reply-To: 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=ITBo+tL3of4bnsF7TU83CCu7XqWC+KrQtLM4Sn1jr9A=; b=O+y8mTHDdcSKv/ W8ZeWdgo8Hpf9dG1NNf6WIDTkGrJVnvGzQnQ7PVxYHaCGJc8KJWd6g7BkfTzF81/Ha2wbDRQjh0C0 cX2IXuKQSxexVjynaBDgrzizSoBQEoRF3hI2C+C3Ns96RGZHT7krSnTUocIV16MJS8CsMckDonLqw IFzMSt9Obpa7Seu1LXujW1pX0Au8JnAdwtyRntYanV4zj2yoWESS9Dr7A/dwxiiUOczfikjT46IO8 +YKPUWmqbrYw+jEd/bv4ZEKapmgKyKdO+Nt875XFwvrRw7tBqM+Ai2eeMsH9dSq3mPXyDcaSaZ/rf gTwBu4M/0Wnc98SdMjsA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nwRJj-00H9jY-9G; Wed, 01 Jun 2022 16:35:31 +0000 Received: from mail-ej1-x62d.google.com ([2a00:1450:4864:20::62d]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nwRJf-00H9ig-QB; Wed, 01 Jun 2022 16:35:30 +0000 Received: by mail-ej1-x62d.google.com with SMTP id fu3so3417782ejc.7; Wed, 01 Jun 2022 09:35:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1EvKDiEy2mDM7M3ZxgWlbFl9Z+GodMXi6d9iudxPnGU=; b=JmLG+8b1EiVyVLTs8YmmpsnIEKHzGCt2qwyKITVt7fKPZxzr3XE7JUluqsYAgcnjzj 8pvWHwtmIs/K8xHs/RojrozRWD+hVjb+8am5zwbKSJW9iWcfRVFfDlOAY+M3mpi8EESo fivqF5g2Vz+djoM+R3szKSLr7vKErG0Blu07ShZ96dy4WFXJdC2ekugfoUe9oPuW7fXj 7nzjtDxgtl3UKZWdXcL0Nk9TTaT6gPROks2F99d1yJhoavZ6z8UvxsYKF6jBUabRxAxc WCz7X72s1LfYpm4Ebfzd95hosS6lhJCySs2upwzaqaYW4zKvyf7gMf0Pruk7Ka5aorjx 8EPQ== 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=1EvKDiEy2mDM7M3ZxgWlbFl9Z+GodMXi6d9iudxPnGU=; b=aDfZo9sFTT/6+O2wMgDo5n9pasqT8o397azfWbQS1UHf0zSNQ0ljWt5yHKmzyAFyOB Teo+Uq2BnuE/2YXgvgdMhTO6l5hcIsz9qFUPMIkhefINNUGtbjhriAwUDzXT6P2KgmIs QWUGGd3Nym4XuNIzzcZVg285+995Idv1egB2DycDvANlsGdMDMe/e0q7SUjSLRSoPvGy lF10hNR0hbvLSfXGNNudKcK+TYPsne8goofGIaXG91iQfY6RTtdRLm+JF+7TtXpcombh Llled7H0x4Mja7B+LgkS67iy4XKMM+whewQEJ4MXe+iMfKu/MPSDFM8KR8rXjQL8Lqus rCVQ== X-Gm-Message-State: AOAM5338iR/ohfTDgLkJjXjUNEcJi3yfX315jCj23hAUsZ4U4xW0NzdO 3bLFJYJOH0WnV/ATHFgdRsQ= X-Google-Smtp-Source: ABdhPJwxZzkqm5dCsP8Ds0XHL9RdHf0YFnMeVJGn/lyzHpSOHMWBIVw1LWtDn0BIibmiKKHXbbXOTg== X-Received: by 2002:a17:907:1621:b0:6fe:fc8f:21f1 with SMTP id hb33-20020a170907162100b006fefc8f21f1mr321615ejc.359.1654101325457; Wed, 01 Jun 2022 09:35:25 -0700 (PDT) Received: from jernej-laptop.localnet (213-161-3-76.dynamic.telemach.net. [213.161.3.76]) by smtp.gmail.com with ESMTPSA id f3-20020a056402150300b0042dd3bf1403sm1177480edw.54.2022.06.01.09.35.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 09:35:25 -0700 (PDT) From: Jernej =?utf-8?B?xaBrcmFiZWM=?= To: mchehab@kernel.org, ezequiel@vanguardiasur.com.ar, p.zabel@pengutronix.de, gregkh@linuxfoundation.org, mripard@kernel.org, paul.kocialkowski@bootlin.com, wens@csie.org, samuel@sholland.org, andrzej.p@collabora.com, Hans Verkuil , Benjamin Gaignard , Nicolas Dufresne Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, kernel@collabora.com Subject: Re: [PATCH v6 11/17] media: uapi: Add V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS control Date: Wed, 01 Jun 2022 18:35:23 +0200 Message-ID: <11988268.O9o76ZdvQC@jernej-laptop> In-Reply-To: <95261aa18425e8f5571888a41ee03d9dfd2814b9.camel@collabora.com> References: <20220527143134.3360174-1-benjamin.gaignard@collabora.com> <2102878.irdbgypaU6@kista> <95261aa18425e8f5571888a41ee03d9dfd2814b9.camel@collabora.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220601_093527_917439_B533FDAC X-CRM114-Status: GOOD ( 62.40 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org RG5lIHNyZWRhLCAwMS4ganVuaWogMjAyMiBvYiAxODoyMDo1MyBDRVNUIGplIE5pY29sYXMgRHVm cmVzbmUgbmFwaXNhbChhKToKPiBMZSBtYXJkaSAzMSBtYWkgMjAyMiDDoCAyMDoyMCArMDIwMCwg SmVybmVqIMWga3JhYmVjIGEgw6ljcml0IDoKPiA+IERuZSB0b3JlaywgMzEuIG1haiAyMDIyIG9i IDA4OjU4OjQ2IENFU1QgamUgQmVuamFtaW4gR2FpZ25hcmQgbmFwaXNhbChhKToKPiA+ID4gTGUg MzAvMDUvMjAyMiDDoCAyMzoyNCwgSmVybmVqIMWga3JhYmVjIGEgw6ljcml0IDoKPiA+ID4gPiBE bmUgcG9uZWRlbGplaywgMzAuIG1haiAyMDIyIG9iIDE1OjQ5OjU3IENFU1QgamUgSGFucyBWZXJr dWlsIApuYXBpc2FsKGEpOgo+ID4gPiA+ID4gT24gMzAvMDUvMjAyMiAxMToxOCwgSGFucyBWZXJr dWlsIHdyb3RlOgo+ID4gPiA+ID4gPiBPbiAyOS8wNS8yMDIyIDA4OjQwLCBKZXJuZWogxaBrcmFi ZWMgd3JvdGU6Cj4gPiA+ID4gPiA+ID4gSGkhCj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4g VGhpcyBzZXJpZXMgbG9va3MgdmVyeSBnb29kIGFuZCBJIHBsYW4gdG8gdGVzdCBpdCBzaG9ydGx5 IG9uCj4gPiA+ID4gPiA+ID4gQ2VkcnVzLAo+ID4gCj4gPiBidXQKPiA+IAo+ID4gPiA+IEkKPiA+ ID4gPiAKPiA+ID4gPiA+ID4gPiBoYXZlIG9uZSBtYWpvciBjb25jZXJuIGJlbG93Lgo+ID4gPiA+ ID4gPiA+IAo+ID4gPiA+ID4gPiA+IERuZSBwZXRlaywgMjcuIG1haiAyMDIyIG9iIDE2OjMxOjI4 IENFU1QgamUgQmVuamFtaW4gR2FpZ25hcmQKPiA+IAo+ID4gbmFwaXNhbChhKToKPiA+ID4gPiA+ ID4gPiA+IFRoZSBudW1iZXIgb2YgJ2VudHJ5IHBvaW50IG9mZnNldCcgY2FuIGJlIHZlcnkgdmFy aWFibGUuCj4gPiA+ID4gPiA+ID4gPiBJbnN0ZWFkIG9mIHVzaW5nIGEgbGFyZ2Ugc3RhdGljIGFy cmF5IGRlZmluZSBhIHY0bDIgZHluYW1pYwo+ID4gPiA+ID4gPiA+ID4gYXJyYXkKPiA+ID4gPiA+ ID4gPiA+IG9mIFUzMiAoVjRMMl9DVFJMX1RZUEVfVTMyKS4KPiA+ID4gPiA+ID4gPiA+IFRoZSBu dW1iZXIgb2YgZW50cnkgcG9pbnQgb2Zmc2V0cyBpcyByZXBvcnRlZCBieSB0aGUgZWxlbXMKPiA+ ID4gPiA+ID4gPiA+IGZpZWxkCj4gPiA+ID4gPiA+ID4gPiBhbmQgaW4gc3RydWN0Cj4gPiA+ID4g PiA+ID4gPiB2NGwyX2N0cmxfaGV2Y19zbGljZV9wYXJhbXMubnVtX2VudHJ5X3BvaW50X29mZnNl dHMKPiA+ID4gPiA+ID4gPiA+IGZpZWxkLgo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+IFNs aWNlIGNvbnRyb2wgYnkgaXRzZWxmIGlzIHZhcmlhYmxlIGxlbmd0aCBhcnJheSwgc28geW91IHdv dWxkCj4gPiA+ID4gPiA+ID4gYWN0dWFsbHkKPiA+ID4gPiAKPiA+ID4gPiBuZWVkCj4gPiA+ID4g Cj4gPiA+ID4gPiA+ID4gMkQgdmFyaWFibGUgYXJyYXkgZm9yIGVudHJ5IHBvaW50cyB3aGljaCBp cyBub3Qgc3VwcG9ydGVkLgo+ID4gPiA+ID4gPiA+IEhvd2V2ZXIsCj4gPiAKPiA+IGVhc3kKPiA+ IAo+ID4gPiA+ID4gPiA+IHdvcmthcm91bmQgZm9yIHRoYXQgaXMgdG8gZmxhdHRlbiAyRCBhcnJh eSB0byAxRCBhbmQgZWl0aGVyIGhhdmUKPiA+ID4gPiA+ID4gPiBhbm90aGVyCj4gPiA+ID4gCj4g PiA+ID4gc2xpY2UKPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBjb250cm9sIGZpZWxkIHdoaWNoIHdv dWxkIHRlbGwgZmlyc3QgZW50cnkgcG9pbnQgaW5kZXggZm9yCj4gPiA+ID4gPiA+ID4gY29udmVu aWVuY2Ugb3IKPiA+ID4gPiAKPiA+ID4gPiBsZXQKPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBkcml2 ZXIgY2FsY3VsYXRlIGl0IGJ5IGFkZGluZyB1cCBhbGwgbnVtX2VudHJ5X3BvaW50X29mZnNldHMg b2YKPiA+ID4gPiA+ID4gPiBwcmV2aW91cwo+ID4gPiA+ID4gPiA+IHNsaWNlcy4KPiA+ID4gPiA+ ID4gPiAKPiA+ID4gPiA+ID4gPiBIYW5zLCB3aGF0IGRvIHlvdSB0aGluaz8KPiA+ID4gPiA+ID4g Cj4gPiA+ID4gPiA+IElmIEkgd291bGQgc3VwcG9ydCAyRCB2YXJpYWJsZSBhcnJheSBzaXplcywg d291bGRuJ3QgdGhhdCBiZSBtb3JlCj4gPiAKPiA+IGVsZWdhbnQ/Cj4gPiAKPiA+ID4gPiA+ID4g VGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gZG9lc24ndCBzdXBwb3J0IHRoYXQsIGJ1dCBhcyB0 aGUgY29tbWl0Cj4gPiA+ID4gPiA+IGxvZwo+ID4gCj4gPiBmb3IKPiA+IAo+ID4gPiA+ID4gPiBw YXRjaCAxLzE3IHNheXM6Cj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiAiQ3VycmVudGx5IGR5bmFt aWNhbGx5IHNpemVkIGFycmF5cyBhcmUgbGltaXRlZCB0byBvbmUgZGltZW5zaW9uYWwKPiA+IAo+ ID4gYXJyYXlzLAo+ID4gCj4gPiA+ID4gPiA+IGJ1dCB0aGF0IG1pZ2h0IGNoYW5nZSBpbiB0aGUg ZnV0dXJlIGlmIHRoZXJlIGlzIGEgbmVlZCBmb3IgaXQuIgo+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gTGV0IG1lIGtub3cgaWYgeW91IGFncmVlLCBhbmQgSSdsbCB0cnkgdG8gaW1wbGVtZW50IHRo aXMuIEl0J3MKPiA+ID4gPiA+ID4gYmVlbiBhCj4gPiA+ID4gCj4gPiA+ID4gd2hpbGUKPiA+ID4g PiAKPiA+ID4gPiA+ID4gc2luY2UgSSBsYXN0IGxvb2tlZCBhdCB0aGlzLCBzbyBJJ20gbm90IHN1 cmUgaG93IG11Y2ggd29yayBpdCBpcywKPiA+ID4gPiA+ID4gYnV0IGl0Cj4gPiA+ID4gCj4gPiA+ ID4gaXMKPiA+ID4gPiAKPiA+ID4gPiA+ID4gcHJvYmFibHkgd29ydGggYSBzaG90Lgo+ID4gPiA+ ID4gCj4gPiA+ID4gPiBEaWdnaW5nIG1vcmUgaW50byB0aGlzIG1hZGUgbWUgcmVhbGl6ZSB0aGF0 IHRoaXMgZG9lc24ndCBhY3R1YWxseQo+ID4gPiA+ID4gaGVscAo+ID4gCj4gPiBmb3IKPiA+IAo+ ID4gPiA+IHRoaXMKPiA+ID4gPiAKPiA+ID4gPiA+IHBhcnRpY3VsYXIgY2FzZS4KPiA+ID4gPiA+ IAo+ID4gPiA+ID4gSSB3b3VsZCBsZWFuIHRvd2FyZHMgeW91ciBzZWNvbmQgc3VnZ2VzdGlvbiBv ZiBhZGRpbmcgdXAgYWxsCj4gPiA+ID4gCj4gPiA+ID4gbnVtX2VudHJ5X3BvaW50X29mZnNldHMK PiA+ID4gPiAKPiA+ID4gPiA+IG9mIHByZXZpb3VzIHNsaWNlcy4KPiA+ID4gPiAKPiA+ID4gPiBK dXN0IG9uZSBxdWVzdGlvbi9jbGFyaWZpY2F0aW9uIGFib3V0IGR5bmFtaWMgYXJyYXlzIC0gZG9l cyBkcml2ZXIKPiA+ID4gPiBuZWVkIHRvCj4gPiA+ID4gcmVzZXJ2ZSBtYXhpbXVtIGFtb3VudCBv ZiBtZW1vcnkgZm9yIGR5bmFtaWMgYXJyYXkgY29udHJvbCBhdAo+ID4gCj4gPiBpbml0aWFsaXph dGlvbgo+ID4gCj4gPiA+ID4gdGltZT8gSWYgc28sIHRoaXMgd291bGQgc3RpbGwgYmUgcHJvYmxl bWF0aWMsIHNpbmNlIHRoZXJlIGNvdW5kIGJlIGEKPiA+ID4gPiBodWdlCj4gPiA+ID4gYW1vdW50 IG9mIGVudHJ5IHBvaW50cyBpbiB0aGVvcnkuCj4gPiA+IAo+ID4gPiBXaGVuIGFkZGluZyB0aGUg Y29udHJvbCB0aGUgZHJpdmVyIGNvdWxkIHNldCAuZGltcyBmaWVsZCB0byBzcGVjaWZ5Cj4gPiA+ IHRoZSBtYXggbnVtYmVyIG9mIGFjY2VwdGVkIHNsaWNlcy4KPiA+ID4gSSBoYXZlIGFkZGVkICcj ZGVmaW5lIFY0TDJfSEVWQ19TTElDRV9NQVhfQ09VTlQgNjAwJyB0aGF0IHlvdSBjb3VsZCB1c2UK PiA+ID4gZm9yIHRoaXMgZmllbGQuIEl0IGlzIHRoZSB2YWx1ZSB3ZSBoYXZlIGZvdW5kIHdoZW4g dXNpbmcgc2xpY2VzIHdpdGgKPiA+ID4gUktWREVDCj4gPiA+IGRyaXZlci4KPiA+IAo+ID4gSXMg dGhpcyBtYXhpbXVtIHZhbHVlIGFwcGxpY2FibGUgb25seSB0byBSS1ZERUMgb3IgaXMgdW5pdmVy c2FsPyBBbnl3YXksCj4gPiB0aGlzIG1lYW5zIG1heGltdW0gb2Zmc2V0IHBvaW50cyBjb250cm9s IGZvciBDZWRydXMgd291bGQgYmUgNjAwICogMTAyNAo+ID4gKG1heC4gb2Zmc2V0IHBvaW50cyBz dXBwb3J0ZWQgcGVyIHNsaWNlKSAqIDQgfj0gMi40IE1CLCB3aGljaCBpcyBhIGxvdAo+ID4gZm9y IG9uZSBjb250cm9sLCBidXQgSSBjYW4gbGl2ZSB3aXRoIHRoYXQuLi4KPiAKPiBJIGJlbGlldmUg aXRzIGRlZmluZWQgZm9sbG93aW5nICJUYWJsZSBBLjgg4oCTIEdlbmVyYWwgdGllciBhbmQgbGV2 ZWwgbGltaXRzIi4KPiBXaXRoIHRoZSBhc3N1bXB0aW9uIHRoZXJlIHdpbGwgbmV2ZXIgYmUgYSBs ZXZlbCA3ICh3aGljaCBJIHRoaW5rIGlzIGZhaXIpLgo+IElmIGFueW9uZSBzYXcgb3RoZXIgcmVh c29ucyBmb3IgdGhpcyBsaW1pdCwgbGV0IG1lIGtub3cuCj4gCj4gVGhpcyBpcyBhIHdvcnNlIGNh c2Ugc2NlbmFyaW8sIHRoaXMgaXMgcXVpdGUgdW5saWtlbHkgaW4gcHJhY3RpY2UsIHNvIHdoaWxl Cj4gcGVyZm9ybWFuY2UgbWlnaHQgYmUgYSBkaXNhc3RlciBpZiB5b3VyIGNyYWZ0IGEgc3RyZWFt IGZvciB0aGF0IGNhc2UsIEkKPiBkb24ndCB0aGluayBpdCB3aWxsIGV2ZXIgaGFwcGVuIGluIHJl YWwgbGlmZS4KCkJ1dCBkbyB3ZSByZWFsbHkgbmVlZCB0byBjb3ZlciB3b3JzdCBjYXNlIHNjZW5h cmlvPyBJbiB0aGVvcnksIG9uZSBkcml2ZXIgY2FuIApzZXQgbGltaXQgdG8gKGZvciBleGFtcGxl KSBtYXggMTAwIHNsaWNlcyBhbmQgaWYgdGhlcmUgaXMgYSBmcmFtZSB3aXRoIDYwMCAKc2xpY2Vz LCB1c2Vyc3BhY2UgYXBwIHdvdWxkIHN1Ym1pdCA2IGRlY29kZSByZXF1ZXN0cy4gQmFzaWNhbGx5 IHRoZSBzYW1lIHdheSAKaXQncyBkb25lIHRvZGF5LiBXaGlsZSBub3QgYXMgcGVyZm9ybWFudCwg aXQgd291bGQgYmUgZ29vZCBjb21wcm9taXNlIGJldHdlZW4gCnJlc291cmNlcyBhbmQgc3BlZWQu Cgo+IAo+ID4gQmVzdCByZWdhcmRzLAo+ID4gSmVybmVqCj4gPiAKPiA+ID4gUmVnYXJkcywKPiA+ ID4gQmVuamFtaW4KPiA+ID4gCj4gPiA+ID4gQmVzdCByZWdhcmRzLAo+ID4gPiA+IEplcm5lago+ ID4gPiA+IAo+ID4gPiA+ID4gUmVnYXJkcywKPiA+ID4gPiA+IAo+ID4gPiA+ID4gCUhhbnMKPiA+ ID4gPiA+IAkKPiA+ID4gPiA+ID4gUmVnYXJkcywKPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IAlI YW5zCj4gPiA+ID4gPiA+IAkKPiA+ID4gPiA+ID4gPiBOb3RlLCBpdCBzZWVtcyB0aGF0IEgyNjUg ZGVjb2Rpbmcgb24gQ2VkcnVzIHN0aWxsIHdvcmtzIHdpdGhvdXQKPiA+ID4gPiA+ID4gPiBlbnRy eQo+ID4gPiA+IAo+ID4gPiA+IHBvaW50cywKPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBzbyB0aGlz IHByb2JsZW0gY2FuIGJlIHNvbHZlZCBsYXRlci4gSSdtIG5vdCBzdXJlIHdoYXQgd2UgbG9zZQo+ ID4gPiA+ID4gPiA+IHdpdGgKPiA+IAo+ID4gdGhhdAo+ID4gCj4gPiA+ID4gYnV0Cj4gPiA+ID4g Cj4gPiA+ID4gPiA+ID4gaXQgd2FzIHN1Z2dlc3RlZCB0aGF0IHRoaXMgY291bGQgaW5mbHVlbmNl IHNwZWVkIG9yIGVycm9yCj4gPiA+ID4gPiA+ID4gcmVzaWxpZW5jZSBvcgo+ID4gPiA+IAo+ID4g PiA+IGJvdGguCj4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gSG93ZXZlciwgSSB0aGluayB3ZSdyZSBj bG9zZSB0byBzb2x2ZSBpdCwgc28gSSdkIGxpa2UgdG8gZG8gdGhhdAo+ID4gPiA+ID4gPiA+IG5v dy4KPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBCZXN0IHJlZ2FyZHMsCj4gPiA+ID4gPiA+ ID4gSmVybmVqCj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBC ZW5qYW1pbiBHYWlnbmFyZAo+ID4gPiA+ID4gPiA+ID4gPGJlbmphbWluLmdhaWduYXJkQGNvbGxh Ym9yYS5jb20+Cj4gPiA+ID4gPiA+ID4gPiAtLS0KPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ID4gICAuLi4vdXNlcnNwYWNlLWFwaS9tZWRpYS92NGwvZXh0LWN0cmxzLWNvZGVjLnJzdCAg ICAgICB8IDExCj4gPiA+ID4gPiA+ID4gPiAgICsrKysrKysrKwo+ID4gCj4gPiArKwo+ID4gCj4g PiA+ID4gPiA+ID4gPiAgIGRyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItY3RybHMtZGVmcy5j ICAgICAgICAgICAgIHwgIDUKPiA+ID4gPiA+ID4gPiA+ICAgKysrKysKPiA+ID4gPiA+ID4gPiA+ ICAgaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgNQo+ID4gPiA+ID4gPiA+ID4gICArKysrLQo+ID4gPiA+ID4gPiA+ID4gICAzIGZpbGVzIGNo YW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKPiA+ID4gPiA+ID4gPiA+IAo+ ID4gPiA+ID4gPiA+ID4gZGlmZiAtLWdpdAo+ID4gPiA+ID4gPiA+ID4gYS9Eb2N1bWVudGF0aW9u L3VzZXJzcGFjZS1hcGkvbWVkaWEvdjRsL2V4dC1jdHJscy1jb2RlYy5yc3QKPiA+IAo+ID4gYi8K PiA+IAo+ID4gPiA+ID4gPiA+IERvY3VtZW50YXRpb24vdXNlcnNwYWNlLWFwaS9tZWRpYS92NGwv ZXh0LWN0cmxzLWNvZGVjLnJzdAo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gaW5kZXgg MDc5NmIxNTYzZGFhLi4wNTIyOGUyODBmNjYgMTAwNjQ0Cj4gPiA+ID4gPiA+ID4gPiAtLS0KPiA+ ID4gPiA+ID4gPiA+IGEvRG9jdW1lbnRhdGlvbi91c2Vyc3BhY2UtYXBpL21lZGlhL3Y0bC9leHQt Y3RybHMtY29kZWMucnN0Cj4gPiA+ID4gPiA+ID4gPiArKysKPiA+ID4gPiA+ID4gPiA+IGIvRG9j dW1lbnRhdGlvbi91c2Vyc3BhY2UtYXBpL21lZGlhL3Y0bC9leHQtY3RybHMtY29kZWMucnN0Cj4g PiA+ID4gPiA+ID4gPiBAQCAtMzAxMCw2ICszMDEwLDkgQEAgZW51bQo+ID4gPiA+ID4gPiA+ID4g djRsMl9tcGVnX3ZpZGVvX2hldmNfc2l6ZV9vZl9sZW5ndGhfZmllbGQgLQo+ID4gPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+ID4gPiAgICAgICAqIC0gX191MzIKPiA+ID4gPiA+ID4gPiA+ICAgICAg IAo+ID4gPiA+ID4gPiA+ID4gICAgICAgICAtIGBgZGF0YV9iaXRfb2Zmc2V0YGAKPiA+ID4gPiA+ ID4gPiA+ICAgICAgICAgLSBPZmZzZXQgKGluIGJpdHMpIHRvIHRoZSB2aWRlbyBkYXRhIGluIHRo ZSBjdXJyZW50Cj4gPiA+ID4gPiA+ID4gPiAgICAgICAgIHNsaWNlIGRhdGEuCj4gPiA+ID4gPiA+ ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICsgICAgKiAtIF9fdTMyCj4gPiA+ID4gPiA+ID4gPiArICAg ICAgLSBgYG51bV9lbnRyeV9wb2ludF9vZmZzZXRzYGAKPiA+ID4gPiA+ID4gPiA+ICsgICAgICAt IFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGVudHJ5IHBvaW50IG9mZnNldCBzeW50YXgKPiA+ID4g PiA+ID4gPiA+IGVsZW1lbnRzIGluCj4gPiAKPiA+IHRoZQo+ID4gCj4gPiA+ID4gPiA+ID4gc2xp Y2UgaGVhZGVyLgo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gICAgICAgKiAtIF9fdTgK PiA+ID4gPiA+ID4gPiA+ICAgICAgIAo+ID4gPiA+ID4gPiA+ID4gICAgICAgICAtIGBgbmFsX3Vu aXRfdHlwZWBgCj4gPiA+ID4gPiA+ID4gPiAgICAgICAgIC0gU3BlY2lmaWVzIHRoZSBjb2Rpbmcg dHlwZSBvZiB0aGUgc2xpY2UgKEIsIFAgb3IgSSkuCj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gPiA+IEBAIC0zMTUwLDYgKzMxNTMsMTQgQEAgZW51bQo+ID4gPiA+ID4gPiA+ID4gdjRsMl9t cGVnX3ZpZGVvX2hldmNfc2l6ZV9vZl9sZW5ndGhfZmllbGQgLQo+ID4gPiA+ID4gPiA+ID4gCj4g PiA+ID4gPiA+ID4gPiAgICAgICBcbm9ybWFsc2l6ZQo+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4g PiA+ID4gPiArYGBWNEwyX0NJRF9TVEFURUxFU1NfSEVWQ19FTlRSWV9QT0lOVF9PRkZTRVRTIChp bnRlZ2VyKWBgCj4gPiA+ID4gPiA+ID4gPiArICAgIFNwZWNpZmllcyBlbnRyeSBwb2ludCBvZmZz ZXRzIGluIGJ5dGVzLgo+ID4gPiA+ID4gPiA+ID4gKyAgICBUaGlzIGNvbnRyb2wgaXMgYSBkeW5h bWljYWxseSBzaXplZCBhcnJheS4gVGhlIG51bWJlciBvZgo+ID4gPiA+ID4gPiA+ID4gZW50cnkK PiA+ID4gPiAKPiA+ID4gPiBwb2ludAo+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gKyAgICBvZmZz ZXRzIGlzIHJlcG9ydGVkIGJ5IHRoZSBgYGVsZW1zYGAgZmllbGQuCj4gPiA+ID4gPiA+ID4gPiAr ICAgIFRoaXMgYml0c3RyZWFtIHBhcmFtZXRlciBpcyBkZWZpbmVkIGFjY29yZGluZyB0bwo+ID4g PiA+ID4gPiA+ID4gOnJlZjpgaGV2Y2AuCj4gPiA+ID4gPiA+ID4gPiArICAgIFRoZXkgYXJlIGRl c2NyaWJlZCBpbiBzZWN0aW9uIDcuNC43LjEgIkdlbmVyYWwgc2xpY2UKPiA+ID4gPiA+ID4gPiA+ IHNlZ21lbnQKPiA+IAo+ID4gaGVhZGVyCj4gPiAKPiA+ID4gPiA+ID4gPiA+ICsgICAgc2VtYW50 aWNzIiBvZiB0aGUgc3BlY2lmaWNhdGlvbi4KPiA+ID4gPiA+ID4gPiA+ICsKPiA+ID4gPiA+ID4g PiA+IAo+ID4gPiA+ID4gPiA+ID4gICBgYFY0TDJfQ0lEX1NUQVRFTEVTU19IRVZDX1NDQUxJTkdf TUFUUklYIChzdHJ1Y3QpYGAKPiA+ID4gPiA+ID4gPiA+ICAgCj4gPiA+ID4gPiA+ID4gPiAgICAg ICBTcGVjaWZpZXMgdGhlIEhFVkMgc2NhbGluZyBtYXRyaXggcGFyYW1ldGVycyB1c2VkIGZvcgo+ ID4gPiA+ID4gPiA+ID4gICAgICAgdGhlIHNjYWxpbmcKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gPiBwcm9jZXNzCj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiAgICAgICBmb3IgdHJh bnNmb3JtIGNvZWZmaWNpZW50cy4KPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItY3RybHMtZGVmcy5jCj4gPiA+ ID4gPiA+ID4gPiBiL2RyaXZlcnMvbWVkaWEvCj4gPiA+ID4gCj4gPiA+ID4gdjRsMi0KPiA+ID4g PiAKPiA+ID4gPiA+ID4gPiBjb3JlL3Y0bDItY3RybHMtZGVmcy5jCj4gPiA+ID4gPiA+ID4gCj4g PiA+ID4gPiA+ID4gPiBpbmRleCBkNTk0ZWZiY2JiOTMuLmUyMjkyMWU3ZWE2MSAxMDA2NDQKPiA+ ID4gPiA+ID4gPiA+IC0tLSBhL2RyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItY3RybHMtZGVm cy5jCj4gPiA+ID4gPiA+ID4gPiArKysgYi9kcml2ZXJzL21lZGlhL3Y0bDItY29yZS92NGwyLWN0 cmxzLWRlZnMuYwo+ID4gPiA+ID4gPiA+ID4gQEAgLTExODgsNiArMTE4OCw3IEBAIGNvbnN0IGNo YXIgKnY0bDJfY3RybF9nZXRfbmFtZSh1MzIgaWQpCj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gPiA+ICAgCWNhc2UgVjRMMl9DSURfU1RBVEVMRVNTX0hFVkNfREVDT0RFX1BBUkFNUzoJCQpy ZXR1cm4KPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiAiSEVWQyBEZWNvZGUgUGFyYW1ldGVy cyI7Cj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiAgIAljYXNlIFY0TDJfQ0lEX1NUQVRF TEVTU19IRVZDX0RFQ09ERV9NT0RFOgkJCnJldHVybgo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ICJIRVZDIERlY29kZSBNb2RlIjsKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICAg CWNhc2UgVjRMMl9DSURfU1RBVEVMRVNTX0hFVkNfU1RBUlRfQ09ERToJCQpyZXR1cm4KPiA+ID4g PiA+ID4gPiAKPiA+ID4gPiA+ID4gPiAiSEVWQyBTdGFydCBDb2RlIjsKPiA+ID4gPiA+ID4gPiAK PiA+ID4gPiA+ID4gPiA+ICsJY2FzZSBWNEwyX0NJRF9TVEFURUxFU1NfSEVWQ19FTlRSWV9QT0lO VF9PRkZTRVRTOgkKcmV0dXJuCj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gIkhFVkMgRW50 cnkgUG9pbnQgT2Zmc2V0cyI7Cj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiAgIAkvKiBD b2xvcmltZXRyeSBjb250cm9scyAqLwo+ID4gPiA+ID4gPiA+ID4gICAJLyogS2VlcCB0aGUgb3Jk ZXIgb2YgdGhlICdjYXNlJ3MgdGhlIHNhbWUgYXMgaW4KPiA+ID4gPiA+ID4gPiA+ICAgCXY0bDIt Y29udHJvbHMuaCEKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiAqLwo+ID4gPiA+ID4gPiA+ IAo+ID4gPiA+ID4gPiA+ID4gQEAgLTE1MTgsNiArMTUxOSwxMCBAQCB2b2lkIHY0bDJfY3RybF9m aWxsKHUzMiBpZCwgY29uc3QgY2hhcgo+ID4gPiA+ID4gPiA+ID4gKipuYW1lLAo+ID4gPiA+IAo+ ID4gPiA+IGVudW0KPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiB2NGwyX2N0cmxfdHlwZSAqdHlwZSwK PiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICAgCWNhc2UgVjRMMl9DSURfU1RBVEVMRVNT X0hFVkNfREVDT0RFX1BBUkFNUzoKPiA+ID4gPiA+ID4gPiA+ICAgCQkqdHlwZSA9IApWNEwyX0NU UkxfVFlQRV9IRVZDX0RFQ09ERV9QQVJBTVM7Cj4gPiA+ID4gPiA+ID4gPiAgIAkJYnJlYWs7Cj4g PiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICsJY2FzZSBWNEwyX0NJRF9TVEFURUxFU1Nf SEVWQ19FTlRSWV9QT0lOVF9PRkZTRVRTOgo+ID4gPiA+ID4gPiA+ID4gKwkJKnR5cGUgPSBWNEwy X0NUUkxfVFlQRV9VMzI7Cj4gPiA+ID4gPiA+ID4gPiArCQkqZmxhZ3MgfD0gVjRMMl9DVFJMX0ZM QUdfRFlOQU1JQ19BUlJBWTsKPiA+ID4gPiA+ID4gPiA+ICsJCWJyZWFrOwo+ID4gPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+ID4gPiAgIAljYXNlIFY0TDJfQ0lEX1NUQVRFTEVTU19WUDlfQ09NUFJF U1NFRF9IRFI6Cj4gPiA+ID4gPiA+ID4gPiAgIAkJKnR5cGUgPSAKVjRMMl9DVFJMX1RZUEVfVlA5 X0NPTVBSRVNTRURfSERSOwo+ID4gPiA+ID4gPiA+ID4gICAJCWJyZWFrOwo+ID4gPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxz LmgKPiA+ID4gPiA+ID4gPiA+IGIvaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxzLmgKPiA+ID4gPiA+ ID4gPiA+IGluZGV4IGEzYzgyOWVmNTMxYS4uMTMxOWNiOTlhZTNmIDEwMDY0NAo+ID4gPiA+ID4g PiA+ID4gLS0tIGEvaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxzLmgKPiA+ID4gPiA+ID4gPiA+ICsr KyBiL2luY2x1ZGUvbWVkaWEvaGV2Yy1jdHJscy5oCj4gPiA+ID4gPiA+ID4gPiBAQCAtMjAsNiAr MjAsNyBAQAo+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgVjRMMl9D SURfU1RBVEVMRVNTX0hFVkNfREVDT0RFX1BBUkFNUwo+ID4gCj4gPiAoVjRMMl9DSURfQ09ERUNf QkFTRQo+ID4gCj4gPiA+ID4gPiA+ID4gKyAxMDEyKQo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ID4gICAjZGVmaW5lIFY0TDJfQ0lEX1NUQVRFTEVTU19IRVZDX0RFQ09ERV9NT0RFCj4gPiAK PiA+IChWNEwyX0NJRF9DT0RFQ19CQVNFCj4gPiAKPiA+ID4gPiArIDEwMTUpCj4gPiA+ID4gCj4g PiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgVjRMMl9DSURfU1RBVEVMRVNTX0hFVkNfU1RBUlRfQ09E RQo+ID4gCj4gPiAoVjRMMl9DSURfQ09ERUNfQkFTRSArIDEwMTYpCj4gPiAKPiA+ID4gPiA+ID4g PiA+ICsjZGVmaW5lIFY0TDJfQ0lEX1NUQVRFTEVTU19IRVZDX0VOVFJZX1BPSU5UX09GRlNFVFMK PiA+IAo+ID4gKFY0TDJfQ0lEX0NPREVDX0JBU0UKPiA+IAo+ID4gPiA+ICsKPiA+ID4gPiAKPiA+ ID4gPiA+ID4gPiAxMDE3KQo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gICAvKiBlbnVt IHY0bDJfY3RybF90eXBlIHR5cGUgdmFsdWVzICovCj4gPiA+ID4gPiA+ID4gPiAgICNkZWZpbmUg VjRMMl9DVFJMX1RZUEVfSEVWQ19TUFMgMHgwMTIwCj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gPiA+IEBAIC0zMTgsNiArMzE5LDggQEAgc3RydWN0IHY0bDJfaGV2Y19wcmVkX3dlaWdodF90 YWJsZSB7Cj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICAgICoKPiA+ID4gPiA+ID4g PiA+ICAgICogQGJpdF9zaXplOiBzaXplIChpbiBiaXRzKSBvZiB0aGUgY3VycmVudCBzbGljZSBk YXRhCj4gPiA+ID4gPiA+ID4gPiAgICAqIEBkYXRhX2JpdF9vZmZzZXQ6IG9mZnNldCAoaW4gYml0 cykgdG8gdGhlIHZpZGVvIGRhdGEgaW4KPiA+ID4gPiA+ID4gPiA+ICAgIHRoZSBjdXJyZW50Cj4g PiA+ID4gCj4gPiA+ID4gc2xpY2UKPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBkYXRhCj4gPiA+ID4g PiA+ID4gCj4gPiA+ID4gPiA+ID4gPiArICogQG51bV9lbnRyeV9wb2ludF9vZmZzZXRzOiBzcGVj aWZpZXMgdGhlIG51bWJlciBvZiBlbnRyeQo+ID4gPiA+ID4gPiA+ID4gcG9pbnQgb2Zmc2V0Cj4g PiA+ID4gCj4gPiA+ID4gc3ludGF4Cj4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiArICoJCQkgICAg IGVsZW1lbnRzIGluIHRoZSBzbGljZSAKaGVhZGVyLgo+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4g PiA+ID4gPiAgICAqIEBuYWxfdW5pdF90eXBlOiBzcGVjaWZpZXMgdGhlIGNvZGluZyB0eXBlIG9m IHRoZSBzbGljZQo+ID4gPiA+ID4gPiA+ID4gICAgKEIsIFAgb3IgSSkKPiA+ID4gPiA+ID4gPiA+ ICAgICogQG51aF90ZW1wb3JhbF9pZF9wbHVzMTogbWludXMgMSBzcGVjaWZpZXMgYSB0ZW1wb3Jh bAo+ID4gPiA+ID4gPiA+ID4gICAgaWRlbnRpZmllciBmb3IKPiA+ID4gPiAKPiA+ID4gPiB0aGUK PiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBOQUwgdW5pdAo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ID4gICAgKiBAc2xpY2VfdHlwZTogc2VlIFY0TDJfSEVWQ19TTElDRV9UWVBFX3t9Cj4gPiA+ ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+IEBAIC0zNjAsNyArMzYzLDcgQEAgc3RydWN0IHY0 bDJfaGV2Y19wcmVkX3dlaWdodF90YWJsZSB7Cj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4g PiA+ICAgc3RydWN0IHY0bDJfY3RybF9oZXZjX3NsaWNlX3BhcmFtcyB7Cj4gPiA+ID4gPiA+ID4g PiAgIAo+ID4gPiA+ID4gPiA+ID4gICAJX191MzIJYml0X3NpemU7Cj4gPiA+ID4gPiA+ID4gPiAg IAlfX3UzMglkYXRhX2JpdF9vZmZzZXQ7Cj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ IC0KPiA+ID4gPiA+ID4gPiA+ICsJX191MzIJbnVtX2VudHJ5X3BvaW50X29mZnNldHM7Cj4gPiA+ ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICAgCS8qIElTTy9JRUMgMjMwMDgtMiwgSVRVLVQg UmVjLiBILjI2NTogTkFMIHVuaXQgCmhlYWRlciAqLwo+ID4gPiA+ID4gPiA+ID4gICAJX191OAlu YWxfdW5pdF90eXBlOwo+ID4gPiA+ID4gPiA+ID4gICAJX191OAludWhfdGVtcG9yYWxfaWRfcGx1 czE7CgoKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K TGludXgtcm9ja2NoaXAgbWFpbGluZyBsaXN0CkxpbnV4LXJvY2tjaGlwQGxpc3RzLmluZnJhZGVh ZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1y b2NrY2hpcAo= 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 CBB94C43334 for ; Wed, 1 Jun 2022 16:36:39 +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:References:In-Reply-To: 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=0pcCQDMmxjEyUVZbR501vy3nBHRdb8Ly80z3JEzrNRg=; b=Gq0z8uEiXljNhW cz67EsV6bUkxfIPmRWUYhECcjZEWj+2IGVivx8gm8SzR5Ubj+u+DIyxdi9jtCTk5rBZsvt+BLHcZQ mfeRk6huNi00i5vzn8t9VQSC6DzD1TnsYyFjXJ+Qf7Piv60TrELbW36u2DkcUrHII/Qp1FJ/rRu5K euTp0fspIsAF+C/wuskZE0EqkxpwbzQ3xq62SoKRibUV11VP0pX+FrIU2g4LkrJ5r9rWTyOXA6WAk p0KQecxmH9H02U6W4PWO1LFssC7qEuY2hQZAIRICa5pI2gxxT9/L3ajG+G8CVNKyCjd+yeir5/N/k 8Wm5WjZ/p9qbI2z4pj+A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nwRJk-00H9je-5x; Wed, 01 Jun 2022 16:35:32 +0000 Received: from mail-ej1-x62d.google.com ([2a00:1450:4864:20::62d]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nwRJf-00H9ig-QB; Wed, 01 Jun 2022 16:35:30 +0000 Received: by mail-ej1-x62d.google.com with SMTP id fu3so3417782ejc.7; Wed, 01 Jun 2022 09:35:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1EvKDiEy2mDM7M3ZxgWlbFl9Z+GodMXi6d9iudxPnGU=; b=JmLG+8b1EiVyVLTs8YmmpsnIEKHzGCt2qwyKITVt7fKPZxzr3XE7JUluqsYAgcnjzj 8pvWHwtmIs/K8xHs/RojrozRWD+hVjb+8am5zwbKSJW9iWcfRVFfDlOAY+M3mpi8EESo fivqF5g2Vz+djoM+R3szKSLr7vKErG0Blu07ShZ96dy4WFXJdC2ekugfoUe9oPuW7fXj 7nzjtDxgtl3UKZWdXcL0Nk9TTaT6gPROks2F99d1yJhoavZ6z8UvxsYKF6jBUabRxAxc WCz7X72s1LfYpm4Ebfzd95hosS6lhJCySs2upwzaqaYW4zKvyf7gMf0Pruk7Ka5aorjx 8EPQ== 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=1EvKDiEy2mDM7M3ZxgWlbFl9Z+GodMXi6d9iudxPnGU=; b=aDfZo9sFTT/6+O2wMgDo5n9pasqT8o397azfWbQS1UHf0zSNQ0ljWt5yHKmzyAFyOB Teo+Uq2BnuE/2YXgvgdMhTO6l5hcIsz9qFUPMIkhefINNUGtbjhriAwUDzXT6P2KgmIs QWUGGd3Nym4XuNIzzcZVg285+995Idv1egB2DycDvANlsGdMDMe/e0q7SUjSLRSoPvGy lF10hNR0hbvLSfXGNNudKcK+TYPsne8goofGIaXG91iQfY6RTtdRLm+JF+7TtXpcombh Llled7H0x4Mja7B+LgkS67iy4XKMM+whewQEJ4MXe+iMfKu/MPSDFM8KR8rXjQL8Lqus rCVQ== X-Gm-Message-State: AOAM5338iR/ohfTDgLkJjXjUNEcJi3yfX315jCj23hAUsZ4U4xW0NzdO 3bLFJYJOH0WnV/ATHFgdRsQ= X-Google-Smtp-Source: ABdhPJwxZzkqm5dCsP8Ds0XHL9RdHf0YFnMeVJGn/lyzHpSOHMWBIVw1LWtDn0BIibmiKKHXbbXOTg== X-Received: by 2002:a17:907:1621:b0:6fe:fc8f:21f1 with SMTP id hb33-20020a170907162100b006fefc8f21f1mr321615ejc.359.1654101325457; Wed, 01 Jun 2022 09:35:25 -0700 (PDT) Received: from jernej-laptop.localnet (213-161-3-76.dynamic.telemach.net. [213.161.3.76]) by smtp.gmail.com with ESMTPSA id f3-20020a056402150300b0042dd3bf1403sm1177480edw.54.2022.06.01.09.35.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 09:35:25 -0700 (PDT) From: Jernej =?utf-8?B?xaBrcmFiZWM=?= To: mchehab@kernel.org, ezequiel@vanguardiasur.com.ar, p.zabel@pengutronix.de, gregkh@linuxfoundation.org, mripard@kernel.org, paul.kocialkowski@bootlin.com, wens@csie.org, samuel@sholland.org, andrzej.p@collabora.com, Hans Verkuil , Benjamin Gaignard , Nicolas Dufresne Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, kernel@collabora.com Subject: Re: [PATCH v6 11/17] media: uapi: Add V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS control Date: Wed, 01 Jun 2022 18:35:23 +0200 Message-ID: <11988268.O9o76ZdvQC@jernej-laptop> In-Reply-To: <95261aa18425e8f5571888a41ee03d9dfd2814b9.camel@collabora.com> References: <20220527143134.3360174-1-benjamin.gaignard@collabora.com> <2102878.irdbgypaU6@kista> <95261aa18425e8f5571888a41ee03d9dfd2814b9.camel@collabora.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220601_093527_917439_B533FDAC X-CRM114-Status: GOOD ( 62.40 ) 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 RG5lIHNyZWRhLCAwMS4ganVuaWogMjAyMiBvYiAxODoyMDo1MyBDRVNUIGplIE5pY29sYXMgRHVm cmVzbmUgbmFwaXNhbChhKToKPiBMZSBtYXJkaSAzMSBtYWkgMjAyMiDDoCAyMDoyMCArMDIwMCwg SmVybmVqIMWga3JhYmVjIGEgw6ljcml0IDoKPiA+IERuZSB0b3JlaywgMzEuIG1haiAyMDIyIG9i IDA4OjU4OjQ2IENFU1QgamUgQmVuamFtaW4gR2FpZ25hcmQgbmFwaXNhbChhKToKPiA+ID4gTGUg MzAvMDUvMjAyMiDDoCAyMzoyNCwgSmVybmVqIMWga3JhYmVjIGEgw6ljcml0IDoKPiA+ID4gPiBE bmUgcG9uZWRlbGplaywgMzAuIG1haiAyMDIyIG9iIDE1OjQ5OjU3IENFU1QgamUgSGFucyBWZXJr dWlsIApuYXBpc2FsKGEpOgo+ID4gPiA+ID4gT24gMzAvMDUvMjAyMiAxMToxOCwgSGFucyBWZXJr dWlsIHdyb3RlOgo+ID4gPiA+ID4gPiBPbiAyOS8wNS8yMDIyIDA4OjQwLCBKZXJuZWogxaBrcmFi ZWMgd3JvdGU6Cj4gPiA+ID4gPiA+ID4gSGkhCj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4g VGhpcyBzZXJpZXMgbG9va3MgdmVyeSBnb29kIGFuZCBJIHBsYW4gdG8gdGVzdCBpdCBzaG9ydGx5 IG9uCj4gPiA+ID4gPiA+ID4gQ2VkcnVzLAo+ID4gCj4gPiBidXQKPiA+IAo+ID4gPiA+IEkKPiA+ ID4gPiAKPiA+ID4gPiA+ID4gPiBoYXZlIG9uZSBtYWpvciBjb25jZXJuIGJlbG93Lgo+ID4gPiA+ ID4gPiA+IAo+ID4gPiA+ID4gPiA+IERuZSBwZXRlaywgMjcuIG1haiAyMDIyIG9iIDE2OjMxOjI4 IENFU1QgamUgQmVuamFtaW4gR2FpZ25hcmQKPiA+IAo+ID4gbmFwaXNhbChhKToKPiA+ID4gPiA+ ID4gPiA+IFRoZSBudW1iZXIgb2YgJ2VudHJ5IHBvaW50IG9mZnNldCcgY2FuIGJlIHZlcnkgdmFy aWFibGUuCj4gPiA+ID4gPiA+ID4gPiBJbnN0ZWFkIG9mIHVzaW5nIGEgbGFyZ2Ugc3RhdGljIGFy cmF5IGRlZmluZSBhIHY0bDIgZHluYW1pYwo+ID4gPiA+ID4gPiA+ID4gYXJyYXkKPiA+ID4gPiA+ ID4gPiA+IG9mIFUzMiAoVjRMMl9DVFJMX1RZUEVfVTMyKS4KPiA+ID4gPiA+ID4gPiA+IFRoZSBu dW1iZXIgb2YgZW50cnkgcG9pbnQgb2Zmc2V0cyBpcyByZXBvcnRlZCBieSB0aGUgZWxlbXMKPiA+ ID4gPiA+ID4gPiA+IGZpZWxkCj4gPiA+ID4gPiA+ID4gPiBhbmQgaW4gc3RydWN0Cj4gPiA+ID4g PiA+ID4gPiB2NGwyX2N0cmxfaGV2Y19zbGljZV9wYXJhbXMubnVtX2VudHJ5X3BvaW50X29mZnNl dHMKPiA+ID4gPiA+ID4gPiA+IGZpZWxkLgo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+IFNs aWNlIGNvbnRyb2wgYnkgaXRzZWxmIGlzIHZhcmlhYmxlIGxlbmd0aCBhcnJheSwgc28geW91IHdv dWxkCj4gPiA+ID4gPiA+ID4gYWN0dWFsbHkKPiA+ID4gPiAKPiA+ID4gPiBuZWVkCj4gPiA+ID4g Cj4gPiA+ID4gPiA+ID4gMkQgdmFyaWFibGUgYXJyYXkgZm9yIGVudHJ5IHBvaW50cyB3aGljaCBp cyBub3Qgc3VwcG9ydGVkLgo+ID4gPiA+ID4gPiA+IEhvd2V2ZXIsCj4gPiAKPiA+IGVhc3kKPiA+ IAo+ID4gPiA+ID4gPiA+IHdvcmthcm91bmQgZm9yIHRoYXQgaXMgdG8gZmxhdHRlbiAyRCBhcnJh eSB0byAxRCBhbmQgZWl0aGVyIGhhdmUKPiA+ID4gPiA+ID4gPiBhbm90aGVyCj4gPiA+ID4gCj4g PiA+ID4gc2xpY2UKPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBjb250cm9sIGZpZWxkIHdoaWNoIHdv dWxkIHRlbGwgZmlyc3QgZW50cnkgcG9pbnQgaW5kZXggZm9yCj4gPiA+ID4gPiA+ID4gY29udmVu aWVuY2Ugb3IKPiA+ID4gPiAKPiA+ID4gPiBsZXQKPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBkcml2 ZXIgY2FsY3VsYXRlIGl0IGJ5IGFkZGluZyB1cCBhbGwgbnVtX2VudHJ5X3BvaW50X29mZnNldHMg b2YKPiA+ID4gPiA+ID4gPiBwcmV2aW91cwo+ID4gPiA+ID4gPiA+IHNsaWNlcy4KPiA+ID4gPiA+ ID4gPiAKPiA+ID4gPiA+ID4gPiBIYW5zLCB3aGF0IGRvIHlvdSB0aGluaz8KPiA+ID4gPiA+ID4g Cj4gPiA+ID4gPiA+IElmIEkgd291bGQgc3VwcG9ydCAyRCB2YXJpYWJsZSBhcnJheSBzaXplcywg d291bGRuJ3QgdGhhdCBiZSBtb3JlCj4gPiAKPiA+IGVsZWdhbnQ/Cj4gPiAKPiA+ID4gPiA+ID4g VGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gZG9lc24ndCBzdXBwb3J0IHRoYXQsIGJ1dCBhcyB0 aGUgY29tbWl0Cj4gPiA+ID4gPiA+IGxvZwo+ID4gCj4gPiBmb3IKPiA+IAo+ID4gPiA+ID4gPiBw YXRjaCAxLzE3IHNheXM6Cj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiAiQ3VycmVudGx5IGR5bmFt aWNhbGx5IHNpemVkIGFycmF5cyBhcmUgbGltaXRlZCB0byBvbmUgZGltZW5zaW9uYWwKPiA+IAo+ ID4gYXJyYXlzLAo+ID4gCj4gPiA+ID4gPiA+IGJ1dCB0aGF0IG1pZ2h0IGNoYW5nZSBpbiB0aGUg ZnV0dXJlIGlmIHRoZXJlIGlzIGEgbmVlZCBmb3IgaXQuIgo+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gTGV0IG1lIGtub3cgaWYgeW91IGFncmVlLCBhbmQgSSdsbCB0cnkgdG8gaW1wbGVtZW50IHRo aXMuIEl0J3MKPiA+ID4gPiA+ID4gYmVlbiBhCj4gPiA+ID4gCj4gPiA+ID4gd2hpbGUKPiA+ID4g PiAKPiA+ID4gPiA+ID4gc2luY2UgSSBsYXN0IGxvb2tlZCBhdCB0aGlzLCBzbyBJJ20gbm90IHN1 cmUgaG93IG11Y2ggd29yayBpdCBpcywKPiA+ID4gPiA+ID4gYnV0IGl0Cj4gPiA+ID4gCj4gPiA+ ID4gaXMKPiA+ID4gPiAKPiA+ID4gPiA+ID4gcHJvYmFibHkgd29ydGggYSBzaG90Lgo+ID4gPiA+ ID4gCj4gPiA+ID4gPiBEaWdnaW5nIG1vcmUgaW50byB0aGlzIG1hZGUgbWUgcmVhbGl6ZSB0aGF0 IHRoaXMgZG9lc24ndCBhY3R1YWxseQo+ID4gPiA+ID4gaGVscAo+ID4gCj4gPiBmb3IKPiA+IAo+ ID4gPiA+IHRoaXMKPiA+ID4gPiAKPiA+ID4gPiA+IHBhcnRpY3VsYXIgY2FzZS4KPiA+ID4gPiA+ IAo+ID4gPiA+ID4gSSB3b3VsZCBsZWFuIHRvd2FyZHMgeW91ciBzZWNvbmQgc3VnZ2VzdGlvbiBv ZiBhZGRpbmcgdXAgYWxsCj4gPiA+ID4gCj4gPiA+ID4gbnVtX2VudHJ5X3BvaW50X29mZnNldHMK PiA+ID4gPiAKPiA+ID4gPiA+IG9mIHByZXZpb3VzIHNsaWNlcy4KPiA+ID4gPiAKPiA+ID4gPiBK dXN0IG9uZSBxdWVzdGlvbi9jbGFyaWZpY2F0aW9uIGFib3V0IGR5bmFtaWMgYXJyYXlzIC0gZG9l cyBkcml2ZXIKPiA+ID4gPiBuZWVkIHRvCj4gPiA+ID4gcmVzZXJ2ZSBtYXhpbXVtIGFtb3VudCBv ZiBtZW1vcnkgZm9yIGR5bmFtaWMgYXJyYXkgY29udHJvbCBhdAo+ID4gCj4gPiBpbml0aWFsaXph dGlvbgo+ID4gCj4gPiA+ID4gdGltZT8gSWYgc28sIHRoaXMgd291bGQgc3RpbGwgYmUgcHJvYmxl bWF0aWMsIHNpbmNlIHRoZXJlIGNvdW5kIGJlIGEKPiA+ID4gPiBodWdlCj4gPiA+ID4gYW1vdW50 IG9mIGVudHJ5IHBvaW50cyBpbiB0aGVvcnkuCj4gPiA+IAo+ID4gPiBXaGVuIGFkZGluZyB0aGUg Y29udHJvbCB0aGUgZHJpdmVyIGNvdWxkIHNldCAuZGltcyBmaWVsZCB0byBzcGVjaWZ5Cj4gPiA+ IHRoZSBtYXggbnVtYmVyIG9mIGFjY2VwdGVkIHNsaWNlcy4KPiA+ID4gSSBoYXZlIGFkZGVkICcj ZGVmaW5lIFY0TDJfSEVWQ19TTElDRV9NQVhfQ09VTlQgNjAwJyB0aGF0IHlvdSBjb3VsZCB1c2UK PiA+ID4gZm9yIHRoaXMgZmllbGQuIEl0IGlzIHRoZSB2YWx1ZSB3ZSBoYXZlIGZvdW5kIHdoZW4g dXNpbmcgc2xpY2VzIHdpdGgKPiA+ID4gUktWREVDCj4gPiA+IGRyaXZlci4KPiA+IAo+ID4gSXMg dGhpcyBtYXhpbXVtIHZhbHVlIGFwcGxpY2FibGUgb25seSB0byBSS1ZERUMgb3IgaXMgdW5pdmVy c2FsPyBBbnl3YXksCj4gPiB0aGlzIG1lYW5zIG1heGltdW0gb2Zmc2V0IHBvaW50cyBjb250cm9s IGZvciBDZWRydXMgd291bGQgYmUgNjAwICogMTAyNAo+ID4gKG1heC4gb2Zmc2V0IHBvaW50cyBz dXBwb3J0ZWQgcGVyIHNsaWNlKSAqIDQgfj0gMi40IE1CLCB3aGljaCBpcyBhIGxvdAo+ID4gZm9y IG9uZSBjb250cm9sLCBidXQgSSBjYW4gbGl2ZSB3aXRoIHRoYXQuLi4KPiAKPiBJIGJlbGlldmUg aXRzIGRlZmluZWQgZm9sbG93aW5nICJUYWJsZSBBLjgg4oCTIEdlbmVyYWwgdGllciBhbmQgbGV2 ZWwgbGltaXRzIi4KPiBXaXRoIHRoZSBhc3N1bXB0aW9uIHRoZXJlIHdpbGwgbmV2ZXIgYmUgYSBs ZXZlbCA3ICh3aGljaCBJIHRoaW5rIGlzIGZhaXIpLgo+IElmIGFueW9uZSBzYXcgb3RoZXIgcmVh c29ucyBmb3IgdGhpcyBsaW1pdCwgbGV0IG1lIGtub3cuCj4gCj4gVGhpcyBpcyBhIHdvcnNlIGNh c2Ugc2NlbmFyaW8sIHRoaXMgaXMgcXVpdGUgdW5saWtlbHkgaW4gcHJhY3RpY2UsIHNvIHdoaWxl Cj4gcGVyZm9ybWFuY2UgbWlnaHQgYmUgYSBkaXNhc3RlciBpZiB5b3VyIGNyYWZ0IGEgc3RyZWFt IGZvciB0aGF0IGNhc2UsIEkKPiBkb24ndCB0aGluayBpdCB3aWxsIGV2ZXIgaGFwcGVuIGluIHJl YWwgbGlmZS4KCkJ1dCBkbyB3ZSByZWFsbHkgbmVlZCB0byBjb3ZlciB3b3JzdCBjYXNlIHNjZW5h cmlvPyBJbiB0aGVvcnksIG9uZSBkcml2ZXIgY2FuIApzZXQgbGltaXQgdG8gKGZvciBleGFtcGxl KSBtYXggMTAwIHNsaWNlcyBhbmQgaWYgdGhlcmUgaXMgYSBmcmFtZSB3aXRoIDYwMCAKc2xpY2Vz LCB1c2Vyc3BhY2UgYXBwIHdvdWxkIHN1Ym1pdCA2IGRlY29kZSByZXF1ZXN0cy4gQmFzaWNhbGx5 IHRoZSBzYW1lIHdheSAKaXQncyBkb25lIHRvZGF5LiBXaGlsZSBub3QgYXMgcGVyZm9ybWFudCwg aXQgd291bGQgYmUgZ29vZCBjb21wcm9taXNlIGJldHdlZW4gCnJlc291cmNlcyBhbmQgc3BlZWQu Cgo+IAo+ID4gQmVzdCByZWdhcmRzLAo+ID4gSmVybmVqCj4gPiAKPiA+ID4gUmVnYXJkcywKPiA+ ID4gQmVuamFtaW4KPiA+ID4gCj4gPiA+ID4gQmVzdCByZWdhcmRzLAo+ID4gPiA+IEplcm5lago+ ID4gPiA+IAo+ID4gPiA+ID4gUmVnYXJkcywKPiA+ID4gPiA+IAo+ID4gPiA+ID4gCUhhbnMKPiA+ ID4gPiA+IAkKPiA+ID4gPiA+ID4gUmVnYXJkcywKPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IAlI YW5zCj4gPiA+ID4gPiA+IAkKPiA+ID4gPiA+ID4gPiBOb3RlLCBpdCBzZWVtcyB0aGF0IEgyNjUg ZGVjb2Rpbmcgb24gQ2VkcnVzIHN0aWxsIHdvcmtzIHdpdGhvdXQKPiA+ID4gPiA+ID4gPiBlbnRy eQo+ID4gPiA+IAo+ID4gPiA+IHBvaW50cywKPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBzbyB0aGlz IHByb2JsZW0gY2FuIGJlIHNvbHZlZCBsYXRlci4gSSdtIG5vdCBzdXJlIHdoYXQgd2UgbG9zZQo+ ID4gPiA+ID4gPiA+IHdpdGgKPiA+IAo+ID4gdGhhdAo+ID4gCj4gPiA+ID4gYnV0Cj4gPiA+ID4g Cj4gPiA+ID4gPiA+ID4gaXQgd2FzIHN1Z2dlc3RlZCB0aGF0IHRoaXMgY291bGQgaW5mbHVlbmNl IHNwZWVkIG9yIGVycm9yCj4gPiA+ID4gPiA+ID4gcmVzaWxpZW5jZSBvcgo+ID4gPiA+IAo+ID4g PiA+IGJvdGguCj4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gSG93ZXZlciwgSSB0aGluayB3ZSdyZSBj bG9zZSB0byBzb2x2ZSBpdCwgc28gSSdkIGxpa2UgdG8gZG8gdGhhdAo+ID4gPiA+ID4gPiA+IG5v dy4KPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBCZXN0IHJlZ2FyZHMsCj4gPiA+ID4gPiA+ ID4gSmVybmVqCj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBC ZW5qYW1pbiBHYWlnbmFyZAo+ID4gPiA+ID4gPiA+ID4gPGJlbmphbWluLmdhaWduYXJkQGNvbGxh Ym9yYS5jb20+Cj4gPiA+ID4gPiA+ID4gPiAtLS0KPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ID4gICAuLi4vdXNlcnNwYWNlLWFwaS9tZWRpYS92NGwvZXh0LWN0cmxzLWNvZGVjLnJzdCAg ICAgICB8IDExCj4gPiA+ID4gPiA+ID4gPiAgICsrKysrKysrKwo+ID4gCj4gPiArKwo+ID4gCj4g PiA+ID4gPiA+ID4gPiAgIGRyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItY3RybHMtZGVmcy5j ICAgICAgICAgICAgIHwgIDUKPiA+ID4gPiA+ID4gPiA+ICAgKysrKysKPiA+ID4gPiA+ID4gPiA+ ICAgaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgNQo+ID4gPiA+ID4gPiA+ID4gICArKysrLQo+ID4gPiA+ID4gPiA+ID4gICAzIGZpbGVzIGNo YW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKPiA+ID4gPiA+ID4gPiA+IAo+ ID4gPiA+ID4gPiA+ID4gZGlmZiAtLWdpdAo+ID4gPiA+ID4gPiA+ID4gYS9Eb2N1bWVudGF0aW9u L3VzZXJzcGFjZS1hcGkvbWVkaWEvdjRsL2V4dC1jdHJscy1jb2RlYy5yc3QKPiA+IAo+ID4gYi8K PiA+IAo+ID4gPiA+ID4gPiA+IERvY3VtZW50YXRpb24vdXNlcnNwYWNlLWFwaS9tZWRpYS92NGwv ZXh0LWN0cmxzLWNvZGVjLnJzdAo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gaW5kZXgg MDc5NmIxNTYzZGFhLi4wNTIyOGUyODBmNjYgMTAwNjQ0Cj4gPiA+ID4gPiA+ID4gPiAtLS0KPiA+ ID4gPiA+ID4gPiA+IGEvRG9jdW1lbnRhdGlvbi91c2Vyc3BhY2UtYXBpL21lZGlhL3Y0bC9leHQt Y3RybHMtY29kZWMucnN0Cj4gPiA+ID4gPiA+ID4gPiArKysKPiA+ID4gPiA+ID4gPiA+IGIvRG9j dW1lbnRhdGlvbi91c2Vyc3BhY2UtYXBpL21lZGlhL3Y0bC9leHQtY3RybHMtY29kZWMucnN0Cj4g PiA+ID4gPiA+ID4gPiBAQCAtMzAxMCw2ICszMDEwLDkgQEAgZW51bQo+ID4gPiA+ID4gPiA+ID4g djRsMl9tcGVnX3ZpZGVvX2hldmNfc2l6ZV9vZl9sZW5ndGhfZmllbGQgLQo+ID4gPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+ID4gPiAgICAgICAqIC0gX191MzIKPiA+ID4gPiA+ID4gPiA+ICAgICAg IAo+ID4gPiA+ID4gPiA+ID4gICAgICAgICAtIGBgZGF0YV9iaXRfb2Zmc2V0YGAKPiA+ID4gPiA+ ID4gPiA+ICAgICAgICAgLSBPZmZzZXQgKGluIGJpdHMpIHRvIHRoZSB2aWRlbyBkYXRhIGluIHRo ZSBjdXJyZW50Cj4gPiA+ID4gPiA+ID4gPiAgICAgICAgIHNsaWNlIGRhdGEuCj4gPiA+ID4gPiA+ ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICsgICAgKiAtIF9fdTMyCj4gPiA+ID4gPiA+ID4gPiArICAg ICAgLSBgYG51bV9lbnRyeV9wb2ludF9vZmZzZXRzYGAKPiA+ID4gPiA+ID4gPiA+ICsgICAgICAt IFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGVudHJ5IHBvaW50IG9mZnNldCBzeW50YXgKPiA+ID4g PiA+ID4gPiA+IGVsZW1lbnRzIGluCj4gPiAKPiA+IHRoZQo+ID4gCj4gPiA+ID4gPiA+ID4gc2xp Y2UgaGVhZGVyLgo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gICAgICAgKiAtIF9fdTgK PiA+ID4gPiA+ID4gPiA+ICAgICAgIAo+ID4gPiA+ID4gPiA+ID4gICAgICAgICAtIGBgbmFsX3Vu aXRfdHlwZWBgCj4gPiA+ID4gPiA+ID4gPiAgICAgICAgIC0gU3BlY2lmaWVzIHRoZSBjb2Rpbmcg dHlwZSBvZiB0aGUgc2xpY2UgKEIsIFAgb3IgSSkuCj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gPiA+IEBAIC0zMTUwLDYgKzMxNTMsMTQgQEAgZW51bQo+ID4gPiA+ID4gPiA+ID4gdjRsMl9t cGVnX3ZpZGVvX2hldmNfc2l6ZV9vZl9sZW5ndGhfZmllbGQgLQo+ID4gPiA+ID4gPiA+ID4gCj4g PiA+ID4gPiA+ID4gPiAgICAgICBcbm9ybWFsc2l6ZQo+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4g PiA+ID4gPiArYGBWNEwyX0NJRF9TVEFURUxFU1NfSEVWQ19FTlRSWV9QT0lOVF9PRkZTRVRTIChp bnRlZ2VyKWBgCj4gPiA+ID4gPiA+ID4gPiArICAgIFNwZWNpZmllcyBlbnRyeSBwb2ludCBvZmZz ZXRzIGluIGJ5dGVzLgo+ID4gPiA+ID4gPiA+ID4gKyAgICBUaGlzIGNvbnRyb2wgaXMgYSBkeW5h bWljYWxseSBzaXplZCBhcnJheS4gVGhlIG51bWJlciBvZgo+ID4gPiA+ID4gPiA+ID4gZW50cnkK PiA+ID4gPiAKPiA+ID4gPiBwb2ludAo+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gKyAgICBvZmZz ZXRzIGlzIHJlcG9ydGVkIGJ5IHRoZSBgYGVsZW1zYGAgZmllbGQuCj4gPiA+ID4gPiA+ID4gPiAr ICAgIFRoaXMgYml0c3RyZWFtIHBhcmFtZXRlciBpcyBkZWZpbmVkIGFjY29yZGluZyB0bwo+ID4g PiA+ID4gPiA+ID4gOnJlZjpgaGV2Y2AuCj4gPiA+ID4gPiA+ID4gPiArICAgIFRoZXkgYXJlIGRl c2NyaWJlZCBpbiBzZWN0aW9uIDcuNC43LjEgIkdlbmVyYWwgc2xpY2UKPiA+ID4gPiA+ID4gPiA+ IHNlZ21lbnQKPiA+IAo+ID4gaGVhZGVyCj4gPiAKPiA+ID4gPiA+ID4gPiA+ICsgICAgc2VtYW50 aWNzIiBvZiB0aGUgc3BlY2lmaWNhdGlvbi4KPiA+ID4gPiA+ID4gPiA+ICsKPiA+ID4gPiA+ID4g PiA+IAo+ID4gPiA+ID4gPiA+ID4gICBgYFY0TDJfQ0lEX1NUQVRFTEVTU19IRVZDX1NDQUxJTkdf TUFUUklYIChzdHJ1Y3QpYGAKPiA+ID4gPiA+ID4gPiA+ICAgCj4gPiA+ID4gPiA+ID4gPiAgICAg ICBTcGVjaWZpZXMgdGhlIEhFVkMgc2NhbGluZyBtYXRyaXggcGFyYW1ldGVycyB1c2VkIGZvcgo+ ID4gPiA+ID4gPiA+ID4gICAgICAgdGhlIHNjYWxpbmcKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gPiBwcm9jZXNzCj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiAgICAgICBmb3IgdHJh bnNmb3JtIGNvZWZmaWNpZW50cy4KPiA+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItY3RybHMtZGVmcy5jCj4gPiA+ ID4gPiA+ID4gPiBiL2RyaXZlcnMvbWVkaWEvCj4gPiA+ID4gCj4gPiA+ID4gdjRsMi0KPiA+ID4g PiAKPiA+ID4gPiA+ID4gPiBjb3JlL3Y0bDItY3RybHMtZGVmcy5jCj4gPiA+ID4gPiA+ID4gCj4g PiA+ID4gPiA+ID4gPiBpbmRleCBkNTk0ZWZiY2JiOTMuLmUyMjkyMWU3ZWE2MSAxMDA2NDQKPiA+ ID4gPiA+ID4gPiA+IC0tLSBhL2RyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItY3RybHMtZGVm cy5jCj4gPiA+ID4gPiA+ID4gPiArKysgYi9kcml2ZXJzL21lZGlhL3Y0bDItY29yZS92NGwyLWN0 cmxzLWRlZnMuYwo+ID4gPiA+ID4gPiA+ID4gQEAgLTExODgsNiArMTE4OCw3IEBAIGNvbnN0IGNo YXIgKnY0bDJfY3RybF9nZXRfbmFtZSh1MzIgaWQpCj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gPiA+ICAgCWNhc2UgVjRMMl9DSURfU1RBVEVMRVNTX0hFVkNfREVDT0RFX1BBUkFNUzoJCQpy ZXR1cm4KPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiAiSEVWQyBEZWNvZGUgUGFyYW1ldGVy cyI7Cj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiAgIAljYXNlIFY0TDJfQ0lEX1NUQVRF TEVTU19IRVZDX0RFQ09ERV9NT0RFOgkJCnJldHVybgo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ICJIRVZDIERlY29kZSBNb2RlIjsKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICAg CWNhc2UgVjRMMl9DSURfU1RBVEVMRVNTX0hFVkNfU1RBUlRfQ09ERToJCQpyZXR1cm4KPiA+ID4g PiA+ID4gPiAKPiA+ID4gPiA+ID4gPiAiSEVWQyBTdGFydCBDb2RlIjsKPiA+ID4gPiA+ID4gPiAK PiA+ID4gPiA+ID4gPiA+ICsJY2FzZSBWNEwyX0NJRF9TVEFURUxFU1NfSEVWQ19FTlRSWV9QT0lO VF9PRkZTRVRTOgkKcmV0dXJuCj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gIkhFVkMgRW50 cnkgUG9pbnQgT2Zmc2V0cyI7Cj4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiAgIAkvKiBD b2xvcmltZXRyeSBjb250cm9scyAqLwo+ID4gPiA+ID4gPiA+ID4gICAJLyogS2VlcCB0aGUgb3Jk ZXIgb2YgdGhlICdjYXNlJ3MgdGhlIHNhbWUgYXMgaW4KPiA+ID4gPiA+ID4gPiA+ICAgCXY0bDIt Y29udHJvbHMuaCEKPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiAqLwo+ID4gPiA+ID4gPiA+ IAo+ID4gPiA+ID4gPiA+ID4gQEAgLTE1MTgsNiArMTUxOSwxMCBAQCB2b2lkIHY0bDJfY3RybF9m aWxsKHUzMiBpZCwgY29uc3QgY2hhcgo+ID4gPiA+ID4gPiA+ID4gKipuYW1lLAo+ID4gPiA+IAo+ ID4gPiA+IGVudW0KPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiB2NGwyX2N0cmxfdHlwZSAqdHlwZSwK PiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICAgCWNhc2UgVjRMMl9DSURfU1RBVEVMRVNT X0hFVkNfREVDT0RFX1BBUkFNUzoKPiA+ID4gPiA+ID4gPiA+ICAgCQkqdHlwZSA9IApWNEwyX0NU UkxfVFlQRV9IRVZDX0RFQ09ERV9QQVJBTVM7Cj4gPiA+ID4gPiA+ID4gPiAgIAkJYnJlYWs7Cj4g PiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICsJY2FzZSBWNEwyX0NJRF9TVEFURUxFU1Nf SEVWQ19FTlRSWV9QT0lOVF9PRkZTRVRTOgo+ID4gPiA+ID4gPiA+ID4gKwkJKnR5cGUgPSBWNEwy X0NUUkxfVFlQRV9VMzI7Cj4gPiA+ID4gPiA+ID4gPiArCQkqZmxhZ3MgfD0gVjRMMl9DVFJMX0ZM QUdfRFlOQU1JQ19BUlJBWTsKPiA+ID4gPiA+ID4gPiA+ICsJCWJyZWFrOwo+ID4gPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+ID4gPiAgIAljYXNlIFY0TDJfQ0lEX1NUQVRFTEVTU19WUDlfQ09NUFJF U1NFRF9IRFI6Cj4gPiA+ID4gPiA+ID4gPiAgIAkJKnR5cGUgPSAKVjRMMl9DVFJMX1RZUEVfVlA5 X0NPTVBSRVNTRURfSERSOwo+ID4gPiA+ID4gPiA+ID4gICAJCWJyZWFrOwo+ID4gPiA+ID4gPiA+ ID4gCj4gPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxz LmgKPiA+ID4gPiA+ID4gPiA+IGIvaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxzLmgKPiA+ID4gPiA+ ID4gPiA+IGluZGV4IGEzYzgyOWVmNTMxYS4uMTMxOWNiOTlhZTNmIDEwMDY0NAo+ID4gPiA+ID4g PiA+ID4gLS0tIGEvaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxzLmgKPiA+ID4gPiA+ID4gPiA+ICsr KyBiL2luY2x1ZGUvbWVkaWEvaGV2Yy1jdHJscy5oCj4gPiA+ID4gPiA+ID4gPiBAQCAtMjAsNiAr MjAsNyBAQAo+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgVjRMMl9D SURfU1RBVEVMRVNTX0hFVkNfREVDT0RFX1BBUkFNUwo+ID4gCj4gPiAoVjRMMl9DSURfQ09ERUNf QkFTRQo+ID4gCj4gPiA+ID4gPiA+ID4gKyAxMDEyKQo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ID4gICAjZGVmaW5lIFY0TDJfQ0lEX1NUQVRFTEVTU19IRVZDX0RFQ09ERV9NT0RFCj4gPiAK PiA+IChWNEwyX0NJRF9DT0RFQ19CQVNFCj4gPiAKPiA+ID4gPiArIDEwMTUpCj4gPiA+ID4gCj4g PiA+ID4gPiA+ID4gPiAgICNkZWZpbmUgVjRMMl9DSURfU1RBVEVMRVNTX0hFVkNfU1RBUlRfQ09E RQo+ID4gCj4gPiAoVjRMMl9DSURfQ09ERUNfQkFTRSArIDEwMTYpCj4gPiAKPiA+ID4gPiA+ID4g PiA+ICsjZGVmaW5lIFY0TDJfQ0lEX1NUQVRFTEVTU19IRVZDX0VOVFJZX1BPSU5UX09GRlNFVFMK PiA+IAo+ID4gKFY0TDJfQ0lEX0NPREVDX0JBU0UKPiA+IAo+ID4gPiA+ICsKPiA+ID4gPiAKPiA+ ID4gPiA+ID4gPiAxMDE3KQo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiA+ID4gICAvKiBlbnVt IHY0bDJfY3RybF90eXBlIHR5cGUgdmFsdWVzICovCj4gPiA+ID4gPiA+ID4gPiAgICNkZWZpbmUg VjRMMl9DVFJMX1RZUEVfSEVWQ19TUFMgMHgwMTIwCj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gPiA+IEBAIC0zMTgsNiArMzE5LDggQEAgc3RydWN0IHY0bDJfaGV2Y19wcmVkX3dlaWdodF90 YWJsZSB7Cj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICAgICoKPiA+ID4gPiA+ID4g PiA+ICAgICogQGJpdF9zaXplOiBzaXplIChpbiBiaXRzKSBvZiB0aGUgY3VycmVudCBzbGljZSBk YXRhCj4gPiA+ID4gPiA+ID4gPiAgICAqIEBkYXRhX2JpdF9vZmZzZXQ6IG9mZnNldCAoaW4gYml0 cykgdG8gdGhlIHZpZGVvIGRhdGEgaW4KPiA+ID4gPiA+ID4gPiA+ICAgIHRoZSBjdXJyZW50Cj4g PiA+ID4gCj4gPiA+ID4gc2xpY2UKPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBkYXRhCj4gPiA+ID4g PiA+ID4gCj4gPiA+ID4gPiA+ID4gPiArICogQG51bV9lbnRyeV9wb2ludF9vZmZzZXRzOiBzcGVj aWZpZXMgdGhlIG51bWJlciBvZiBlbnRyeQo+ID4gPiA+ID4gPiA+ID4gcG9pbnQgb2Zmc2V0Cj4g PiA+ID4gCj4gPiA+ID4gc3ludGF4Cj4gPiA+ID4gCj4gPiA+ID4gPiA+ID4gPiArICoJCQkgICAg IGVsZW1lbnRzIGluIHRoZSBzbGljZSAKaGVhZGVyLgo+ID4gPiA+ID4gPiA+ID4gCj4gPiA+ID4g PiA+ID4gPiAgICAqIEBuYWxfdW5pdF90eXBlOiBzcGVjaWZpZXMgdGhlIGNvZGluZyB0eXBlIG9m IHRoZSBzbGljZQo+ID4gPiA+ID4gPiA+ID4gICAgKEIsIFAgb3IgSSkKPiA+ID4gPiA+ID4gPiA+ ICAgICogQG51aF90ZW1wb3JhbF9pZF9wbHVzMTogbWludXMgMSBzcGVjaWZpZXMgYSB0ZW1wb3Jh bAo+ID4gPiA+ID4gPiA+ID4gICAgaWRlbnRpZmllciBmb3IKPiA+ID4gPiAKPiA+ID4gPiB0aGUK PiA+ID4gPiAKPiA+ID4gPiA+ID4gPiBOQUwgdW5pdAo+ID4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiA+ID4gICAgKiBAc2xpY2VfdHlwZTogc2VlIFY0TDJfSEVWQ19TTElDRV9UWVBFX3t9Cj4gPiA+ ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+IEBAIC0zNjAsNyArMzYzLDcgQEAgc3RydWN0IHY0 bDJfaGV2Y19wcmVkX3dlaWdodF90YWJsZSB7Cj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4g PiA+ICAgc3RydWN0IHY0bDJfY3RybF9oZXZjX3NsaWNlX3BhcmFtcyB7Cj4gPiA+ID4gPiA+ID4g PiAgIAo+ID4gPiA+ID4gPiA+ID4gICAJX191MzIJYml0X3NpemU7Cj4gPiA+ID4gPiA+ID4gPiAg IAlfX3UzMglkYXRhX2JpdF9vZmZzZXQ7Cj4gPiA+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ IC0KPiA+ID4gPiA+ID4gPiA+ICsJX191MzIJbnVtX2VudHJ5X3BvaW50X29mZnNldHM7Cj4gPiA+ ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gPiA+ICAgCS8qIElTTy9JRUMgMjMwMDgtMiwgSVRVLVQg UmVjLiBILjI2NTogTkFMIHVuaXQgCmhlYWRlciAqLwo+ID4gPiA+ID4gPiA+ID4gICAJX191OAlu YWxfdW5pdF90eXBlOwo+ID4gPiA+ID4gPiA+ID4gICAJX191OAludWhfdGVtcG9yYWxfaWRfcGx1 czE7CgoKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K bGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZy YWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGlu dXgtYXJtLWtlcm5lbAo=