X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=drivers%2Fnvme%2Fhost%2Fmultipath.c;h=b9fff3b8ed1b1dd180b50de141bbc3d2af73a485;hb=6b8f9159166545e576b2bc8a0c984beaeae9cc05;hp=183ec17ba0678a38047025209422fb7b24cc2944;hpb=fcf010449ebe1db0cb68b2c6410972a782f2bd14;p=platform%2Fkernel%2Flinux-starfive.git diff --git a/drivers/nvme/host/multipath.c b/drivers/nvme/host/multipath.c index 183ec17..b9fff3b 100644 --- a/drivers/nvme/host/multipath.c +++ b/drivers/nvme/host/multipath.c @@ -545,8 +545,7 @@ int nvme_mpath_init(struct nvme_ctrl *ctrl, struct nvme_id_ctrl *id) timer_setup(&ctrl->anatt_timer, nvme_anatt_timeout, 0); ctrl->ana_log_size = sizeof(struct nvme_ana_rsp_hdr) + ctrl->nanagrpid * sizeof(struct nvme_ana_group_desc); - if (!(ctrl->anacap & (1 << 6))) - ctrl->ana_log_size += ctrl->max_namespaces * sizeof(__le32); + ctrl->ana_log_size += ctrl->max_namespaces * sizeof(__le32); if (ctrl->ana_log_size > ctrl->max_hw_sectors << SECTOR_SHIFT) { dev_err(ctrl->device, @@ -570,6 +569,7 @@ int nvme_mpath_init(struct nvme_ctrl *ctrl, struct nvme_id_ctrl *id) return 0; out_free_ana_log_buf: kfree(ctrl->ana_log_buf); + ctrl->ana_log_buf = NULL; out: return error; } @@ -577,5 +577,6 @@ out: void nvme_mpath_uninit(struct nvme_ctrl *ctrl) { kfree(ctrl->ana_log_buf); + ctrl->ana_log_buf = NULL; }