main.c (2b1333b80885b896807ffb6ccf4bc21d29aa65e0) main.c (8b9ab62662048a3274361c7e5f64037c2c133e2c)
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Add configfs and memory store: Kyungchan Koh <kkc6196@fb.com> and
4 * Shaohua Li <shli@fb.com>
5 */
6#include <linux/module.h>
7
8#include <linux/moduleparam.h>

--- 1723 unchanged lines hidden (view full) ---

1732 del_gendisk(nullb->disk);
1733
1734 if (test_bit(NULLB_DEV_FL_THROTTLED, &nullb->dev->flags)) {
1735 hrtimer_cancel(&nullb->bw_timer);
1736 atomic_long_set(&nullb->cur_bytes, LONG_MAX);
1737 null_restart_queue_async(nullb);
1738 }
1739
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Add configfs and memory store: Kyungchan Koh <kkc6196@fb.com> and
4 * Shaohua Li <shli@fb.com>
5 */
6#include <linux/module.h>
7
8#include <linux/moduleparam.h>

--- 1723 unchanged lines hidden (view full) ---

1732 del_gendisk(nullb->disk);
1733
1734 if (test_bit(NULLB_DEV_FL_THROTTLED, &nullb->dev->flags)) {
1735 hrtimer_cancel(&nullb->bw_timer);
1736 atomic_long_set(&nullb->cur_bytes, LONG_MAX);
1737 null_restart_queue_async(nullb);
1738 }
1739
1740 blk_cleanup_disk(nullb->disk);
1740 put_disk(nullb->disk);
1741 if (dev->queue_mode == NULL_Q_MQ &&
1742 nullb->tag_set == &nullb->__tag_set)
1743 blk_mq_free_tag_set(nullb->tag_set);
1744 cleanup_queues(nullb);
1745 if (null_cache_active(nullb))
1746 null_free_device_storage(nullb->dev, true);
1747 kfree(nullb);
1748 dev->nullb = NULL;

--- 328 unchanged lines hidden (view full) ---

2077 mutex_unlock(&lock);
2078
2079 pr_info("disk %s created\n", nullb->disk_name);
2080
2081 return 0;
2082out_cleanup_zone:
2083 null_free_zoned_dev(dev);
2084out_cleanup_disk:
1741 if (dev->queue_mode == NULL_Q_MQ &&
1742 nullb->tag_set == &nullb->__tag_set)
1743 blk_mq_free_tag_set(nullb->tag_set);
1744 cleanup_queues(nullb);
1745 if (null_cache_active(nullb))
1746 null_free_device_storage(nullb->dev, true);
1747 kfree(nullb);
1748 dev->nullb = NULL;

--- 328 unchanged lines hidden (view full) ---

2077 mutex_unlock(&lock);
2078
2079 pr_info("disk %s created\n", nullb->disk_name);
2080
2081 return 0;
2082out_cleanup_zone:
2083 null_free_zoned_dev(dev);
2084out_cleanup_disk:
2085 blk_cleanup_disk(nullb->disk);
2085 put_disk(nullb->disk);
2086out_cleanup_tags:
2087 if (dev->queue_mode == NULL_Q_MQ && nullb->tag_set == &nullb->__tag_set)
2088 blk_mq_free_tag_set(nullb->tag_set);
2089out_cleanup_queues:
2090 cleanup_queues(nullb);
2091out_free_nullb:
2092 kfree(nullb);
2093 dev->nullb = NULL;

--- 154 unchanged lines hidden ---
2086out_cleanup_tags:
2087 if (dev->queue_mode == NULL_Q_MQ && nullb->tag_set == &nullb->__tag_set)
2088 blk_mq_free_tag_set(nullb->tag_set);
2089out_cleanup_queues:
2090 cleanup_queues(nullb);
2091out_free_nullb:
2092 kfree(nullb);
2093 dev->nullb = NULL;

--- 154 unchanged lines hidden ---