From: Ben Pfaff Date: Wed, 21 Aug 2013 18:27:25 +0000 (-0700) Subject: ofproto-dpif: Fix thread safety annotation on rule_dpif_lookup_in_table(). X-Git-Tag: sliver-openvswitch-2.0.90-1~20^2~5 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=ff59f2d454eece2b7e04cfbaee59fbcc9ef58e32;p=sliver-openvswitch.git ofproto-dpif: Fix thread safety annotation on rule_dpif_lookup_in_table(). New Clang versions raise warnings about the incorrect old annotation. I first noticed these warnings with Clang 1:3.4~svn188890-1~exp1. I previously used version 1:3.4~svn187484-1~exp1. Signed-off-by: Ben Pfaff Acked-by: Jarno Rajahalme --- diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c index c7e32ef6f..c5414f3be 100644 --- a/ofproto/ofproto-dpif.c +++ b/ofproto/ofproto-dpif.c @@ -4791,7 +4791,7 @@ bool rule_dpif_lookup_in_table(struct ofproto_dpif *ofproto, const struct flow *flow, struct flow_wildcards *wc, uint8_t table_id, struct rule_dpif **rule) - OVS_ACQ_RDLOCK((*rule)->up.evict) + OVS_TRY_RDLOCK(true, (*rule)->up.evict) { struct cls_rule *cls_rule; struct classifier *cls; diff --git a/ofproto/ofproto-dpif.h b/ofproto/ofproto-dpif.h index 6a4ae078b..15e58e957 100644 --- a/ofproto/ofproto-dpif.h +++ b/ofproto/ofproto-dpif.h @@ -91,7 +91,7 @@ void rule_dpif_lookup(struct ofproto_dpif *, const struct flow *, bool rule_dpif_lookup_in_table(struct ofproto_dpif *, const struct flow *, struct flow_wildcards *, uint8_t table_id, struct rule_dpif **rule) - OVS_ACQ_RDLOCK((*rule)->up.evict); + OVS_TRY_RDLOCK(true, (*rule)->up.evict); void rule_release(struct rule_dpif *rule) OVS_RELEASES(rule->up.evict);