Messages in this thread | | | Date | Wed, 8 Feb 2017 15:11:26 +0100 | From | Peter Zijlstra <> | Subject | Re: mm: deadlock between get_online_cpus/pcpu_alloc |
| |
On Wed, Feb 08, 2017 at 02:03:32PM +0000, Mel Gorman wrote: > > Yeah, we'll sort that out once it hits Linus tree and we move RT forward. > > Though I have once complaint right away: > > > > + preempt_enable_no_resched(); > > > > This is a nono, even in mainline. You effectively disable a preemption > > point. > > > > This came up during review on whether it should or shouldn't be a preemption > point. Initially it was preempt_enable() but a preemption point didn't > exist before, the reviewer pushed for it and as it was the allocator fast > path that was unlikely to need a reschedule or preempt, I made the change.
Not relevant. The only acceptable use of preempt_enable_no_resched() is if the next statement is a schedule() variant.
| |