Skip to content

Commit f7c2dd9

Browse files
committed
irqchip/alpine-msi: Convert to __free
Tidy up the code with __free. No functional change. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Nam Cao <namcao@linutronix.de> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Link: https://lore.kernel.org/all/ff2c9460d03e44cb2946521dbae5ce800d34523e.1750860131.git.namcao@linutronix.de
1 parent 71476f9 commit f7c2dd9

1 file changed

Lines changed: 12 additions & 19 deletions

File tree

drivers/irqchip/irq-alpine-msi.c

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -207,11 +207,10 @@ static int alpine_msix_init_domains(struct alpine_msix_data *priv, struct device
207207

208208
static int alpine_msix_init(struct device_node *node, struct device_node *parent)
209209
{
210-
struct alpine_msix_data *priv;
210+
struct alpine_msix_data *priv __free(kfree) = kzalloc(sizeof(*priv), GFP_KERNEL);
211211
struct resource res;
212212
int ret;
213213

214-
priv = kzalloc(sizeof(*priv), GFP_KERNEL);
215214
if (!priv)
216215
return -ENOMEM;
217216

@@ -220,7 +219,7 @@ static int alpine_msix_init(struct device_node *node, struct device_node *parent
220219
ret = of_address_to_resource(node, 0, &res);
221220
if (ret) {
222221
pr_err("Failed to allocate resource\n");
223-
goto err_priv;
222+
return ret;
224223
}
225224

226225
/*
@@ -235,34 +234,28 @@ static int alpine_msix_init(struct device_node *node, struct device_node *parent
235234

236235
if (of_property_read_u32(node, "al,msi-base-spi", &priv->spi_first)) {
237236
pr_err("Unable to parse MSI base\n");
238-
ret = -EINVAL;
239-
goto err_priv;
237+
return -EINVAL;
240238
}
241239

242240
if (of_property_read_u32(node, "al,msi-num-spis", &priv->num_spis)) {
243241
pr_err("Unable to parse MSI numbers\n");
244-
ret = -EINVAL;
245-
goto err_priv;
242+
return -EINVAL;
246243
}
247244

248-
priv->msi_map = bitmap_zalloc(priv->num_spis, GFP_KERNEL);
249-
if (!priv->msi_map) {
250-
ret = -ENOMEM;
251-
goto err_priv;
252-
}
245+
unsigned long *msi_map __free(kfree) = bitmap_zalloc(priv->num_spis, GFP_KERNEL);
246+
247+
if (!msi_map)
248+
return -ENOMEM;
249+
priv->msi_map = msi_map;
253250

254251
pr_debug("Registering %d msixs, starting at %d\n", priv->num_spis, priv->spi_first);
255252

256253
ret = alpine_msix_init_domains(priv, node);
257254
if (ret)
258-
goto err_map;
255+
return ret;
259256

257+
retain_and_null_ptr(priv);
258+
retain_and_null_ptr(msi_map);
260259
return 0;
261-
262-
err_map:
263-
bitmap_free(priv->msi_map);
264-
err_priv:
265-
kfree(priv);
266-
return ret;
267260
}
268261
IRQCHIP_DECLARE(alpine_msix, "al,alpine-msix", alpine_msix_init);

0 commit comments

Comments
 (0)