aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c')
-rw-r--r--drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
index 31297266b743..d725317c4277 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
@@ -258,16 +258,16 @@ static bool bnx2x_raw_check_pending(struct bnx2x_raw_obj *o)
258 258
259static void bnx2x_raw_clear_pending(struct bnx2x_raw_obj *o) 259static void bnx2x_raw_clear_pending(struct bnx2x_raw_obj *o)
260{ 260{
261 smp_mb__before_clear_bit(); 261 smp_mb__before_atomic();
262 clear_bit(o->state, o->pstate); 262 clear_bit(o->state, o->pstate);
263 smp_mb__after_clear_bit(); 263 smp_mb__after_atomic();
264} 264}
265 265
266static void bnx2x_raw_set_pending(struct bnx2x_raw_obj *o) 266static void bnx2x_raw_set_pending(struct bnx2x_raw_obj *o)
267{ 267{
268 smp_mb__before_clear_bit(); 268 smp_mb__before_atomic();
269 set_bit(o->state, o->pstate); 269 set_bit(o->state, o->pstate);
270 smp_mb__after_clear_bit(); 270 smp_mb__after_atomic();
271} 271}
272 272
273/** 273/**
@@ -2131,7 +2131,7 @@ static int bnx2x_set_rx_mode_e1x(struct bnx2x *bp,
2131 2131
2132 /* The operation is completed */ 2132 /* The operation is completed */
2133 clear_bit(p->state, p->pstate); 2133 clear_bit(p->state, p->pstate);
2134 smp_mb__after_clear_bit(); 2134 smp_mb__after_atomic();
2135 2135
2136 return 0; 2136 return 0;
2137} 2137}
@@ -3576,16 +3576,16 @@ error_exit1:
3576 3576
3577static void bnx2x_mcast_clear_sched(struct bnx2x_mcast_obj *o) 3577static void bnx2x_mcast_clear_sched(struct bnx2x_mcast_obj *o)
3578{ 3578{
3579 smp_mb__before_clear_bit(); 3579 smp_mb__before_atomic();
3580 clear_bit(o->sched_state, o->raw.pstate); 3580 clear_bit(o->sched_state, o->raw.pstate);
3581 smp_mb__after_clear_bit(); 3581 smp_mb__after_atomic();
3582} 3582}
3583 3583
3584static void bnx2x_mcast_set_sched(struct bnx2x_mcast_obj *o) 3584static void bnx2x_mcast_set_sched(struct bnx2x_mcast_obj *o)
3585{ 3585{
3586 smp_mb__before_clear_bit(); 3586 smp_mb__before_atomic();
3587 set_bit(o->sched_state, o->raw.pstate); 3587 set_bit(o->sched_state, o->raw.pstate);
3588 smp_mb__after_clear_bit(); 3588 smp_mb__after_atomic();
3589} 3589}
3590 3590
3591static bool bnx2x_mcast_check_sched(struct bnx2x_mcast_obj *o) 3591static bool bnx2x_mcast_check_sched(struct bnx2x_mcast_obj *o)
@@ -4200,7 +4200,7 @@ int bnx2x_queue_state_change(struct bnx2x *bp,
4200 if (rc) { 4200 if (rc) {
4201 o->next_state = BNX2X_Q_STATE_MAX; 4201 o->next_state = BNX2X_Q_STATE_MAX;
4202 clear_bit(pending_bit, pending); 4202 clear_bit(pending_bit, pending);
4203 smp_mb__after_clear_bit(); 4203 smp_mb__after_atomic();
4204 return rc; 4204 return rc;
4205 } 4205 }
4206 4206
@@ -4288,7 +4288,7 @@ static int bnx2x_queue_comp_cmd(struct bnx2x *bp,
4288 wmb(); 4288 wmb();
4289 4289
4290 clear_bit(cmd, &o->pending); 4290 clear_bit(cmd, &o->pending);
4291 smp_mb__after_clear_bit(); 4291 smp_mb__after_atomic();
4292 4292
4293 return 0; 4293 return 0;
4294} 4294}
@@ -5279,7 +5279,7 @@ static inline int bnx2x_func_state_change_comp(struct bnx2x *bp,
5279 wmb(); 5279 wmb();
5280 5280
5281 clear_bit(cmd, &o->pending); 5281 clear_bit(cmd, &o->pending);
5282 smp_mb__after_clear_bit(); 5282 smp_mb__after_atomic();
5283 5283
5284 return 0; 5284 return 0;
5285} 5285}
@@ -5926,7 +5926,7 @@ int bnx2x_func_state_change(struct bnx2x *bp,
5926 if (rc) { 5926 if (rc) {
5927 o->next_state = BNX2X_F_STATE_MAX; 5927 o->next_state = BNX2X_F_STATE_MAX;
5928 clear_bit(cmd, pending); 5928 clear_bit(cmd, pending);
5929 smp_mb__after_clear_bit(); 5929 smp_mb__after_atomic();
5930 return rc; 5930 return rc;
5931 } 5931 }
5932 5932