Re: Conntrack Events Performance - Multipart Messages?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Fabian Hugelshofer wrote:
> @@ -384,8 +378,11 @@ ctnetlink_fill_info(struct sk_buff *skb, u32 pid, u32 seq,
>  	nest_parms = nla_nest_start(skb, CTA_TUPLE_REPLY | NLA_F_NESTED);
>  	if (!nest_parms)
>  		goto nla_put_failure;
> -	if (ctnetlink_dump_tuples(skb, tuple(ct, IP_CT_DIR_REPLY)) < 0)
> +	rcu_read_lock();
> +	if (ctnetlink_dump_tuples(skb, tuple(ct, IP_CT_DIR_REPLY)) < 0) {
> +		rcu_read_unlock();
>  		goto nla_put_failure;
                        ^^^
Would it look nicer if you add a new label 'nla_put_failure_unlock'?

nla_put_failure_unlock:
        read_rcu_unlock();
nlmsg_failure:
nla_put_failure:
        nlmsg_trim(skb, b);
        return -1;

Or much simpler, just call read_rcu_unlock() before the first
nla_nest_start() so that this results in much smaller patch:

nlmsg_failure:
nla_put_failure:
        read_rcu_unlock(); <---
        nlmsg_trim(skb, b);
        return -1;

BTW, please, add a short description to your patches and the
'Signed-off-by' field.

-- 
"Los honestos son inadaptados sociales" -- Les Luthiers
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netfitler Users]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux