Re: [PATCH] netlink: do not set cb_running if dump's start() errs

From: Johannes Berg
Date: Mon Oct 09 2017 - 07:59:03 EST


On Mon, 2017-10-09 at 13:56 +0200, Jason A. Donenfeld wrote:

> @@ -2266,16 +2266,17 @@ int __netlink_dump_start(struct sock *ssk,
> struct sk_buff *skb,
> cb->min_dump_alloc = control->min_dump_alloc;
> cb->skb = skb;
>
> + if (cb->start) {
> + ret = cb->start(cb);
> + if (ret)
> + goto error_unlock;
> + }
> +
> nlk->cb_running = true;
>
> mutex_unlock(nlk->cb_mutex);

Hmm. Now start is invoked with the mutex held, I'm not sure it actually
_matters_, but that should probably be reviewed and mentioned in the
commit log?

johannes