[PATCH v2] mux: mmio: Zero the allocated memory
From: Krzysztof Kozlowski
Date: Tue Mar 17 2026 - 11:25:46 EST
Zero the allocated memory in probe() for fields and hardware states
because:
1. The "hardware_states" array is not initialized in the probe, thus
starting the device with uninitialized memory. This not a bug,
because pointed memory will be assigned in suspend callback, however
it is a discouraged coding practice.
The "fields" array is initialized shortly further in the probe().
2. Linux kernel convention for safer code encourages using zeroed
allocations, as expressed in memory-allocation.rst document.
Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxxxxx>
---
Changes in v2:
1. Extend commit msg.
---
drivers/mux/mmio.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/mux/mmio.c b/drivers/mux/mmio.c
index 0611ef28bb69..b61e590f2ac9 100644
--- a/drivers/mux/mmio.c
+++ b/drivers/mux/mmio.c
@@ -100,12 +100,14 @@ static int mux_mmio_probe(struct platform_device *pdev)
mux_mmio = mux_chip_priv(mux_chip);
- mux_mmio->fields = devm_kmalloc(dev, num_fields * sizeof(*mux_mmio->fields), GFP_KERNEL);
+ mux_mmio->fields = devm_kcalloc(dev, num_fields, sizeof(*mux_mmio->fields),
+ GFP_KERNEL);
if (!mux_mmio->fields)
return -ENOMEM;
- mux_mmio->hardware_states = devm_kmalloc(dev, num_fields *
- sizeof(*mux_mmio->hardware_states), GFP_KERNEL);
+ mux_mmio->hardware_states = devm_kcalloc(dev, num_fields,
+ sizeof(*mux_mmio->hardware_states),
+ GFP_KERNEL);
if (!mux_mmio->hardware_states)
return -ENOMEM;
--
2.51.0