On Tue, Sep 6, 2011 at 7:02 PM, Pravin Shelar <pshe...@nicira.com> wrote: > Following patch fixes rcu-dereferences-check warning msg by annotating rcu > dereferences for BH context. > > ----------------------8<---------------------------------- > =================================================== > [ INFO: suspicious rcu_dereference_check() usage. ] > --------------------------------------------------- > /root/ovs-cl1/hash3/datapath/linux/datapath.c:298 invoked > rcu_dereference_check() without protection! > > /root/ovs-cl1/hash3/datapath/linux/actions.c:360 invoked > rcu_dereference_check() without protection! > /root/ovs-cl1/hash3/datapath/linux/actions.c:210 invoked > rcu_dereference_check() without protection!
One of the things that has been floating around for a long time is whether we should just run all packet processing with bottom halves disabled. This would simplify things a little bit and be more consistent with the rest of the networking stack. It's actually already true for everything except packets that we inject from userspace (since every other packet comes from the network stack, which has bottom halves disabled). Since it's a such a small percentage of packets, I think it's worth doing (simply by turning rcu_read_lock into rcu_read_lock_bh in ovs_packet_cmd_execute()) and then you can simplify your checks in this patch as well. Otherwise, I think this makes sense. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev