All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Yang, Liezhi" <Liezhi.Yang@windriver.com>
To: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: "openembedded-core@lists.openembedded.org"
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 1/1] oeqa/concurrencytest: fix for locating meta-selftest
Date: Fri, 21 Dec 2018 06:46:18 +0000	[thread overview]
Message-ID: <07C4F012-C254-4757-8E18-A2042A893226@windriver.com> (raw)
In-Reply-To: <7f4d5364472280b622057a82fbf9dcfd11dfc17b.camel@linuxfoundation.org>

Hi RP,

Sorry, I am on vacation today, will do more investigations next week.

// Robert

Sent from mobile phone

> 在 2018年12月20日,23:06,Richard Purdie <richard.purdie@linuxfoundation.org> 写道:
> 
> On Thu, 2018-12-20 at 12:19 +0000, richard.purdie@linuxfoundation.org
> wrote:
>> On Thu, 2018-12-20 at 18:43 +0800, Robert Yang
>> wrote:                    bb.utils.mkdirhier(newbuilddir)
>> 
>> This broke on our autobuilder:
>> 
>> https://autobuilder.yoctoproject.org/typhoon/#/builders/56/builds/61
>> 
>> It basically creates a "stampeding herd" of bitbake startups as if
>> you
>> specify -j 40, it would do this 40 times nearly all at once and that
>> causes retry problems.
>> 
>> We need to move the call outside the for loop as the value doesn't
>> change.
> 
> I fixed the patch but it raises some questions about the way bitbake is
> behaving. I wrote a test script:
> 
> #!/usr/bin/env python3
> 
> import os
> import sys
> import subprocess
> 
> for i in range(50):
>    sys.stdout.flush()
>    sys.stderr.flush()
>    pid = os.fork()
>    if pid == 0:
>        ourpid = os.getpid()
>        print("Starting %s" % ourpid)
>        sys.stdout.flush()
>        newsi = os.open(os.devnull, os.O_RDWR)
>        os.dup2(newsi, sys.stdin.fileno())
>        try:
>            output = subprocess.check_output("bitbake -e bash | grep PN=", shell=True, stderr=subprocess.STDOUT).decode("utf-8")
>        except subprocess.CalledProcessError as e:
>            print("output: %s" % e.output.decode("utf-8"))
>            os._exit(e.returncode)
>        print("output: %s" % output)
>        os._exit(0)
> 
> which is a bit crazy shows some errors both on the console and in the
> bitbake-cookerdaemon log and shows that closing the UI connections when
> we have a client is not the right thing to be doing.
> 
> This may give some insight into some of the oe-selftest failures and
> I'm looking at how to improve this behaviour...
> 
> (added Chen Qi+Randy to cc as well)
> 
> Cheers,
> 
> Richard
> 
> 
> 
> 


      reply	other threads:[~2018-12-21  6:46 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-20  7:43 [PATCH 0/1] oeqa/concurrencytest: fix for locating meta-selftest Robert Yang
2018-12-20  7:43 ` [PATCH 1/1] " Robert Yang
2018-12-20 10:14   ` Richard Purdie
2018-12-20 10:43     ` Robert Yang
2018-12-20 12:19       ` richard.purdie
2018-12-20 15:06         ` Richard Purdie
2018-12-21  6:46           ` Yang, Liezhi [this message]

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=07C4F012-C254-4757-8E18-A2042A893226@windriver.com \
    --to=liezhi.yang@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.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 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.