Lines Matching refs:plug
726 struct blk_plug *plug; in submit_bio_checks() local
730 plug = blk_mq_plug(q, bio); in submit_bio_checks()
731 if (plug && plug->nowait) in submit_bio_checks()
1039 if (current->plug) in bio_poll()
1040 blk_flush_plug(current->plug, false); in bio_poll()
1491 void blk_start_plug_nr_ios(struct blk_plug *plug, unsigned short nr_ios) in blk_start_plug_nr_ios() argument
1498 if (tsk->plug) in blk_start_plug_nr_ios()
1501 plug->mq_list = NULL; in blk_start_plug_nr_ios()
1502 plug->cached_rq = NULL; in blk_start_plug_nr_ios()
1503 plug->nr_ios = min_t(unsigned short, nr_ios, BLK_MAX_REQUEST_COUNT); in blk_start_plug_nr_ios()
1504 plug->rq_count = 0; in blk_start_plug_nr_ios()
1505 plug->multiple_queues = false; in blk_start_plug_nr_ios()
1506 plug->has_elevator = false; in blk_start_plug_nr_ios()
1507 plug->nowait = false; in blk_start_plug_nr_ios()
1508 INIT_LIST_HEAD(&plug->cb_list); in blk_start_plug_nr_ios()
1514 tsk->plug = plug; in blk_start_plug_nr_ios()
1540 void blk_start_plug(struct blk_plug *plug) in blk_start_plug() argument
1542 blk_start_plug_nr_ios(plug, 1); in blk_start_plug()
1546 static void flush_plug_callbacks(struct blk_plug *plug, bool from_schedule) in flush_plug_callbacks() argument
1550 while (!list_empty(&plug->cb_list)) { in flush_plug_callbacks()
1551 list_splice_init(&plug->cb_list, &callbacks); in flush_plug_callbacks()
1566 struct blk_plug *plug = current->plug; in blk_check_plugged() local
1569 if (!plug) in blk_check_plugged()
1572 list_for_each_entry(cb, &plug->cb_list, list) in blk_check_plugged()
1582 list_add(&cb->list, &plug->cb_list); in blk_check_plugged()
1588 void blk_flush_plug(struct blk_plug *plug, bool from_schedule) in blk_flush_plug() argument
1590 if (!list_empty(&plug->cb_list)) in blk_flush_plug()
1591 flush_plug_callbacks(plug, from_schedule); in blk_flush_plug()
1592 if (!rq_list_empty(plug->mq_list)) in blk_flush_plug()
1593 blk_mq_flush_plug_list(plug, from_schedule); in blk_flush_plug()
1600 if (unlikely(!rq_list_empty(plug->cached_rq))) in blk_flush_plug()
1601 blk_mq_free_plug_rqs(plug); in blk_flush_plug()
1614 void blk_finish_plug(struct blk_plug *plug) in blk_finish_plug() argument
1616 if (plug == current->plug) { in blk_finish_plug()
1617 blk_flush_plug(plug, false); in blk_finish_plug()
1618 current->plug = NULL; in blk_finish_plug()