Re: [PATCH 3/3] DMA: PL330: Balance module remove function with probe

From: Jassi Brar
Date: Fri Sep 28 2012 - 06:58:40 EST


On Fri, Sep 28, 2012 at 10:03 AM, Inderpal Singh
<inderpal.singh@xxxxxxxxxx> wrote:
>
> Now, if we have to check if any client is using the channel and then
> decide. We will have to traverse the channel list twice once to check
> the usage and second time to delete the nodes from the list if we go
> ahead with remove.
> The remove will look like below:
>
> @@ -3008,18 +3008,19 @@ static int __devexit pl330_remove(struct
> amba_device *adev)
> if (!pdmac)
> return 0;
>
> + /* check if any client is using any channel */
> + list_for_each_entry_safe(pch, _p, &pdmac->ddma.channels,
> + chan.device_node) {
> +
> + if (pch->chan.client_count)
> + return -EBUSY;
> + }
> +
The iteration doesn't have to be the 'safe' version here. Other than
that it seems OK.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/