Patch "spi: hisi-kunpeng: Add verification for the max_frequency provided by the firmware" has been added to the 6.6-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

    spi: hisi-kunpeng: Add verification for the max_frequency provided by the firmware

to the 6.6-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:
     spi-hisi-kunpeng-add-verification-for-the-max_freque.patch
and it can be found in the queue-6.6 subdirectory.

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



commit 3136aaee31485d3525d4c9a42acca56372e2abd3
Author: Devyn Liu <liudingyuan@xxxxxxxxxx>
Date:   Tue Jul 30 11:20:40 2024 +0800

    spi: hisi-kunpeng: Add verification for the max_frequency provided by the firmware
    
    [ Upstream commit 5127c42c77de18651aa9e8e0a3ced190103b449c ]
    
    If the value of max_speed_hz is 0, it may cause a division by zero
    error in hisi_calc_effective_speed().
    The value of max_speed_hz is provided by firmware.
    Firmware is generally considered as a trusted domain. However, as
    division by zero errors can cause system failure, for defense measure,
    the value of max_speed is validated here. So 0 is regarded as invalid
    and an error code is returned.
    
    Signed-off-by: Devyn Liu <liudingyuan@xxxxxxxxxx>
    Reviewed-by: Jay Fang <f.fangjian@xxxxxxxxxx>
    Link: https://patch.msgid.link/20240730032040.3156393-3-liudingyuan@xxxxxxxxxx
    Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/spi/spi-hisi-kunpeng.c b/drivers/spi/spi-hisi-kunpeng.c
index 6910b4d4c427..16054695bdb0 100644
--- a/drivers/spi/spi-hisi-kunpeng.c
+++ b/drivers/spi/spi-hisi-kunpeng.c
@@ -481,6 +481,9 @@ static int hisi_spi_probe(struct platform_device *pdev)
 		return -EINVAL;
 	}
 
+	if (host->max_speed_hz == 0)
+		return dev_err_probe(dev, -EINVAL, "spi-max-frequency can't be 0\n");
+
 	ret = device_property_read_u16(dev, "num-cs",
 					&host->num_chipselect);
 	if (ret)




[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