Using GCC version 4.6.4, I got the following compilation errors: lib/dpif-netdev.c: In function 'dp_netdev_flow_add': lib/dpif-netdev.c:1192:5: error: passing argument 2 of 'locked_uint64_store' makes integer from pointer without a cast [-Werror] lib/ovs-atomic-gcc4+.h:129:6: note: expected 'uint64_t' but argument is of type 'struct dp_netdev_actions *' lib/dpif-netdev.c:1192:5: error: passing argument 2 of 'locked_int64_store' makes integer from pointer without a cast [-Werror] lib/ovs-atomic-gcc4+.h:146:6: note: expected 'int64_t' but argument is of type 'struct dp_netdev_actions *' lib/dpif-netdev.c: In function 'dpif_netdev_flow_put': lib/dpif-netdev.c:1271:13: error: passing argument 2 of 'locked_uint64_store' makes integer from pointer without a cast [-Werror] lib/ovs-atomic-gcc4+.h:129:6: note: expected 'uint64_t' but argument is of type 'struct dp_netdev_actions *' lib/dpif-netdev.c:1271:13: error: passing argument 2 of 'locked_int64_store' makes integer from pointer without a cast [-Werror] lib/ovs-atomic-gcc4+.h:146:6: note: expected 'int64_t' but argument is of type 'struct dp_netdev_actions *' lib/dpif-netdev.c: In function 'dp_netdev_flow_get_actions': lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: assignment makes pointer from integer without a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: assignment makes pointer from integer without a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: assignment makes pointer from integer without a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: assignment makes pointer from integer without a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: assignment makes pointer from integer without a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror] lib/dpif-netdev.c:1575:12: error: assignment makes pointer from integer without a cast [-Werror] lib/dpif-netdev.c:1575:12: error: comparison of distinct pointer types lacks a cast [-Werror]
GCC version 4.7.3 compiles fine. On Wed, Mar 5, 2014 at 11:12 PM, Ben Pfaff <b...@nicira.com> wrote: > The first three patches in this series implement an RCU library > within Open vSwitch. The library is self-contained; it does not > depend on liburcu or another external library. (This is the > primary difference between this series and the previous RFC > version.) > > The fourth patch adds one simple user of the RCU library. > > The remaining patches add RCU support for dpif-netdev. > > Ben Pfaff (8): > ovs-atomic: Refactor declarations for GCC 4+, pthreads > implementations. > ovs-atomic: Add support for atomic pointer types. > ovs-rcu: New library. > ofproto: Use RCU to protect rule_actions. > util: New functions for allocating memory while avoiding false > sharing. > ovs-thread: Replace ovsthread_counter by more general ovsthread_stats. > dpif-netdev: Use ovsthread_stats for flow stats. > dpif-netdev: Use RCU to protect data. > > lib/automake.mk | 2 + > lib/dpif-netdev.c | 296 > +++++++++++++++++++++++------------------- > lib/fat-rwlock.c | 29 +---- > lib/ovs-atomic-clang.h | 4 +- > lib/ovs-atomic-gcc4+.h | 58 +++++---- > lib/ovs-atomic-gcc4.7+.h | 4 +- > lib/ovs-atomic-pthreads.h | 61 +++++---- > lib/ovs-atomic.h | 23 ++++ > lib/ovs-rcu.c | 293 > +++++++++++++++++++++++++++++++++++++++++ > lib/ovs-rcu.h | 171 ++++++++++++++++++++++++ > lib/ovs-thread.c | 107 +++++++-------- > lib/ovs-thread.h | 25 +++- > lib/timeval.c | 11 ++ > lib/util.c | 65 +++++++++- > lib/util.h | 6 +- > ofproto/connmgr.c | 5 +- > ofproto/ofproto-dpif-upcall.c | 5 + > ofproto/ofproto-dpif-xlate.c | 2 - > ofproto/ofproto-dpif.c | 2 - > ofproto/ofproto-provider.h | 19 ++- > ofproto/ofproto.c | 120 ++++++++--------- > 21 files changed, 932 insertions(+), 376 deletions(-) > create mode 100644 lib/ovs-rcu.c > create mode 100644 lib/ovs-rcu.h > > -- > 1.8.5.3 > > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev >
_______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev