On Thu, Oct 1, 2020 at 11:05 AM Vyacheslav Yurkov <[email protected]> wrote:
>
> On 01.10.2020 16:53, Bruce Ashfield wrote:
> > On Thu, Oct 1, 2020 at 10:47 AM Vyacheslav Yurkov <[email protected]> 
> > wrote:
> >> On 01.10.2020 16:36, Bruce Ashfield wrote:
> >>> We already ran into this with the main kernel flags, and we don't want
> >>> to duplicate them here.
> >>>
> >>> Why aren't what we have in kernel.bbclass working in your scenario ?
> >>>
> >>> Bruce
> >>>
> >> Because kernel.bbclass is not pulled in into the environment of
> >> out-of-tree module recipe. Should it be?
> >> This can easily be checked when you do 'bitbake hello-mod -c devshell'
> >> and examine $EXTRA_OEMAKE variable.
> > Yes, it should be.
> >
> > We build out of tree modules in each autobuilder test run, so it is
> > functional for the most part. I'd be interested to see the reproducing
> > kernel module and build steps, so they can be built into the tests to
> > catch this.
> >
> > But we absolutely do not want to duplicate those flags into this class.
> >
> > So with a reproducer, we can perhaps shuffle things around and make
> > sure that both this new case and the old ones continue to work.
> >
> > Bruce
> >
> That's interesting to know. It has been easy to reproduce in 4.x kernel,
> but with 5.x in master it fails silently. So here's what you do with 5.x
> and meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb module
>
> 1. Set machine to any x86, e.g. qemux86-64
> 2. Enable CONFIG_UNWINDER_ORC in the kernel configuration
> 3. Modify kernel Makefile as follows:
> Vyacheslav, [01.10.20 17:01]
> index 8b1d5b9017a5..e35da9f9bb75 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1058,7 +1058,9 @@ ifdef CONFIG_STACK_VALIDATION
>        echo "int main() {}" | $(HOSTCC) -xc -o /dev/null
> $(HOST_LIBELF_LIBS) -,1,0)
>     ifeq ($(has_libelf),1)
>       objtool_target := tools/objtool FORCE
> +    $(info "Validation enabled")
>     else
> +    $(info "Check failed, disabling stack validation")
>       SKIP_STACK_VALIDATION := 1
>       export SKIP_STACK_VALIDATION
>     endif
>
> 4. If HOSTCC is set properly, then you should see "Validation enabled"
> in log.do_compile of hello-mod recipe.
>

Ah yes.

As in my previous email, those warnings have been around for a bit and
we've just never had a reason to fix them, and in other scenarios,
I've just been explicitly enabling/adding the variables where I need
them. Since (for instance), we can't always assume that HOSTCC is
available on-target, the architecture support, or HOSTCC is the same
as CC, etc, so we want to cover the combinations properly.

The warnings aren't only seen on module build, just a simple 'make
scripts prepare' will show them, so that's enough of a test to see if
they are or aren't picking up the compiler. I wouldn't make these a
failure, just a warning, as they currently are.

Perhaps this is the motivation to do that fixup :D

Bruce

> Any hints where autobuilder tests are? Perhaps I could take a look and
> find a way to cover this...
>
> Vyacheslav



-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#143003): 
https://lists.openembedded.org/g/openembedded-core/message/143003
Mute This Topic: https://lists.openembedded.org/mt/77240868/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to