[PATCH v2 17/20] Input: rmi4 - use sizeof(*ptr) and idiomatic checks in f12 allocators

From: Dmitry Torokhov

Date: Tue May 05 2026 - 01:07:16 EST


Using sizeof(*ptr) is preferred over sizeof(struct) because it is
more robust against type changes. Also switch to checking for
allocation failure immediately after each call, and update
formatting.

Assisted-by: Gemini:gemini-3.1-pro
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
---
drivers/input/rmi4/rmi_f12.c | 25 +++++++++++++++----------
1 file changed, 15 insertions(+), 10 deletions(-)

diff --git a/drivers/input/rmi4/rmi_f12.c b/drivers/input/rmi4/rmi_f12.c
index 01838907c64b..34ed02b7f30f 100644
--- a/drivers/input/rmi4/rmi_f12.c
+++ b/drivers/input/rmi4/rmi_f12.c
@@ -528,16 +528,21 @@ static int rmi_f12_probe(struct rmi_function *fn)
}

/* allocate the in-kernel tracking buffers */
- sensor->tracking_pos = devm_kcalloc(&fn->dev,
- sensor->nbr_fingers, sizeof(struct input_mt_pos),
- GFP_KERNEL);
- sensor->tracking_slots = devm_kcalloc(&fn->dev,
- sensor->nbr_fingers, sizeof(int), GFP_KERNEL);
- sensor->objs = devm_kcalloc(&fn->dev,
- sensor->nbr_fingers,
- sizeof(struct rmi_2d_sensor_abs_object),
- GFP_KERNEL);
- if (!sensor->tracking_pos || !sensor->tracking_slots || !sensor->objs)
+ sensor->tracking_pos = devm_kcalloc(&fn->dev, sensor->nbr_fingers,
+ sizeof(*sensor->tracking_pos),
+ GFP_KERNEL);
+ if (!sensor->tracking_pos)
+ return -ENOMEM;
+
+ sensor->tracking_slots = devm_kcalloc(&fn->dev, sensor->nbr_fingers,
+ sizeof(*sensor->tracking_slots),
+ GFP_KERNEL);
+ if (!sensor->tracking_slots)
+ return -ENOMEM;
+
+ sensor->objs = devm_kcalloc(&fn->dev, sensor->nbr_fingers,
+ sizeof(*sensor->objs), GFP_KERNEL);
+ if (!sensor->objs)
return -ENOMEM;

ret = rmi_2d_sensor_configure_input(fn, sensor);
--
2.54.0.545.g6539524ca2-goog