diff options
author | Chaitanya Kulkarni <kch@nvidia.com> | 2022-02-22 18:28:52 +0300 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2022-02-28 00:49:49 +0300 |
commit | df00b1d26c3c3ff9dae4b572a6ad878ab65334e1 (patch) | |
tree | 0955411e6d67f2e2f8b4bc25fed0dfa102e0d29c /drivers/block | |
parent | c90b6b50b42dfdfeb27b02e670e812b69ff364f5 (diff) | |
download | linux-df00b1d26c3c3ff9dae4b572a6ad878ab65334e1.tar.xz |
null_blk: null_alloc_page() cleanup
Remove goto labels and use direct returns as error unwinding code only
needs to free t_page variable if we alloc_pages() call fails as having
two labels for one kfree() can be avoided easily.
Signed-off-by: Chaitanya Kulkarni <kch@nvidia.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20220222152852.26043-3-kch@nvidia.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/block')
-rw-r--r-- | drivers/block/null_blk/main.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/block/null_blk/main.c b/drivers/block/null_blk/main.c index 80f9a6ba376d..05b1120e6623 100644 --- a/drivers/block/null_blk/main.c +++ b/drivers/block/null_blk/main.c @@ -783,18 +783,16 @@ static struct nullb_page *null_alloc_page(void) t_page = kmalloc(sizeof(struct nullb_page), GFP_NOIO); if (!t_page) - goto out; + return NULL; t_page->page = alloc_pages(GFP_NOIO, 0); - if (!t_page->page) - goto out_freepage; + if (!t_page->page) { + kfree(t_page); + return NULL; + } memset(t_page->bitmap, 0, sizeof(t_page->bitmap)); return t_page; -out_freepage: - kfree(t_page); -out: - return NULL; } static void null_free_page(struct nullb_page *t_page) |