> +static int ufshpb_issue_map_req(struct ufshpb_lu *hpb, > > + struct ufshpb_region *rgn, > > + struct ufshpb_subregion *srgn) > > +{ > > > > + > > + ret = ufshpb_lu_get(hpb); > > + if (unlikely(ret)) { > > + dev_notice(&hpb->hpb_lu_dev, > > + "%s: ufshpb_lu_get failed: %d", __func__, ret); > > + goto free_map_req; > > + } > > + > > + ret = ufshpb_execute_map_req(hpb, map_req); > > + if (ret) { > > + dev_notice(&hpb->hpb_lu_dev, > > + "%s: issue map_req failed: %d, region %d - %d\n", > > + __func__, ret, srgn->rgn_idx, srgn->srgn_idx); > > + ufshpb_lu_put(hpb); > > + goto free_map_req; > > + } > Missing closing ufshpb_lu_put? ufshpb_lu_put() is called at ufshpb_map_req_compl_fn() which is completed callback function. Callilng ufshpb_lu_put() in ufshpb_issue_map_req() is used for error handling. Thanks, Daejun