Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Adrian Bunk <bunk@stusta.de>
To: Andre McCurdy <armccurdy@gmail.com>
Cc: OE Core mailing list <openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 4/8] ffmpeg: don't rely on configure to correctly detect ARM vfp or neon
Date: Tue, 17 Sep 2019 11:16:09 +0300	[thread overview]
Message-ID: <20190917081609.GA11168@localhost> (raw)
In-Reply-To: <CAJ86T=WeoZJsHqTusGmi=M7Qb7MgW1o7UUM4aO7D8wjx8qZp=A@mail.gmail.com>

On Mon, Sep 16, 2019 at 03:43:42PM -0700, Andre McCurdy wrote:
> On Mon, Sep 16, 2019 at 3:34 PM Adrian Bunk <bunk@stusta.de> wrote:
> >
> > On Mon, Sep 16, 2019 at 03:08:01PM -0700, Andre McCurdy wrote:
> > > On Mon, Sep 16, 2019 at 2:33 PM Christopher Larson <kergoth@gmail.com> wrote:
> > > >
> > > > This seems like something that could do with a ‘why’ in the commit message and/or comments, to me.
> > >
> > > To be consistent with:
> > >
> > >   https://git.openembedded.org/openembedded-core/commit/?id=1a563214caf6bd5b3a026ebe953f8c692ebd640a
> > >...
> >
> > libwebp sets -mfpu=neon when autodetecting,
> > is there a similar problem with ffmpeg?
> >
> > > > +# Do not trust configure to determine if ARM vfp or neon are available.
> > > > +#
> > > > +EXTRA_OECONF_ARM = " \
> > > > + ${@bb.utils.contains('TUNE_FEATURES','vfp','--enable-vfp','--disable-vfp', d)} \
> > > > + ${@bb.utils.contains("TUNE_FEATURES",'neon','--enable-neon','--disable-neon',d)} \
> > >...
> >
> > If we cannot trust the vfp autodetection, why can we trust that the
> > autodetection of the vfp variant (vfpv2, vfpv3 or vfpv3-d16) and
> > the exact architecture (e.g. armv5te, armv6, armv6k or armv6t2)
> > are correct?
> 
> In general we can't. However these are all corner cases which are
> rarely (if ever) tested.
> 
> For ffmpeg configuring with --enable-runtime-cpudetect (which I think
> we effectively do by default) probably hides a lot of the configure
> time misdetection too.
>...

Building with --disable-runtime-cpudetect for qemuarmv5 gives:

ARCH                      arm (armv5te)
big-endian                no
runtime cpu detection     no
ARMv5TE enabled           yes
ARMv6 enabled             yes
ARMv6T2 enabled           yes
VFP enabled               yes
NEON enabled              yes


These 4 misdetections are all affecting a certain range of CPUs,
ARMv6T2 misdetection should affect more CPUs than VFP misdetection.

There likely is a common root cause that should be fixed,
instead of manually specifying every autodetected feature.


cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed



  reply	other threads:[~2019-09-17  8:16 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-16 19:24 [PATCH 1/8] base-files: drop legacy empty file /etc/default/usbd Andre McCurdy
2019-09-16 19:24 ` [PATCH 2/8] busybox: rcS and rcK should not be writeable by everyone Andre McCurdy
2019-09-16 19:24 ` [PATCH 3/8] ffmpeg: add PACKAGECONFIG controls for alsa and zlib (enable by default) Andre McCurdy
2019-09-16 19:24 ` [PATCH 4/8] ffmpeg: don't rely on configure to correctly detect ARM vfp or neon Andre McCurdy
2019-09-16 21:33   ` Christopher Larson
2019-09-16 22:08     ` Andre McCurdy
2019-09-16 22:34       ` Adrian Bunk
2019-09-16 22:43         ` Andre McCurdy
2019-09-17  8:16           ` Adrian Bunk [this message]
2019-09-16 19:24 ` [PATCH 5/8] ffmpeg: enable more verbose build logs Andre McCurdy
2019-09-16 19:24 ` [PATCH 6/8] libwebp: apply ARM specific config options to big endian ARM Andre McCurdy
2019-09-16 19:24 ` [PATCH 7/8] initscripts: enable alignment.sh init script for " Andre McCurdy
2019-09-16 19:24 ` [PATCH 8/8] libunwind: apply configure over-ride to both big and little " Andre McCurdy

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=20190917081609.GA11168@localhost \
    --to=bunk@stusta.de \
    --cc=armccurdy@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    /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