On Tue, 2011-08-30 at 14:35 -0400, Daniel Kahn Gillmor wrote: > On 08/29/2011 02:40 PM, Ben Hutchings wrote: > > This is what I've added for 2.6.32-36. Any review would be appreciated. > > Thanks, Ben! > > Two crashes i have documentation for show the division-by-zero error > happening in find_busiest_group, which was patched in the initial diff i > submitted, but not in your patch below. > > Perhaps this is because the divisor there is sds.total_pwr instead of > group->cpu_power. > > My diff also included cleanups to a possible division-by-zero in > > * update_group_shares_cpu (divisor: sd_rq_weight), and
It seems fairly clear to me that the caller ensures this parameter is non-zero. And there has been no sign of this in any traceback. > * find_busiest_queue (divisor: power) > > which are missing in your patch. > > Here are backtraces showing find_busiest_group as the innermost function > at the time of the error: [...] The code dump actually corresponds to this line in update_sg_lb_stats(), which has been compiled inline with find_busiest_group(): sgs->avg_load = (sgs->group_load * SCHED_LOAD_SCALE) / group->cpu_power; Ben.
signature.asc
Description: This is a digitally signed message part