Hello, On Thu, Aug 09, 2018 at 07:53:36AM -0700, Bart Van Assche wrote: > +/** > + * blkg_lookup - look up blkg for the specified request queue > + * @q: request_queue of interest > + * > + * Lookup blkg for @q at the root level. See also blkg_lookup(). > + */ > +static inline struct blkcg_gq *blkg_root_lookup(struct request_queue *q) > +{ > + struct blkcg_gq *blkg; > + > + rcu_read_lock(); > + blkg = blkg_lookup(&blkcg_root, q); > + rcu_read_unlock(); > + > + return blkg; > +} So, root blkg is always available as long as the request_queue is alive. Sth like the following would be simpler? static inline struct blkcg_gq *blk_queue_root_blkg(struct request_queue *q) { return q->root_blkg; } -- tejun