From 215bb42517bba2c9af6fac95a5627a3adc0fed5e Mon Sep 17 00:00:00 2001 From: Ke Huang Date: Wed, 29 Apr 2020 17:14:45 +0800 Subject: [PATCH] cnss2: add null pointer check The return value of the function cnss_bus_dev_to_plat_priv() has a chance to NULL, So we have to check "plat_priv" if it is a null pointer before it is dereferenced. Change-Id: I8a5bbe5037d1f15113e58bb16b90f243ea8ef807 Signed-off-by: Ke Huang Signed-off-by: Kuichu Ni --- drivers/net/wireless/cnss2/main.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/net/wireless/cnss2/main.c b/drivers/net/wireless/cnss2/main.c index 3c36f648904a..46d04979ef38 100644 --- a/drivers/net/wireless/cnss2/main.c +++ b/drivers/net/wireless/cnss2/main.c @@ -284,6 +284,9 @@ int cnss_wlan_enable(struct device *dev, struct cnss_plat_data *plat_priv = cnss_bus_dev_to_plat_priv(dev); int ret = 0; + if (!plat_priv) + return -ENODEV; + if (plat_priv->device_id == QCA6174_DEVICE_ID) return 0; @@ -320,6 +323,9 @@ int cnss_wlan_disable(struct device *dev, enum cnss_driver_mode mode) struct cnss_plat_data *plat_priv = cnss_bus_dev_to_plat_priv(dev); int ret = 0; + if (!plat_priv) + return -ENODEV; + if (plat_priv->device_id == QCA6174_DEVICE_ID) return 0; @@ -395,6 +401,9 @@ int cnss_set_fw_log_mode(struct device *dev, u8 fw_log_mode) { struct cnss_plat_data *plat_priv = cnss_bus_dev_to_plat_priv(dev); + if (!plat_priv) + return -ENODEV; + if (plat_priv->device_id == QCA6174_DEVICE_ID) return 0;