[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20131203.114834.106107332355850481.davem@davemloft.net>
Date: Tue, 03 Dec 2013 11:48:34 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: jhs@...atatu.com
Cc: netdev@...r.kernel.org, eric.dumazet@...il.com,
alexander.h.duyck@...el.com, ebiederm@...ssion.com
Subject: Re: [PATCH 5/5] net_sched: Fail if missing mandatory action
operation methods
From: Jamal Hadi Salim <jhs@...atatu.com>
Date: Tue, 3 Dec 2013 09:23:19 -0500
> @@ -277,8 +277,10 @@ int tcf_register_action(struct tc_action_ops *act)
> return -EEXIST;
> }
> }
> - act->next = NULL;
> - *ap = act;
> +
> + /* Must supply act, dump, cleanup and init */
> + if (!act->act || !act->dump || !act->cleanup || !act->init)
> + return -EINVAL;
>
> /* Supply defaults */
> if (!act->lookup)
You are going to return with a lock held on error here.
I was going to tell you not to do these fixups so late in the
function, inside of the write lock, there is no reason for it.
You should do all of this operation handling at the top of
the function, before the write lock is taken.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists