[bitbake-devel] [PATCH 5/9] siggen/runqueue: Fix signature mismatch issues

Richard Purdie richard.purdie at linuxfoundation.org
Thu Oct 3 15:34:40 UTC 2019


On Fri, 2019-09-27 at 08:35 -0500, Joshua Watt wrote:
> On 9/27/19 7:33 AM, Richard Purdie wrote:
> > We need to set the setscene tasklist before we call into the
> > taskhash/unihash code else the behaviour is inconsistent.
> > 
> > Avoid reporting hashes for non setscene tasks since we'd never
> > query that.
> > 
> > Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> > ---
> >   lib/bb/runqueue.py | 3 ++-
> >   lib/bb/siggen.py   | 6 +++++-
> >   2 files changed, 7 insertions(+), 2 deletions(-)
> > 
> > diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py
> > index 65169931f1..29bfd65e0b 100644
> > --- a/lib/bb/runqueue.py
> > +++ b/lib/bb/runqueue.py
> > @@ -1162,6 +1162,8 @@ class RunQueueData:
> >   
> >           self.init_progress_reporter.next_stage()
> >   
> > +        bb.parse.siggen.set_setscene_tasks(self.runq_setscene_tids
> > )
> > +
> >           # Iterate over the task list and call into the siggen
> > code
> >           dealtwith = set()
> >           todeal = set(self.runtaskentries)
> > @@ -1173,7 +1175,6 @@ class RunQueueData:
> >                       self.prepare_task_hash(tid)
> >   
> >           bb.parse.siggen.writeout_file_checksum_cache()
> > -        bb.parse.siggen.set_setscene_tasks(self.runq_setscene_tids
> > )
> >   
> >           #self.dump_data()
> >           return len(self.runtaskentries)
> > diff --git a/lib/bb/siggen.py b/lib/bb/siggen.py
> > index 71fa018227..6207cbca30 100644
> > --- a/lib/bb/siggen.py
> > +++ b/lib/bb/siggen.py
> > @@ -455,7 +455,11 @@ class SignatureGeneratorUniHashMixIn(object):
> >           report_taskdata =
> > d.getVar('SSTATE_HASHEQUIV_REPORT_TASKDATA') == '1'
> >           tempdir = d.getVar('T')
> >           fn = d.getVar('BB_FILENAME')
> > -        key = fn + ':do_' + task + ':' + taskhash
> > +        tid = fn + ':do_' + task
> > +        key = tid + ':' + taskhash
> > +
> > +        if self.setscenetasks and tid not in self.setscenetasks:
> > +            return
> 
> Would this be worth of a bb.fatal() (or perhaps a bb.warn()) to try
> and discover issues sooner?

There are some circumstances where such a message is confusing and I
couldn't make it work reliably yet. Its worth looking at further
though...

Cheers,

Richard




More information about the bitbake-devel mailing list