Message ID | 1459457986-29222-3-git-send-email-greearb@candelatech.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
On 31 March 2016 at 22:59, <greearb@candelatech.com> wrote: > From: Ben Greear <greearb@candelatech.com> > > Not sure this can happen, but seems like a reasonable sanity > check. > > Signed-off-by: Ben Greear <greearb@candelatech.com> > --- > drivers/net/wireless/ath/ath10k/txrx.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/net/wireless/ath/ath10k/txrx.c b/drivers/net/wireless/ath/ath10k/txrx.c > index 94c27f6..172b1d6 100644 > --- a/drivers/net/wireless/ath/ath10k/txrx.c > +++ b/drivers/net/wireless/ath/ath10k/txrx.c > @@ -309,6 +309,7 @@ void ath10k_peer_map_event(struct ath10k_htt *htt, > ath10k_warn(ar, /*ATH10K_DBG_HTT,*/ "htt peer map vdev %d peer %pM id %d\n", > ev->vdev_id, ev->addr, ev->peer_id); > > + BUG_ON(ar->peer_map[ev->peer_id] && (ar->peer_map[ev->peer_id] != peer)); Does this really need to be a BUG_ON? Micha?
On 03/31/2016 11:09 PM, Michal Kazior wrote: > On 31 March 2016 at 22:59, <greearb@candelatech.com> wrote: >> From: Ben Greear <greearb@candelatech.com> >> >> Not sure this can happen, but seems like a reasonable sanity >> check. >> >> Signed-off-by: Ben Greear <greearb@candelatech.com> >> --- >> drivers/net/wireless/ath/ath10k/txrx.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/drivers/net/wireless/ath/ath10k/txrx.c b/drivers/net/wireless/ath/ath10k/txrx.c >> index 94c27f6..172b1d6 100644 >> --- a/drivers/net/wireless/ath/ath10k/txrx.c >> +++ b/drivers/net/wireless/ath/ath10k/txrx.c >> @@ -309,6 +309,7 @@ void ath10k_peer_map_event(struct ath10k_htt *htt, >> ath10k_warn(ar, /*ATH10K_DBG_HTT,*/ "htt peer map vdev %d peer %pM id %d\n", >> ev->vdev_id, ev->addr, ev->peer_id); >> >> + BUG_ON(ar->peer_map[ev->peer_id] && (ar->peer_map[ev->peer_id] != peer)); > > Does this really need to be a BUG_ON? It means we have memory or logic corruption, or maybe we are out of sync with the firmware, so I think it should be very visible, at least for a while. I haven't hit it, so not sure it can happen anyway.... Thanks, Ben
diff --git a/drivers/net/wireless/ath/ath10k/txrx.c b/drivers/net/wireless/ath/ath10k/txrx.c index 94c27f6..172b1d6 100644 --- a/drivers/net/wireless/ath/ath10k/txrx.c +++ b/drivers/net/wireless/ath/ath10k/txrx.c @@ -309,6 +309,7 @@ void ath10k_peer_map_event(struct ath10k_htt *htt, ath10k_warn(ar, /*ATH10K_DBG_HTT,*/ "htt peer map vdev %d peer %pM id %d\n", ev->vdev_id, ev->addr, ev->peer_id); + BUG_ON(ar->peer_map[ev->peer_id] && (ar->peer_map[ev->peer_id] != peer)); ar->peer_map[ev->peer_id] = peer; set_bit(ev->peer_id, peer->peer_ids); exit: