OSDN Git Service

skd: error pointer dereference in skd_cons_disk()
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 23 Aug 2017 11:20:57 +0000 (14:20 +0300)
committerJens Axboe <axboe@kernel.dk>
Wed, 23 Aug 2017 14:36:45 +0000 (08:36 -0600)
commit92d499d4905ce79c41a4b9a399ab6b89188f87e9
treec08997e6fec4b9f5bd205c3ba7d00ee24e8f47ef
parentc0b3dda7ed4d7f08b6a39ff8b35895780a68e384
skd: error pointer dereference in skd_cons_disk()

My initial impulse was to check for IS_ERR_OR_NULL() but when I looked
at this code a bit more closely, we should only need to check for
IS_ERR().

The blk_mq_alloc_tag_set() returns negative error codes and zero on
success so we can just do an "if (rc) goto err_out;".  It's better to
preserve the error code anyhow.  The blk_mq_init_queue() returns error
pointers on failure, it never returns NULL.  We can also remove the
"q = NULL;" at the start because that's no longer needed.

Fixes: ca33dd92968b ("skd: Convert to blk-mq")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/skd_main.c