Patch "Input: ipaq-micro-keys - add error handling for devm_kmemdup" has been added to the 5.4-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

    Input: ipaq-micro-keys - add error handling for devm_kmemdup

to the 5.4-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:
     input-ipaq-micro-keys-add-error-handling-for-devm_km.patch
and it can be found in the queue-5.4 subdirectory.

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



commit a0e3bf574fff730e1a2d31c81bc8fb4117305195
Author: Haoran Liu <liuhaoran14@xxxxxxx>
Date:   Sun Dec 3 19:00:23 2023 +0000

    Input: ipaq-micro-keys - add error handling for devm_kmemdup
    
    [ Upstream commit 59b6a747e2d39227ac2325c5e29d6ab3bb070c2a ]
    
    Check the return value of i2c_add_adapter. Static analysis revealed that
    the function did not properly handle potential failures of
    i2c_add_adapter, which could lead to partial initialization of the I2C
    adapter and unstable operation.
    
    Signed-off-by: Haoran Liu <liuhaoran14@xxxxxxx>
    Link: https://lore.kernel.org/r/20231203164653.38983-1-liuhaoran14@xxxxxxx
    Fixes: d7535ffa427b ("Input: driver for microcontroller keys on the iPaq h3xxx")
    Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/input/keyboard/ipaq-micro-keys.c b/drivers/input/keyboard/ipaq-micro-keys.c
index e3f9e445e8800..fe5a9c54ad583 100644
--- a/drivers/input/keyboard/ipaq-micro-keys.c
+++ b/drivers/input/keyboard/ipaq-micro-keys.c
@@ -105,6 +105,9 @@ static int micro_key_probe(struct platform_device *pdev)
 	keys->codes = devm_kmemdup(&pdev->dev, micro_keycodes,
 			   keys->input->keycodesize * keys->input->keycodemax,
 			   GFP_KERNEL);
+	if (!keys->codes)
+		return -ENOMEM;
+
 	keys->input->keycode = keys->codes;
 
 	__set_bit(EV_KEY, keys->input->evbit);




[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