All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Stefan Müller-Klieser" <s.mueller-klieser@phytec.de>
To: Bruce Ashfield <bruce.ashfield@gmail.com>,
	Otavio Salvador <otavio.salvador@ossystems.com.br>
Cc: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH] kernel.bbclass: Fix do_shared_workdir task ordering
Date: Tue, 11 Aug 2015 16:25:44 +0200	[thread overview]
Message-ID: <55CA05E8.9030605@phytec.de> (raw)
In-Reply-To: <CADkTA4O_Jf9fA1STu9ek9oYvWqehq9bKS83Pxn6KVj0495eyrw@mail.gmail.com>

On 11.08.2015 15:11, Bruce Ashfield wrote:
> On Tue, Aug 11, 2015 at 9:06 AM, Bruce Ashfield
> <bruce.ashfield@gmail.com> wrote:
>> On Tue, Aug 11, 2015 at 8:47 AM, Otavio Salvador
>> <otavio.salvador@ossystems.com.br> wrote:
>>> On Tue, Aug 11, 2015 at 12:23 AM, Bruce Ashfield
>>> <bruce.ashfield@gmail.com> wrote:
>>>> On Mon, Aug 10, 2015 at 11:21 AM, Stefan Müller-Klieser
>>>> <s.mueller-klieser@phytec.de> wrote:
>>>>> commit 02d0a003d60326 [kernel.bbclass: Fix race condition] has surfaced
>>>>> a bug in the generation of the shared_workdir. The task
>>>>> do_compile_kernelmodules adds the exported symbols of the kernel modules
>>>>> to the Module.symvers. By creating the shared_workdir before the modules
>>>>> are compiled, the symbols of the modules are missing in the
>>>>> shared_workdir. Subsequent external module builds will not include the
>>>>> ABI CRC of functions exported in modules. Modprobe will fail to load the
>>>>> external module if CONFIG_MODVERSIONS is enabled.\
>>>>
>>>> Have you seen our bug: https://bugzilla.yoctoproject.org/show_bug.cgi?id=8127 ?
>>>>
>>>> It's new .. so probably not.
I did not. Thanks.

>>>>
>>>> The significant issue with this, is that we are now forcing anyone
>>>> that needs the
>>>> shared workdir artifacts to build kernel modules.
That's by design. The artifacts are modified by the module build.

>>>>
>>>> That's performance issue for many workflows.
>>>>
>>>> I had some changes where I was working to short cut parts of the process, but
>>>> they turned out to miss a few corner cases.
>>>>
>>>> We need to do more thinking on this one, before we can bring in a change like
>>>> this .. since avoiding that overhead is something valuable.
So you are saying a fast build is more important than a correct build? 
That's quite a bold statement.

>>>
>>> I agree that performance is important but correctness seems more
>>> valuable for me. I think the optimization can come as a subsequent
>>> patch ...
>>
>> Let's disagree on this point.
>>
>> There's time to get this right. We have a bug to track it, so we wont'
>> release with
>> the active bug, and this only hits a very tiny set of users.
>>
>> So we are going to step back and try and fix this right.
Well, if you really want to do this then there should at least be a 
module-interdepend.bbclass not using the shared workdir and depending on 
the modules build. Fido and master are broken at the moment.

Regards,

Stefan

>
> I hit send too soon. I have a suggestion in the bug already, so it isn't like
> we are talking about letting this sit for weeks.
>
> History shows that we are very unlikely to loop back and fix the performance
> of perf or other builds once the change goes in. So in the absence of
> other concrete suggestions, looking into some other small changes is a good
> use of time.
>
> Cheers,
>
> Bruce
>
>
>>
>> Bruce
>>
>>>
>>> --
>>> Otavio Salvador                             O.S. Systems
>>> http://www.ossystems.com.br        http://code.ossystems.com.br
>>> Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
>>
>>
>>
>> --
>> "Thou shalt not follow the NULL pointer, for chaos and madness await
>> thee at its end"
>
>
>


  reply	other threads:[~2015-08-11 14:25 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-10 15:21 [PATCH] kernel.bbclass: Fix do_shared_workdir task ordering Stefan Müller-Klieser
2015-08-11  3:23 ` Bruce Ashfield
2015-08-11 12:47   ` Otavio Salvador
2015-08-11 13:06     ` Bruce Ashfield
2015-08-11 13:11       ` Bruce Ashfield
2015-08-11 14:25         ` Stefan Müller-Klieser [this message]
2015-08-11 15:10           ` Bruce Ashfield
2015-10-14 18:35 ` S. Lockwood-Childs
2015-10-14 18:22   ` Martin Jansa
2015-10-14 19:30 ` [oe] " S. Lockwood-Childs
2015-10-14 19:48   ` [OE-core] " Bruce Ashfield
2015-10-14 19:48     ` [oe] " Bruce Ashfield
2015-11-10  9:33     ` [OE-core] " Jens Rehsack
2015-11-10  9:33       ` [oe] " Jens Rehsack
2015-11-11  2:01       ` [OE-core] " Bruce Ashfield
2015-11-11  2:01         ` [oe] " Bruce Ashfield
2015-11-11  9:00         ` [OE-core] " Jens Rehsack
2015-11-11  9:00           ` [oe] " Jens Rehsack
2015-11-11 12:49           ` [OE-core] " Bruce Ashfield
2015-11-11 12:49             ` [oe] " Bruce Ashfield
2015-11-11 14:59             ` [OE-core] " Jens Rehsack
2015-11-11 14:59               ` [oe] " Jens Rehsack
2015-11-11 22:59               ` [OE-core] " Bruce Ashfield
2015-11-11 22:59                 ` [oe] " Bruce Ashfield

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=55CA05E8.9030605@phytec.de \
    --to=s.mueller-klieser@phytec.de \
    --cc=bruce.ashfield@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=otavio.salvador@ossystems.com.br \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.