Fabian Hugelshofer wrote: > On Mon, 2008-07-28 at 20:31 +0200, Pablo Neira Ayuso wrote: >> Pablo Neira Ayuso wrote: >>> Pablo Neira Ayuso wrote: >>>> 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; >> Sorry, this is wrong. It should be: >> >> nla_put_failure: >> read_rcu_unlock(); >> nlmsg_failure: >> nlmsg_trim(skb, b); >> return -1; > > Very true indeed. Thanks for noticing. The nlmsg_failure is kinda hidden > in the macro and the jump targets were in the wrong order. You find the > corrected version below. > > nf_ctnetlink: Remove read locks from dump functions to increase > performance in the event notification path I have six patches for ctnetlink here, one of them is based on your patch. I hope to post them tomorrow for review. -- "Los honestos son inadaptados sociales" -- Les Luthiers