Because rcu_is_cpu_idle() is to be used to check for extended quiescentstates in RCU-preempt read-side critical sections, it cannot assume thatpreemption is disabled. And preemption must be disabled when accessingthe dyntick-idle state, because otherwise the following sequence of eventscould occur:

1. Task A on CPU 1 enters rcu_is_cpu_idle() and picks up the pointer to CPU 1's per-CPU variables.