Lines Matching refs:disk

298 static struct blkcg_gq *blkg_alloc(struct blkcg *blkcg, struct gendisk *disk,  in blkg_alloc()  argument
305 blkg = kzalloc_node(sizeof(*blkg), gfp_mask, disk->queue->node); in blkg_alloc()
313 if (!blk_get_queue(disk->queue)) in blkg_alloc()
316 blkg->q = disk->queue; in blkg_alloc()
336 if (!blkcg_policy_enabled(disk->queue, pol)) in blkg_alloc()
340 pd = pol->pd_alloc_fn(disk, blkcg, gfp_mask); in blkg_alloc()
355 blk_put_queue(disk->queue); in blkg_alloc()
369 static struct blkcg_gq *blkg_create(struct blkcg *blkcg, struct gendisk *disk, in blkg_create() argument
375 lockdep_assert_held(&disk->queue->queue_lock); in blkg_create()
378 if (blk_queue_dying(disk->queue)) { in blkg_create()
391 new_blkg = blkg_alloc(blkcg, disk, GFP_NOWAIT); in blkg_create()
401 blkg->parent = blkg_lookup(blkcg_parent(blkcg), disk->queue); in blkg_create()
419 ret = radix_tree_insert(&blkcg->blkg_tree, disk->queue->id, blkg); in blkg_create()
422 list_add(&blkg->q_node, &disk->queue->blkg_list); in blkg_create()
466 struct gendisk *disk) in blkg_lookup_create() argument
468 struct request_queue *q = disk->queue; in blkg_lookup_create()
508 blkg = blkg_create(pos, disk, NULL); in blkg_lookup_create()
569 static void blkg_destroy_all(struct gendisk *disk) in blkg_destroy_all() argument
571 struct request_queue *q = disk->queue; in blkg_destroy_all()
682 if (!blkg->q->disk) in blkg_dev_name()
684 return bdi_dev_name(blkg->q->disk->bdi); in blkg_dev_name()
865 struct gendisk *disk; in blkg_conf_prep() local
874 disk = ctx->bdev->bd_disk; in blkg_conf_prep()
875 q = disk->queue; in blkg_conf_prep()
908 new_blkg = blkg_alloc(pos, disk, GFP_NOIO); in blkg_conf_prep()
932 blkg = blkg_create(pos, disk, new_blkg); in blkg_conf_prep()
1495 int blkcg_init_disk(struct gendisk *disk) in blkcg_init_disk() argument
1497 struct request_queue *q = disk->queue; in blkcg_init_disk()
1501 new_blkg = blkg_alloc(&blkcg_root, disk, GFP_KERNEL); in blkcg_init_disk()
1510 blkg = blkg_create(&blkcg_root, disk, new_blkg); in blkcg_init_disk()
1528 void blkcg_exit_disk(struct gendisk *disk) in blkcg_exit_disk() argument
1530 blkg_destroy_all(disk); in blkcg_exit_disk()
1531 blk_throtl_exit(disk); in blkcg_exit_disk()
1578 int blkcg_activate_policy(struct gendisk *disk, const struct blkcg_policy *pol) in blkcg_activate_policy() argument
1580 struct request_queue *q = disk->queue; in blkcg_activate_policy()
1614 pd = pol->pd_alloc_fn(disk, blkg->blkcg, in blkcg_activate_policy()
1632 pd_prealloc = pol->pd_alloc_fn(disk, blkg->blkcg, in blkcg_activate_policy()
1701 void blkcg_deactivate_policy(struct gendisk *disk, in blkcg_deactivate_policy() argument
1704 struct request_queue *q = disk->queue; in blkcg_deactivate_policy()
1997 struct gendisk *disk = current->throttle_disk; in blkcg_maybe_throttle_current() local
2002 if (!disk) in blkcg_maybe_throttle_current()
2012 blkg = blkg_lookup(blkcg, disk->queue); in blkcg_maybe_throttle_current()
2021 put_disk(disk); in blkcg_maybe_throttle_current()
2044 void blkcg_schedule_throttle(struct gendisk *disk, bool use_memdelay) in blkcg_schedule_throttle() argument
2049 if (current->throttle_disk != disk) { in blkcg_schedule_throttle()
2050 if (test_bit(GD_DEAD, &disk->state)) in blkcg_schedule_throttle()
2052 get_device(disk_to_dev(disk)); in blkcg_schedule_throttle()
2056 current->throttle_disk = disk; in blkcg_schedule_throttle()