Patch "scsi: ufs: core: Expand MCQ queue slot to DeviceQueueDepth + 1" has been added to the 6.5-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    scsi: ufs: core: Expand MCQ queue slot to DeviceQueueDepth + 1

to the 6.5-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     scsi-ufs-core-expand-mcq-queue-slot-to-devicequeuede.patch
and it can be found in the queue-6.5 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 60b40f512a1a9404c4ed4d408417b062718e3c7a
Author: Naomi Chu <naomi.chu@xxxxxxxxxxxx>
Date:   Thu Nov 2 13:24:24 2023 +0800

    scsi: ufs: core: Expand MCQ queue slot to DeviceQueueDepth + 1
    
    [ Upstream commit defde5a50d91c74e1ce71a7f0bce7fb1ae311d84 ]
    
    The UFSHCI 4.0 specification mandates that there should always be at least
    one empty slot in each queue for distinguishing between full and empty
    states. Enlarge 'hwq->max_entries' to 'DeviceQueueDepth + 1' to allow
    UFSHCI 4.0 controllers to fully utilize MCQ queue slots.
    
    Fixes: 4682abfae2eb ("scsi: ufs: core: mcq: Allocate memory for MCQ mode")
    Signed-off-by: Naomi Chu <naomi.chu@xxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20231102052426.12006-2-naomi.chu@xxxxxxxxxxxx
    Reviewed-by: Stanley Chu <stanley.chu@xxxxxxxxxxxx>
    Reviewed-by: Bart Van Assche <bvanassche@xxxxxxx>
    Reviewed-by: Peter Wang <peter.wang@xxxxxxxxxxxx>
    Reviewed-by: Chun-Hung <chun-hung.wu@xxxxxxxxxxxx>
    Signed-off-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/ufs/core/ufs-mcq.c b/drivers/ufs/core/ufs-mcq.c
index 386674ead7f0d..4ecbd30c07827 100644
--- a/drivers/ufs/core/ufs-mcq.c
+++ b/drivers/ufs/core/ufs-mcq.c
@@ -433,7 +433,7 @@ int ufshcd_mcq_init(struct ufs_hba *hba)
 
 	for (i = 0; i < hba->nr_hw_queues; i++) {
 		hwq = &hba->uhq[i];
-		hwq->max_entries = hba->nutrs;
+		hwq->max_entries = hba->nutrs + 1;
 		spin_lock_init(&hwq->sq_lock);
 		spin_lock_init(&hwq->cq_lock);
 		mutex_init(&hwq->sq_mutex);



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux