scsi: ufs: ufshpb: Do not send umap_all in host control mode
authorAvri Altman <avri.altman@wdc.com>
Mon, 12 Jul 2021 09:50:37 +0000 (12:50 +0300)
committerMartin K. Petersen <martin.petersen@oracle.com>
Sun, 1 Aug 2021 20:05:15 +0000 (16:05 -0400)
HPB WRITE BUFFER with buffer-id = 0x3h is supported in device control mode
only.

Link: https://lore.kernel.org/r/20210712095039.8093-11-avri.altman@wdc.com
Signed-off-by: Avri Altman <avri.altman@wdc.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ufs/ufshpb.c

index 2a463b7..cb55a08 100644 (file)
@@ -2458,7 +2458,8 @@ static void ufshpb_hpb_lu_prepared(struct ufs_hba *hba)
                        ufshpb_set_state(hpb, HPB_PRESENT);
                        if ((hpb->lu_pinned_end - hpb->lu_pinned_start) > 0)
                                queue_work(ufshpb_wq, &hpb->map_work);
-                       ufshpb_issue_umap_all_req(hpb);
+                       if (!hpb->is_hcm)
+                               ufshpb_issue_umap_all_req(hpb);
                } else {
                        dev_err(hba->dev, "destroy HPB lu %d\n", hpb->lun);
                        ufshpb_destroy_lu(hba, sdev);