%% "Patrick J. LoPresti" <[EMAIL PROTECTED]> writes:

  pjl> I have attached a Makefile to the end of this message which
  pjl> illustrates this bug.

I will look at the bug, but offhand your description of the code is
missing something important (or, I misunderstood you).

  pjl> The problem is that the call to update_file() does not always cause
  pjl> commands_started to be incremented, even when there is work to be done
  pjl> for the goal.  This is because of the following logic in
  pjl> job.c:start_waiting_job():

  pjl> [...]

  pjl> That is, when the job is being placed on the waiting chain
  pjl> because the load is too high, start_job_command() is never
  pjl> called.

That's not true, though: you didn't examine what happens to those jobs
_after_ they get put on the waiting chain.

Later they're taken off the chain and start_waiting_job() is invoked
with each of the waiting jobs, and (assuming it doesn't go _back_ on the
waiting chain) start_job_command() will be run on it at that time, and
commands_started will be incremented then.

-- 
-------------------------------------------------------------------------------
 Paul D. Smith <[EMAIL PROTECTED]>          Find some GNU make tips at:
 http://www.gnu.org                      http://www.paulandlesley.org/gmake/
 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist

_______________________________________________
Bug-make mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-make

Reply via email to