kernel_samsung_a53x/drivers/md/bcache
Liequan Che 2491c1be36 bcache: revert replacing IS_ERR_OR_NULL with IS_ERR again
commit b2e382ae12a63560fca35050498e19e760adf8c0 upstream.

Commit 028ddcac477b ("bcache: Remove unnecessary NULL point check in
node allocations") leads a NULL pointer deference in cache_set_flush().

1721         if (!IS_ERR_OR_NULL(c->root))
1722                 list_add(&c->root->list, &c->btree_cache);

>From the above code in cache_set_flush(), if previous registration code
fails before allocating c->root, it is possible c->root is NULL as what
it is initialized. __bch_btree_node_alloc() never returns NULL but
c->root is possible to be NULL at above line 1721.

This patch replaces IS_ERR() by IS_ERR_OR_NULL() to fix this.

Fixes: 028ddcac477b ("bcache: Remove unnecessary NULL point check in node allocations")
Signed-off-by: Liequan Che <cheliequan@inspur.com>
Cc: stable@vger.kernel.org
Cc: Zheng Wang <zyytlz.wz@163.com>
Reviewed-by: Mingzhe Zou <mingzhe.zou@easystack.cn>
Signed-off-by: Coly Li <colyli@suse.de>
Link: https://lore.kernel.org/r/20241202115638.28957-1-colyli@suse.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-12-17 13:24:28 +01:00
..
alloc.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bcache.h bcache: avoid oversize memory allocation by small stripe_size 2024-11-18 12:11:56 +01:00
bset.c bcache: fix variable length array abuse in btree_iter 2024-11-19 14:19:29 +01:00
bset.h bcache: fix variable length array abuse in btree_iter 2024-11-19 14:19:29 +01:00
btree.c bcache: fix variable length array abuse in btree_iter 2024-11-19 14:19:29 +01:00
btree.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
closure.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
closure.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
debug.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
debug.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
extents.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
extents.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
features.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
features.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
io.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
journal.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
journal.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
movinggc.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
request.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
request.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stats.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stats.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
super.c bcache: revert replacing IS_ERR_OR_NULL with IS_ERR again 2024-12-17 13:24:28 +01:00
sysfs.c bcache: fix variable length array abuse in btree_iter 2024-11-19 14:19:29 +01:00
sysfs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
trace.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
util.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
util.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
writeback.c bcache: fix variable length array abuse in btree_iter 2024-11-19 14:19:29 +01:00
writeback.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00