* [PATCH] Input: iqs7222 - avoid dereferencing a NULL pointer
@ 2022-04-17 21:41 Jeff LaBundy
2022-04-17 23:05 ` Dmitry Torokhov
0 siblings, 1 reply; 2+ messages in thread
From: Jeff LaBundy @ 2022-04-17 21:41 UTC (permalink / raw)
To: dmitry.torokhov; +Cc: linux-input, Jeff LaBundy, Dan Carpenter
Select callers of iqs7222_parse_props() do not expect a child node
to be derived and returned via pointer. As such, these callers set
**child_node to NULL. However, this pointer is dereferenced in all
cases.
To solve this problem, dereference the pointer only for cases that
expect a child node in the first place. In these cases, the caller
provides a valid pointer.
Fixes: e505edaedcb9 ("Input: add support for Azoteq IQS7222A/B/C")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jeff LaBundy <jeff@labundy.com>
---
drivers/input/misc/iqs7222.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/input/misc/iqs7222.c b/drivers/input/misc/iqs7222.c
index c0b273222092..6b4138771a3f 100644
--- a/drivers/input/misc/iqs7222.c
+++ b/drivers/input/misc/iqs7222.c
@@ -1534,8 +1534,8 @@ static int iqs7222_parse_props(struct iqs7222_private *iqs7222,
enum iqs7222_reg_key_id reg_key)
{
u16 *setup = iqs7222_setup(iqs7222, reg_grp, child_index);
- struct fwnode_handle *reg_grp_node = *child_node;
struct i2c_client *client = iqs7222->client;
+ struct fwnode_handle *reg_grp_node;
char reg_grp_name[16];
int i;
@@ -1550,7 +1550,8 @@ static int iqs7222_parse_props(struct iqs7222_private *iqs7222,
* for additional group-specific processing. In some cases, the
* child node may have already been derived.
*/
- if (*child_node)
+ reg_grp_node = *child_node;
+ if (reg_grp_node)
break;
snprintf(reg_grp_name, sizeof(reg_grp_name), "%s-%d",
--
2.25.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] Input: iqs7222 - avoid dereferencing a NULL pointer
2022-04-17 21:41 [PATCH] Input: iqs7222 - avoid dereferencing a NULL pointer Jeff LaBundy
@ 2022-04-17 23:05 ` Dmitry Torokhov
0 siblings, 0 replies; 2+ messages in thread
From: Dmitry Torokhov @ 2022-04-17 23:05 UTC (permalink / raw)
To: Jeff LaBundy; +Cc: linux-input, Dan Carpenter
On Sun, Apr 17, 2022 at 04:41:32PM -0500, Jeff LaBundy wrote:
> Select callers of iqs7222_parse_props() do not expect a child node
> to be derived and returned via pointer. As such, these callers set
> **child_node to NULL. However, this pointer is dereferenced in all
> cases.
>
> To solve this problem, dereference the pointer only for cases that
> expect a child node in the first place. In these cases, the caller
> provides a valid pointer.
>
> Fixes: e505edaedcb9 ("Input: add support for Azoteq IQS7222A/B/C")
> Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
> Signed-off-by: Jeff LaBundy <jeff@labundy.com>
Applied, thank you.
--
Dmitry
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-04-17 23:05 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-17 21:41 [PATCH] Input: iqs7222 - avoid dereferencing a NULL pointer Jeff LaBundy
2022-04-17 23:05 ` Dmitry Torokhov
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.