Re: [PATCH v1 1/1] ASoC: SOF: probes: Check ops before memory allocation

From: Péter Ujfalusi
Date: Thu Nov 17 2022 - 08:37:19 EST




On 17/11/2022 12:32, Andy Shevchenko wrote:
> We may check ops before spending resources on memory allocation.

we might.

Acked-by: Peter Ujfalusi <peter.ujfalusi@xxxxxxxxxxxxxxx>

> While at it, utilize dev_get_platdata() helper.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> ---
> sound/soc/sof/sof-client-probes.c | 14 ++++++--------
> 1 file changed, 6 insertions(+), 8 deletions(-)
>
> diff --git a/sound/soc/sof/sof-client-probes.c b/sound/soc/sof/sof-client-probes.c
> index d08395182b1a..fff126808bc0 100644
> --- a/sound/soc/sof/sof-client-probes.c
> +++ b/sound/soc/sof/sof-client-probes.c
> @@ -399,23 +399,21 @@ static int sof_probes_client_probe(struct auxiliary_device *auxdev,
> if (!sof_probes_enabled)
> return -ENXIO;
>
> - if (!dev->platform_data) {
> + ops = dev_get_platdata(dev);
> + if (!ops) {
> dev_err(dev, "missing platform data\n");
> return -ENODEV;
> }
> -
> - priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
> - if (!priv)
> - return -ENOMEM;
> -
> - ops = dev->platform_data;
> -
> if (!ops->startup || !ops->shutdown || !ops->set_params || !ops->trigger ||
> !ops->pointer) {
> dev_err(dev, "missing platform callback(s)\n");
> return -ENODEV;
> }
>
> + priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
> + if (!priv)
> + return -ENOMEM;
> +
> priv->host_ops = ops;
>
> switch (sof_client_get_ipc_type(cdev)) {

--
Péter