mirror of
https://github.com/openvswitch/ovs
synced 2025-10-25 15:07:05 +00:00
clang: Use OVS_REQUIRES() instead of OVS_REQ_WRLOCK() for plain mutex.
This commit changes the code to use OVS_REQUIRES() instead of OVS_REQ_WRLOCK(), for plain mutex. Signed-off-by: Alex Wang <alexw@nicira.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
This commit is contained in:
140
lib/stp.c
140
lib/stp.c
@@ -154,7 +154,7 @@ static struct list *const all_stps OVS_GUARDED_BY(&mutex) = &all_stps__;
|
||||
(PORT) = stp_next_enabled_port((STP), (PORT) + 1))
|
||||
static struct stp_port *
|
||||
stp_next_enabled_port(const struct stp *stp, const struct stp_port *port)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
for (; port < &stp->ports[ARRAY_SIZE(stp->ports)]; port++) {
|
||||
if (port->state != STP_DISABLED) {
|
||||
@@ -166,57 +166,57 @@ stp_next_enabled_port(const struct stp *stp, const struct stp_port *port)
|
||||
|
||||
#define MESSAGE_AGE_INCREMENT 1
|
||||
|
||||
static void stp_transmit_config(struct stp_port *) OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_transmit_config(struct stp_port *) OVS_REQUIRES(mutex);
|
||||
static bool stp_supersedes_port_info(const struct stp_port *,
|
||||
const struct stp_config_bpdu *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_record_config_information(struct stp_port *,
|
||||
const struct stp_config_bpdu *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_record_config_timeout_values(struct stp *,
|
||||
const struct stp_config_bpdu *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static bool stp_is_designated_port(const struct stp_port *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_config_bpdu_generation(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_transmit_tcn(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_configuration_update(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_config_bpdu_generation(struct stp *) OVS_REQUIRES(mutex);
|
||||
static void stp_transmit_tcn(struct stp *) OVS_REQUIRES(mutex);
|
||||
static void stp_configuration_update(struct stp *) OVS_REQUIRES(mutex);
|
||||
static bool stp_supersedes_root(const struct stp_port *root,
|
||||
const struct stp_port *) OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_root_selection(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_designated_port_selection(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
const struct stp_port *) OVS_REQUIRES(mutex);
|
||||
static void stp_root_selection(struct stp *) OVS_REQUIRES(mutex);
|
||||
static void stp_designated_port_selection(struct stp *) OVS_REQUIRES(mutex);
|
||||
static void stp_become_designated_port(struct stp_port *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_port_state_selection(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_make_forwarding(struct stp_port *) OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_make_blocking(struct stp_port *) OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_port_state_selection(struct stp *) OVS_REQUIRES(mutex);
|
||||
static void stp_make_forwarding(struct stp_port *) OVS_REQUIRES(mutex);
|
||||
static void stp_make_blocking(struct stp_port *) OVS_REQUIRES(mutex);
|
||||
static void stp_set_port_state(struct stp_port *, enum stp_state)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_topology_change_detection(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_topology_change_detection(struct stp *) OVS_REQUIRES(mutex);
|
||||
static void stp_topology_change_acknowledged(struct stp *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_acknowledge_topology_change(struct stp_port *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_received_config_bpdu(struct stp *, struct stp_port *,
|
||||
const struct stp_config_bpdu *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_received_tcn_bpdu(struct stp *, struct stp_port *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_hello_timer_expiry(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_hello_timer_expiry(struct stp *) OVS_REQUIRES(mutex);
|
||||
static void stp_message_age_timer_expiry(struct stp_port *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static bool stp_is_designated_for_some_port(const struct stp *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_forward_delay_timer_expiry(struct stp_port *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_tcn_timer_expiry(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_tcn_timer_expiry(struct stp *) OVS_REQUIRES(mutex);
|
||||
static void stp_topology_change_timer_expiry(struct stp *)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_hold_timer_expiry(struct stp_port *) OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_hold_timer_expiry(struct stp_port *) OVS_REQUIRES(mutex);
|
||||
static void stp_initialize_port(struct stp_port *, enum stp_state)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_become_root_bridge(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
static void stp_update_bridge_timers(struct stp *) OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_become_root_bridge(struct stp *) OVS_REQUIRES(mutex);
|
||||
static void stp_update_bridge_timers(struct stp *) OVS_REQUIRES(mutex);
|
||||
|
||||
static int clamp(int x, int min, int max);
|
||||
static int ms_to_timer(int ms);
|
||||
@@ -226,7 +226,7 @@ static void stp_stop_timer(struct stp_timer *);
|
||||
static bool stp_timer_expired(struct stp_timer *, int elapsed, int timeout);
|
||||
|
||||
static void stp_send_bpdu(struct stp_port *, const void *, size_t)
|
||||
OVS_REQ_WRLOCK(mutex);
|
||||
OVS_REQUIRES(mutex);
|
||||
static void stp_unixctl_tcn(struct unixctl_conn *, int argc,
|
||||
const char *argv[], void *aux);
|
||||
|
||||
@@ -393,7 +393,7 @@ out:
|
||||
|
||||
static void
|
||||
set_bridge_id(struct stp *stp, stp_identifier new_bridge_id)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (new_bridge_id != stp->bridge_id) {
|
||||
bool root;
|
||||
@@ -1005,7 +1005,7 @@ stp_port_disable_change_detection(struct stp_port *p)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_transmit_config(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
stp_transmit_config(struct stp_port *p) OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct stp *stp = p->stp;
|
||||
bool root = stp_is_root_bridge(stp);
|
||||
@@ -1052,7 +1052,7 @@ stp_transmit_config(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
static bool
|
||||
stp_supersedes_port_info(const struct stp_port *p,
|
||||
const struct stp_config_bpdu *config)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (ntohll(config->root_id) != p->designated_root) {
|
||||
return ntohll(config->root_id) < p->designated_root;
|
||||
@@ -1069,7 +1069,7 @@ stp_supersedes_port_info(const struct stp_port *p,
|
||||
static void
|
||||
stp_record_config_information(struct stp_port *p,
|
||||
const struct stp_config_bpdu *config)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
p->designated_root = ntohll(config->root_id);
|
||||
p->designated_cost = ntohl(config->root_path_cost);
|
||||
@@ -1081,7 +1081,7 @@ stp_record_config_information(struct stp_port *p,
|
||||
static void
|
||||
stp_record_config_timeout_values(struct stp *stp,
|
||||
const struct stp_config_bpdu *config)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
stp->max_age = ntohs(config->max_age);
|
||||
stp->hello_time = ntohs(config->hello_time);
|
||||
@@ -1090,14 +1090,14 @@ stp_record_config_timeout_values(struct stp *stp,
|
||||
}
|
||||
|
||||
static bool
|
||||
stp_is_designated_port(const struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
stp_is_designated_port(const struct stp_port *p) OVS_REQUIRES(mutex)
|
||||
{
|
||||
return (p->designated_bridge == p->stp->bridge_id
|
||||
&& p->designated_port == p->port_id);
|
||||
}
|
||||
|
||||
static void
|
||||
stp_config_bpdu_generation(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_config_bpdu_generation(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct stp_port *p;
|
||||
|
||||
@@ -1109,7 +1109,7 @@ stp_config_bpdu_generation(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_transmit_tcn(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_transmit_tcn(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct stp_port *p = stp->root_port;
|
||||
struct stp_tcn_bpdu tcn_bpdu;
|
||||
@@ -1123,7 +1123,7 @@ stp_transmit_tcn(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_configuration_update(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_configuration_update(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
stp_root_selection(stp);
|
||||
stp_designated_port_selection(stp);
|
||||
@@ -1131,7 +1131,7 @@ stp_configuration_update(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
|
||||
static bool
|
||||
stp_supersedes_root(const struct stp_port *root, const struct stp_port *p)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
int p_cost = p->designated_cost + p->path_cost;
|
||||
int root_cost = root->designated_cost + root->path_cost;
|
||||
@@ -1150,7 +1150,7 @@ stp_supersedes_root(const struct stp_port *root, const struct stp_port *p)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_root_selection(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_root_selection(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct stp_port *p, *root;
|
||||
|
||||
@@ -1176,7 +1176,7 @@ stp_root_selection(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_designated_port_selection(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_designated_port_selection(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct stp_port *p;
|
||||
|
||||
@@ -1195,7 +1195,7 @@ stp_designated_port_selection(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_become_designated_port(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
stp_become_designated_port(struct stp_port *p) OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct stp *stp = p->stp;
|
||||
p->designated_root = stp->designated_root;
|
||||
@@ -1205,7 +1205,7 @@ stp_become_designated_port(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_port_state_selection(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_port_state_selection(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct stp_port *p;
|
||||
|
||||
@@ -1226,7 +1226,7 @@ stp_port_state_selection(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_make_forwarding(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
stp_make_forwarding(struct stp_port *p) OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (p->state == STP_BLOCKING) {
|
||||
stp_set_port_state(p, STP_LISTENING);
|
||||
@@ -1235,7 +1235,7 @@ stp_make_forwarding(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_make_blocking(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
stp_make_blocking(struct stp_port *p) OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (!(p->state & (STP_DISABLED | STP_BLOCKING))) {
|
||||
if (p->state & (STP_FORWARDING | STP_LEARNING)) {
|
||||
@@ -1250,7 +1250,7 @@ stp_make_blocking(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
|
||||
static void
|
||||
stp_set_port_state(struct stp_port *p, enum stp_state state)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (state != p->state && !p->state_changed) {
|
||||
p->state_changed = true;
|
||||
@@ -1262,7 +1262,7 @@ stp_set_port_state(struct stp_port *p, enum stp_state state)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_topology_change_detection(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_topology_change_detection(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5);
|
||||
|
||||
@@ -1279,14 +1279,14 @@ stp_topology_change_detection(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_topology_change_acknowledged(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_topology_change_acknowledged(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
stp->topology_change_detected = false;
|
||||
stp_stop_timer(&stp->tcn_timer);
|
||||
}
|
||||
|
||||
static void
|
||||
stp_acknowledge_topology_change(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
stp_acknowledge_topology_change(struct stp_port *p) OVS_REQUIRES(mutex)
|
||||
{
|
||||
p->topology_change_ack = true;
|
||||
stp_transmit_config(p);
|
||||
@@ -1295,7 +1295,7 @@ stp_acknowledge_topology_change(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
static void
|
||||
stp_received_config_bpdu(struct stp *stp, struct stp_port *p,
|
||||
const struct stp_config_bpdu *config)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (ntohs(config->message_age) >= ntohs(config->max_age)) {
|
||||
VLOG_WARN("%s: received config BPDU with message age (%u) greater "
|
||||
@@ -1336,7 +1336,7 @@ stp_received_config_bpdu(struct stp *stp, struct stp_port *p,
|
||||
|
||||
static void
|
||||
stp_received_tcn_bpdu(struct stp *stp, struct stp_port *p)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (p->state != STP_DISABLED) {
|
||||
if (stp_is_designated_port(p)) {
|
||||
@@ -1347,14 +1347,14 @@ stp_received_tcn_bpdu(struct stp *stp, struct stp_port *p)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_hello_timer_expiry(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_hello_timer_expiry(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
stp_config_bpdu_generation(stp);
|
||||
stp_start_timer(&stp->hello_timer, 0);
|
||||
}
|
||||
|
||||
static void
|
||||
stp_message_age_timer_expiry(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
stp_message_age_timer_expiry(struct stp_port *p) OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct stp *stp = p->stp;
|
||||
bool root = stp_is_root_bridge(stp);
|
||||
@@ -1373,7 +1373,7 @@ stp_message_age_timer_expiry(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static bool
|
||||
stp_is_designated_for_some_port(const struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_is_designated_for_some_port(const struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
const struct stp_port *p;
|
||||
|
||||
@@ -1386,7 +1386,7 @@ stp_is_designated_for_some_port(const struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_forward_delay_timer_expiry(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
stp_forward_delay_timer_expiry(struct stp_port *p) OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (p->state == STP_LISTENING) {
|
||||
stp_set_port_state(p, STP_LEARNING);
|
||||
@@ -1402,21 +1402,21 @@ stp_forward_delay_timer_expiry(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_tcn_timer_expiry(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_tcn_timer_expiry(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
stp_transmit_tcn(stp);
|
||||
stp_start_timer(&stp->tcn_timer, 0);
|
||||
}
|
||||
|
||||
static void
|
||||
stp_topology_change_timer_expiry(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_topology_change_timer_expiry(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
stp->topology_change_detected = false;
|
||||
stp->topology_change = false;
|
||||
}
|
||||
|
||||
static void
|
||||
stp_hold_timer_expiry(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
stp_hold_timer_expiry(struct stp_port *p) OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (p->config_pending) {
|
||||
stp_transmit_config(p);
|
||||
@@ -1425,7 +1425,7 @@ stp_hold_timer_expiry(struct stp_port *p) OVS_REQ_WRLOCK(mutex)
|
||||
|
||||
static void
|
||||
stp_initialize_port(struct stp_port *p, enum stp_state state)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
ovs_assert(state & (STP_DISABLED | STP_BLOCKING));
|
||||
stp_become_designated_port(p);
|
||||
@@ -1441,7 +1441,7 @@ stp_initialize_port(struct stp_port *p, enum stp_state state)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_become_root_bridge(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_become_root_bridge(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
stp->max_age = stp->bridge_max_age;
|
||||
stp->hello_time = stp->bridge_hello_time;
|
||||
@@ -1453,21 +1453,21 @@ stp_become_root_bridge(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_start_timer(struct stp_timer *timer, int value) OVS_REQ_WRLOCK(mutex)
|
||||
stp_start_timer(struct stp_timer *timer, int value) OVS_REQUIRES(mutex)
|
||||
{
|
||||
timer->value = value;
|
||||
timer->active = true;
|
||||
}
|
||||
|
||||
static void
|
||||
stp_stop_timer(struct stp_timer *timer) OVS_REQ_WRLOCK(mutex)
|
||||
stp_stop_timer(struct stp_timer *timer) OVS_REQUIRES(mutex)
|
||||
{
|
||||
timer->active = false;
|
||||
}
|
||||
|
||||
static bool
|
||||
stp_timer_expired(struct stp_timer *timer, int elapsed, int timeout)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
if (timer->active) {
|
||||
timer->value += elapsed;
|
||||
@@ -1502,7 +1502,7 @@ clamp(int x, int min, int max)
|
||||
}
|
||||
|
||||
static void
|
||||
stp_update_bridge_timers(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
stp_update_bridge_timers(struct stp *stp) OVS_REQUIRES(mutex)
|
||||
{
|
||||
int ht, ma, fd;
|
||||
|
||||
@@ -1523,7 +1523,7 @@ stp_update_bridge_timers(struct stp *stp) OVS_REQ_WRLOCK(mutex)
|
||||
|
||||
static void
|
||||
stp_send_bpdu(struct stp_port *p, const void *bpdu, size_t bpdu_size)
|
||||
OVS_REQ_WRLOCK(mutex)
|
||||
OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct eth_header *eth;
|
||||
struct llc_header *llc;
|
||||
@@ -1552,7 +1552,7 @@ stp_send_bpdu(struct stp_port *p, const void *bpdu, size_t bpdu_size)
|
||||
/* Unixctl. */
|
||||
|
||||
static struct stp *
|
||||
stp_find(const char *name) OVS_REQ_WRLOCK(mutex)
|
||||
stp_find(const char *name) OVS_REQUIRES(mutex)
|
||||
{
|
||||
struct stp *stp;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user