[PATCH v2] drm/gma500: mdfld: Remove unncessary check

Maninder Singh maninder1.s at samsung.com
Wed Jun 24 04:56:54 PDT 2015


sender is dereferrenced before NULL check
struct drm_device *dev = sender->dev;

and due to there is warning during static analysis:
warn: variable dereferenced before check 'sender'

__read_panel_data Function is called by mdfld_dsi_read_mcs
and there is a same check, Thus removing the check from
mdfld_dsi_read_mcs and initializing dev struct after NULL check
of sender.

Suggested-by: Patrick Jakobsson <patrick.r.jakobsson at gmail.com>
Signed-off-by: Maninder Singh <maninder1.s at samsung.com>
Reviewed-by: Vaneet Narang <v.narang at samsung.com>
---
v1: removes check from __read_panel_data
v2: remove check from mdfld_dsi_read_mcs instead of __read_panel_data

 drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c |    9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c b/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
index 6b43ae3..959aaeb 100644
--- a/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
+++ b/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
@@ -520,7 +520,7 @@ static int __read_panel_data(struct mdfld_dsi_pkg_sender *sender, u8 data_type,
 			u8 *data, u16 len, u32 *data_out, u16 len_out, bool hs)
 {
 	unsigned long flags;
-	struct drm_device *dev = sender->dev;
+	struct drm_device *dev;
 	int i;
 	u32 gen_data_reg;
 	int retry = MDFLD_DSI_READ_MAX_COUNT;
@@ -530,6 +530,8 @@ static int __read_panel_data(struct mdfld_dsi_pkg_sender *sender, u8 data_type,
 		return -EINVAL;
 	}
 
+	dev = sender->dev;
+
 	/**
 	 * do reading.
 	 * 0) send out generic read request
@@ -576,11 +578,6 @@ static int __read_panel_data(struct mdfld_dsi_pkg_sender *sender, u8 data_type,
 int mdfld_dsi_read_mcs(struct mdfld_dsi_pkg_sender *sender, u8 cmd,
 		u32 *data, u16 len, bool hs)
 {
-	if (!sender || !data || !len) {
-		DRM_ERROR("Invalid parameters\n");
-		return -EINVAL;
-	}
-
 	return __read_panel_data(sender, MIPI_DSI_DCS_READ, &cmd, 1,
 				data, len, hs);
 }
-- 
1.7.9.5



More information about the dri-devel mailing list