Messages in this thread | | | Date | Mon, 19 May 2014 12:40:11 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH] sched: tg_set_cfs_bandwidth() causes rq->lock deadlock |
| |
On Thu, May 15, 2014 at 10:43:14AM -0700, bsegall@google.com wrote: > I just did notice however that sched_cfs_period_timer reads > cfs_b->period without any locks, which can in fact race with an update > to period (and isn't fixed by this patch). If this write doesn't happen > to be atomic (which is certainly not guaranteed, and is entirely > plausible on say 32-bit x86, much less other archs), we could read a > partially written value and move the timer incorrectly. Pulling the > lock/unlock out of do_sched_cfs_period_timer should fix this easily > enough. > > unthrottle_offline_cfs_rqs could cause similar issues with its unlocked > read of quota, and can also be easily fixed.
Ben, will you send patches for this? [unhandled content-type:application/pgp-signature] | |