On 03/17/2016 05:01 AM, Thomas Gleixner wrote: > On Thu, 17 Mar 2016, Peter Zijlstra wrote: >> On Thu, Mar 17, 2016 at 12:39:46PM +0100, Thomas Gleixner wrote: >>> But we have to clarify and document whether holes in cpu_possible_mask are not >>> allowed at all or if code like the above is simply broken. >> >> So the general rule is that cpumasks can have holes, and exempting one >> just muddles the water. >> >> Therefore I'd call the code just plain broken. > > Agreed. > > That macro is not really helping the readability of the code at all. So a > simple for_each_possible_cpu() loop would have avoided that wreckage. Does the attached work? The rest of blk-mq should deal with holes just fine, we found some of those issues on sparc. Not sure why this one slipped through the cracks. -- Jens Axboe