Re: [PATCH v2 03/16] remoteproc: introduce rproc_add_carveout function

From: Bjorn Andersson
Date: Wed Dec 13 2017 - 19:36:51 EST


On Thu 30 Nov 08:46 PST 2017, Loic Pallardy wrote:
> diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
> index f23daf9..279320a 100644
> --- a/drivers/remoteproc/remoteproc_core.c
> +++ b/drivers/remoteproc/remoteproc_core.c
> @@ -737,6 +737,7 @@ static int rproc_handle_carveout(struct rproc *rproc,
> carveout->dma = dma;
> carveout->da = rsc->da;
> carveout->release = rproc_release_carveout;
> + carveout->priv = (void *)CARVEOUT_RSC_ALLOCATED;

I don't fancy the (ab)use of priv to keep track of this, I also don't
see that it's ever used. Please drop it.

[..]
> +int rproc_add_carveout(struct rproc *rproc, struct rproc_mem_entry *mem)
> +{
> + if (!rproc || !mem)
> + return -EINVAL;

I don't see this function doing more than adding the item to the list of
carveouts, which can't fail. So let's just rely on the user calling it
with valid references and make it return void.

> +
> + mem->priv = (void *)CARVEOUT_EXTERNAL;
> +
> + list_add_tail(&mem->node, &rproc->carveouts);
> +
> + return 0;
> +}
> +EXPORT_SYMBOL(rproc_add_carveout);

Regards,
Bjorn