[bitbake-devel] [PATCH 10/10] runqueue: report progress for "Preparing RunQueue" step

Paul Eggleton paul.eggleton at linux.intel.com
Wed Jun 15 21:49:52 UTC 2016


On Wed, 15 Jun 2016 22:46:41 Richard Purdie wrote:
> On Tue, 2016-06-14 at 00:16 +1200, Paul Eggleton wrote:
> > On Mon, 13 Jun 2016 12:09:33 Richard Purdie wrote:
> > > On Mon, 2016-06-13 at 14:52 +1200, Paul Eggleton wrote:
> > > > @@ -1119,14 +1150,19 @@ class RunQueue:
> > > >          if self.state is runQueuePrepare:
> > > >              self.rqexe = RunQueueExecuteDummy(self)
> > > > 
> > > > +            self.rqdata.init_progress_reporter =
> > > > bb.progress.MultiStageProcessProgressReporter(self.cooker.data, +
> > > > 
> > > >                                                    "Initialising
> > > > 
> > > > tasks",
> > > > +                                                            [27,
> > > > 870, 3,
> > > > 33, 1, 3, 3, 2, 3, 6, 1, 13, 1, 1, 132, 32, 1, 61, 1, 13, 2, 243,
> > > > 151,
> > > > 299, 81, 1, 15, 72])>
> > > > 
> > > >              if self.rqdata.prepare() == 0:
> > > >                  self.state = runQueueComplete
> > > >              
> > > >              else:
> > > >                  self.state = runQueueSceneInit
> > > > 
> > > > +                self.rqdata.init_progress_reporter.next_stage()
> > > 
> > > I appreciate the difficulty in figuring some of this out and the
> > > changes look quite neat on the most part. I am however very worried
> > > by
> > > the above from a code maintenance standpoint.
> > > 
> > > If for example I add or remove a step in runqueue, how do I know
> > > where
> > > in this array to make a change? How do I calculate what the new
> > > weighting should be?
> > 
> > Actually with the current patchset it's pretty easy. Just temporarily
> > specify
> > debug=True to the reporter when constructing and it will print out
> > the list of
> > weightings (based on timing each stage) when finish() is called,
> > along with a
> > map of the weightings to the lines where next_stage() was called.
> > (Perhaps if
> > we'd want a comment to that effect for anyone editing this code.)
> 
> I think a comment in there about this would be helpful as it isn't
> clear how to handle this. 

OK, I'll add one - I need to rebase this patchset anyway.

> What does it do in the case you have a next()
> call without a weight? Will that give a warning?

It will yes.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the bitbake-devel mailing list