When config preempt RCU, if task switch happened in rcu read critical region. the current task be add to "rnp->blkd_tasks" link list, these rnp is leaf node in RCU tree. In "rcu_gp_fqs_loop" func, static void rcu_gp_fqs_loop(void) { struct rcu_node *rnp = rcu_get_root(); }