On Fri 01 Jun 16:32 PDT 2018, Srinivas Kandagatla wrote:
> @@ -1380,11 +1380,13 @@ static void qcom_smd_edge_release(struct device *dev)
>  {
>       struct qcom_smd_channel *channel;
>       struct qcom_smd_edge *edge = to_smd_edge(dev);
> +     struct list_head *this, *tmp;
>  
> -     list_for_each_entry(channel, &edge->channels, list) {
> -             SET_RX_CHANNEL_INFO(channel, state, SMD_CHANNEL_CLOSED);
> -             SET_RX_CHANNEL_INFO(channel, head, 0);
> -             SET_RX_CHANNEL_INFO(channel, tail, 0);
> +     list_for_each_safe(this, tmp, &edge->channels) {
> +             channel = list_entry(this, struct qcom_smd_channel, list);

Is there a reason not to use list_for_each_entry_safe()?

> +             list_del(&channel->list);
> +             kfree(channel->name);
> +             kfree(channel);

Regards,
Bjorn

Reply via email to