From: Alex Stewart <alex.stewart@ni.com>
To: Etienne Cordonnier <ecordonnier@snapchat.com>
Cc: Alex Feinman <afeinman@snap.com>, Khem Raj <raj.khem@gmail.com>,
openembedded-core@lists.openembedded.org,
Etienne Cordonnier <ecordonnier@snap.com>
Subject: Re: Re: Re: [OE-core] [PATCH] opkg: enable zstd support
Date: Wed, 14 Sep 2022 10:37:36 -0500 [thread overview]
Message-ID: <7c864dd1-27cc-ff28-dccd-8370ed5fc61f@ni.com> (raw)
In-Reply-To: <CAHUKmYa-=GFHwZUEjTfDb5gyDf8KH8MFM6bm3GCU6xpA6ppVkw@mail.gmail.com>
Thanks for checking.
I'd be interested to know if setting a higher compression level for zstd
can get us to a similar compression ratio to xz. If so, then I think it
could be some real value to distro maintainers to be able to *tune*
their compression.
That's not blocking for your new PR though.
On 9/14/22 05:08, Etienne Cordonnier wrote:
> Also note that zstd's default compression level is 3 per default (from
> a 1 to 19 scale). I did not test other compression levels.
>
> On Wed, Sep 14, 2022 at 11:58 AM Etienne Cordonnier
> <ecordonnier@snapchat.com> wrote:
>
> I ran a build of core-image-full-cmdline using xz and zstd, using
> pre-populated downloads and sstate-cache directories but with
> empty tmp directory. Here are the numbers:
> zstd:
> bitbake core-image-full-cmdline took 2m52.768s (real), the
> resulting directory tmp/deploy/ipk is 1.6GB big.
> xz:
> bitbake core-image-full-cmdline took 4m14.214s (real), the
> resulting directory tmp/deploy/ipk/ is 996M big
>
> So the build with xz is 47% slower (254/172) than with zstd for
> this "incremental build" use-case.
>
> See the 5 biggest packages, the difference in compression-ratio
> increases with big files:
> build$ ls -lh tmp-zstd/deploy/ipk/core2-64/ --sort=size | head -n5
> total 1.6G
> -rw-r--r-- 3 ecordonnier ecordonnier 331M Sep 14 10:39
> gcc-dbg_12.2.0-r0_core2-64.ipk
> -rw-r--r-- 3 ecordonnier ecordonnier 264M Sep 14 10:39
> openssl-dbg_3.0.5-r0_core2-64.ipk
> -rw-r--r-- 3 ecordonnier ecordonnier 113M Sep 14 10:39
> openssl-ptest_3.0.5-r0_core2-64.ipk
> -rw-r--r-- 3 ecordonnier ecordonnier 47M Sep 14 10:39
> binutils-dbg_2.39-r0_core2-64.ipk
> build$ ls -lh tmp-xz/deploy/ipk/core2-64/ --sort=size | head -n5
> total 963M
> -rw-r--r-- 3 ecordonnier ecordonnier 214M Sep 14 10:44
> gcc-dbg_12.2.0-r0_core2-64.ipk
> -rw-r--r-- 3 ecordonnier ecordonnier 193M Sep 14 10:44
> openssl-dbg_3.0.5-r0_core2-64.ipk
> -rw-r--r-- 3 ecordonnier ecordonnier 35M Sep 14 10:44
> openssl-ptest_3.0.5-r0_core2-64.ipk
> -rw-r--r-- 3 ecordonnier ecordonnier 32M Sep 14 10:44
> binutils-dbg_2.39-r0_core2-64.ipk
> ...
>
> I think for use-cases where the size of the ipk packages matters,
> xz is better. For use-cases where it does not matter (ipk packages
> not deployed), build-time matters more than compression-ratio and
> zstd is better.
>
> Regarding the enablement of zstd in opkg per default, I'll send a
> new version of the patch without this line.
> My thinking for enabling zstd per default in opkg was that zstd is
> already enabled per default in libarchive's PACKAGECONFIG, and
> disabling zstd in opkg's PACKAGECONFIG removes only a few lines of
> code from opkg (opkg uses libarchive for doing the actual
> compression/decompression).
>
> On Tue, Sep 13, 2022 at 11:57 PM Alex Stewart
> <alex.stewart@ni.com> wrote:
>
>
>
> On 9/13/22 15:20, Alex Feinman wrote:
> > I do have some numbers. When I was selling this change
> internally, I
> > did a comparison on our internal build.
> > Combined write IPK times (Σ t do_package_write_ipk)
> > xz 162m 35s
> > gz 52m 13s
> > zstd 33m 49s
> > Compression rate for zstd was closer to xz than to gz but
> not as good
> > as xz. For systems that have to cache packages on the device
> with
> > limited storage xz might be a better option, but for the
> bulk of
> > projects zstd is the best choice
> > Additionally, zstd offers much faster decompression than xz
> so the
> > rootfs build step that includes unpacking all of the ipks,
> takes 3m
> > 58s with xz and 2m 44s with zstd.
> > One other thing of note - if your build includes debug
> packages, some
> > may be quite large. E.g. one of our components produces a
> 2.2 GB debug
> > package (uncompressed). On large files xz requires a
> disproportionally
> > large amount of time resulting in 15 minutes needed to
> simply write
> > ipk for the abovementioned packages, whereas zstd took about
> 45 sec.
> > For frequent tasks like bitbaking a single package this
> translates in
> > a lot of saved time.
>
> Those are certainly compelling performance improvements.
> Assuming that
> the final data-segment size is within 5%-ish of xz, then I
> would agree
> with the rest of the thread that it should probably be the
> contemporary
> default.
>
> And if we make it the default compressor for OE IPKs, then
> obviously my
> criticism in the original PR is satisfied.
>
> > Bottom line - I think making xz a default package compressor
> was not
> > entirely thought through. gzip or zstd is what the default
> should be.
>
> ZStandard support was only added to opkg last September [1].
> Before
> that, xz was the new hotness that replaced gzip. :)
>
> [1]
> https://urldefense.proofpoint.com/v2/url?u=https-3A__git.yoctoproject.org_opkg_commit_-3Fid-3D5dead419e94bce2e6b743ad786c1daec0e1aa294&d=DwIDaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=AhkbNonVuMIGRfPx_Qj9TsyDLWdbBqarUzFxz3aALck&m=VG_fgpCGq8Zgu73KQP1wTtb1D1TZftNpXj8jGnouPtGIBYyLIZbG8F-85POUcVN7&s=Mwoq2kkjfZhto6J5OomduJ5Rhyg_oSe-dkjeltE4Ls8&e=
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__git.yoctoproject.org_opkg_commit_-3Fid-3D5dead419e94bce2e6b743ad786c1daec0e1aa294&d=DwIDaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=AhkbNonVuMIGRfPx_Qj9TsyDLWdbBqarUzFxz3aALck&m=VG_fgpCGq8Zgu73KQP1wTtb1D1TZftNpXj8jGnouPtGIBYyLIZbG8F-85POUcVN7&s=Mwoq2kkjfZhto6J5OomduJ5Rhyg_oSe-dkjeltE4Ls8&e=>
>
>
> > One final note: I could not find a reasonable explanation
> for why
> > opkg-tools require code changes to support a different
> compressor. BSD
> > tar and GNU tar both can easily accept compressors that they
> have no
> > idea about (via -I option) because all of them provide a
> unified
> > command line interface for use in pipes. If this were done
> similar to
> > tar, we could have used any compressor we wanted, including the
> > multithreaded versions (zstdmt)
>
> Well, presumably IPK creation tools can only support the
> matrix of
> compression algorithms which your opkg binary can decompress.
> I suppose
> someone could try to implement a plugable compression module
> system for
> opkg. But given that nearly everyone uses opkg in an embedded
> context,
> I'm not sure it would get much use.
>
> >
> > On Tue, Sep 13, 2022 at 12:43 PM Khem Raj
> <raj.khem@gmail.com> wrote:
> >
> > On Tue, Sep 13, 2022 at 12:19 PM Alex Stewart
> > <alex.stewart@ni.com> wrote:
> > >
> > > ACK from me - apart from enabling zstd by default.
> > >
> > > On 9/13/22 07:37, Etienne Cordonnier via
> lists.openembedded.org
> <https://urldefense.com/v3/__http://lists.openembedded.org__;!!FbZ0ZwI3Qg!t0JG8eQqpsPs8clofb2phwJc6ONCKBjy-iQukKenLRVzBQvJrKTp8VsgKBI7cR8KlV3N64C3fKRHIcFhOF1_vg$>
> >
> <https://urldefense.com/v3/__http://lists.openembedded.org__;!!FbZ0ZwI3Qg!u0KgIth5yNSO1tok49C5_xo0QPHIFLa4kZBl3vVZwB-2Ui1uYBW7nt85fKXXM_VAHZ2LdFx_bxrNjvo$>
> > wrote:
> > > > This allows the use of zstd for opkg packages by using
> > OPKGBUILDCMD:
> > > > OPKGBUILDCMD = "opkg-build -Z zstd"
> > > >
> > > > Signed-off-by: Alex Feinman <afeinman@snap.com>
> > > > Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
> > > > ---
> > > > meta/recipes-devtools/opkg/opkg_0.6.0.bb
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!t0JG8eQqpsPs8clofb2phwJc6ONCKBjy-iQukKenLRVzBQvJrKTp8VsgKBI7cR8KlV3N64C3fKRHIcFFmbls2A$>
> >
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!u0KgIth5yNSO1tok49C5_xo0QPHIFLa4kZBl3vVZwB-2Ui1uYBW7nt85fKXXM_VAHZ2LdFx_-65pBFo$>
> > | 3 ++-
> > > > 1 file changed, 2 insertions(+), 1 deletion(-)
> > > >
> > > > diff --git
> a/meta/recipes-devtools/opkg/opkg_0.6.0.bb
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!t0JG8eQqpsPs8clofb2phwJc6ONCKBjy-iQukKenLRVzBQvJrKTp8VsgKBI7cR8KlV3N64C3fKRHIcFFmbls2A$>
> >
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!u0KgIth5yNSO1tok49C5_xo0QPHIFLa4kZBl3vVZwB-2Ui1uYBW7nt85fKXXM_VAHZ2LdFx_-65pBFo$>
> > b/meta/recipes-devtools/opkg/opkg_0.6.0.bb
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!t0JG8eQqpsPs8clofb2phwJc6ONCKBjy-iQukKenLRVzBQvJrKTp8VsgKBI7cR8KlV3N64C3fKRHIcFFmbls2A$>
> >
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!u0KgIth5yNSO1tok49C5_xo0QPHIFLa4kZBl3vVZwB-2Ui1uYBW7nt85fKXXM_VAHZ2LdFx_-65pBFo$>
> > > > index 7b351e8123..e38d9d6f3f 100644
> > > > --- a/meta/recipes-devtools/opkg/opkg_0.6.0.bb
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!t0JG8eQqpsPs8clofb2phwJc6ONCKBjy-iQukKenLRVzBQvJrKTp8VsgKBI7cR8KlV3N64C3fKRHIcFFmbls2A$>
> >
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!u0KgIth5yNSO1tok49C5_xo0QPHIFLa4kZBl3vVZwB-2Ui1uYBW7nt85fKXXM_VAHZ2LdFx_-65pBFo$>
> > > > +++ b/meta/recipes-devtools/opkg/opkg_0.6.0.bb
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!t0JG8eQqpsPs8clofb2phwJc6ONCKBjy-iQukKenLRVzBQvJrKTp8VsgKBI7cR8KlV3N64C3fKRHIcFFmbls2A$>
> >
> <https://urldefense.com/v3/__http://opkg_0.6.0.bb__;!!FbZ0ZwI3Qg!u0KgIth5yNSO1tok49C5_xo0QPHIFLa4kZBl3vVZwB-2Ui1uYBW7nt85fKXXM_VAHZ2LdFx_-65pBFo$>
> > > > @@ -30,7 +30,7 @@ inherit autotools pkgconfig ptest
> > > > target_localstatedir := "${localstatedir}"
> > > > OPKGLIBDIR ??= "${target_localstatedir}/lib"
> > > >
> > > > -PACKAGECONFIG ??= "libsolv"
> > > > +PACKAGECONFIG ??= "libsolv zstd"
> > >
> > > Building in zstd support by default is a little
> suspect to me.
> > >
> > > Unless I'm mistaken, OE-core will only build
> xz-compressed IPKs by
> > > default. So zstd support would be unnecessary for a distro
> > integrator
> > > who just uses upstream OE-core.
> > >
> > > For distros which use zstd compression in their
> packages, I think it
> > > would be more appropriate to overwrite the opkg
> PACKAGECONFIG in a
> > > .bbappend.
> > >
> >
> > This is perhaps fine. I do wonder if there is some
> performance
> > comparison data between xz and zstd compressed ipks
> > with opkg, it might help users on making this choice and
> also if we
> > should consider using
> > zstd by default at some point or not.
> >
> > > Is there something I'm not considering here?
> > >
> > > >
> > > > PACKAGECONFIG[gpg] = "--enable-gpg,--disable-gpg,\
> > > > gnupg gpgme libgpg-error,\
> > > > @@ -39,6 +39,7 @@ PACKAGECONFIG[gpg] =
> > "--enable-gpg,--disable-gpg,\
> > > > PACKAGECONFIG[curl] =
> "--enable-curl,--disable-curl,curl"
> > > > PACKAGECONFIG[ssl-curl] =
> > "--enable-ssl-curl,--disable-ssl-curl,curl openssl"
> > > > PACKAGECONFIG[sha256] =
> "--enable-sha256,--disable-sha256"
> > > > +PACKAGECONFIG[zstd] =
> "--enable-zstd,--disable-zstd,zstd"
> > > > PACKAGECONFIG[libsolv] =
> > "--with-libsolv,--without-libsolv,libsolv"
> > > >
> > > > EXTRA_OECONF:class-native =
> > "--localstatedir=/${@os.path.relpath('${localstatedir}',
> > '${STAGING_DIR_NATIVE}')}
> > --sysconfdir=/${@os.path.relpath('${sysconfdir}',
> > '${STAGING_DIR_NATIVE}')}"
> > > >
> > > >
> > > >
> > >
> > > --
> > > Alex Stewart
> > > Software Engineer - NI Real-Time OS
> > > NI (National Instruments)
> > >
> > > alex.stewart@ni.com
> > >
> > >
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > > Links: You receive all messages sent to this group.
> > > View/Reply Online (#170608):
> >
> https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_g_openembedded-2Dcore_message_170608&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=_VWADuvDS3QdSEYWTnh8wNH0lOxVHty18QZynvOtpcU&e=
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_g_openembedded-2Dcore_message_170608&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=_VWADuvDS3QdSEYWTnh8wNH0lOxVHty18QZynvOtpcU&e=>
> >
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_g_openembedded-2Dcore_message_170608&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=_VWADuvDS3QdSEYWTnh8wNH0lOxVHty18QZynvOtpcU&e=
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_g_openembedded-2Dcore_message_170608&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=_VWADuvDS3QdSEYWTnh8wNH0lOxVHty18QZynvOtpcU&e=>>
> >
> > > Mute This Topic:
> >
> https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_mt_93654146_1997914&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=QncdL2I_pCDsz7AMbsTgStzC7bt5V2x_E_gIblrtjZY&e=
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_mt_93654146_1997914&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=QncdL2I_pCDsz7AMbsTgStzC7bt5V2x_E_gIblrtjZY&e=>
> >
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_mt_93654146_1997914&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=QncdL2I_pCDsz7AMbsTgStzC7bt5V2x_E_gIblrtjZY&e=
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_mt_93654146_1997914&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=QncdL2I_pCDsz7AMbsTgStzC7bt5V2x_E_gIblrtjZY&e=>>
> >
> > > Group Owner:
> openembedded-core+owner@lists.openembedded.org
> <mailto:openembedded-core%2Bowner@lists.openembedded.org>
> > <mailto:openembedded-core%2Bowner@lists.openembedded.org
> <mailto:openembedded-core%252Bowner@lists.openembedded.org>>
> > > Unsubscribe:
> >
> https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_g_openembedded-2Dcore_unsub&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=PxAE_3yGzbSZ21-LHz_1r3gd2_STPoZcrYDeu9vd_GM&e=
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_g_openembedded-2Dcore_unsub&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=PxAE_3yGzbSZ21-LHz_1r3gd2_STPoZcrYDeu9vd_GM&e=>
> >
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_g_openembedded-2Dcore_unsub&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=PxAE_3yGzbSZ21-LHz_1r3gd2_STPoZcrYDeu9vd_GM&e=
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.openembedded.org_g_openembedded-2Dcore_unsub&d=DwIBaQ&c=ncDTmphkJTvjIDPh0hpF_4vCHvabgGkICC2epckfdiw&r=ixV5wgZimxpcSCog35wonZKeFaeEVKUbESWNj_K-1j0&m=KvCRyrKojziBs0h9aEjEfI4R_J4FnZIK8nDBqKo_I1CpnrIJ78DBxgMrvY25Gwyh&s=PxAE_3yGzbSZ21-LHz_1r3gd2_STPoZcrYDeu9vd_GM&e=>>
> > [raj.khem@gmail.com]
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > >
> >
>
> --
> Alex Stewart
> Software Engineer - NI Real-Time OS
> NI (National Instruments)
>
> alex.stewart@ni.com
>
--
Alex Stewart
Software Engineer - NI Real-Time OS
NI (National Instruments)
alex.stewart@ni.com
next prev parent reply other threads:[~2022-09-14 15:37 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-13 12:37 [PATCH] opkg: enable zstd support Etienne Cordonnier
2022-09-13 19:19 ` [OE-core] " Alex Stewart
2022-09-13 19:42 ` Khem Raj
[not found] ` <CANOoYsMVb9YpfwjTNHv4kSARM15_3T34CA-Ekr=t7P5F0XO4bA@mail.gmail.com>
2022-09-13 20:24 ` Alex Feinman
2022-09-13 20:34 ` Khem Raj
2022-09-13 21:57 ` Alex Stewart
2022-09-14 9:58 ` Etienne Cordonnier
2022-09-14 10:08 ` Etienne Cordonnier
2022-09-14 15:37 ` Alex Stewart [this message]
2022-09-14 15:41 ` Khem Raj
2022-09-28 16:50 ` Etienne Cordonnier
2022-09-28 18:03 ` Alex Stewart
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7c864dd1-27cc-ff28-dccd-8370ed5fc61f@ni.com \
--to=alex.stewart@ni.com \
--cc=afeinman@snap.com \
--cc=ecordonnier@snap.com \
--cc=ecordonnier@snapchat.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=raj.khem@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox