Lines Matching refs:ifocb
43 struct ieee80211_if_ocb *ifocb = &sdata->u.ocb; in ieee80211_ocb_rx_no_sta() local
81 spin_lock(&ifocb->incomplete_lock); in ieee80211_ocb_rx_no_sta()
82 list_add(&sta->list, &ifocb->incomplete_stations); in ieee80211_ocb_rx_no_sta()
83 spin_unlock(&ifocb->incomplete_lock); in ieee80211_ocb_rx_no_sta()
112 struct ieee80211_if_ocb *ifocb = &sdata->u.ocb; in ieee80211_ocb_housekeeping() local
118 mod_timer(&ifocb->housekeeping_timer, in ieee80211_ocb_housekeeping()
124 struct ieee80211_if_ocb *ifocb = &sdata->u.ocb; in ieee80211_ocb_work() local
127 if (ifocb->joined != true) in ieee80211_ocb_work()
132 spin_lock_bh(&ifocb->incomplete_lock); in ieee80211_ocb_work()
133 while (!list_empty(&ifocb->incomplete_stations)) { in ieee80211_ocb_work()
134 sta = list_first_entry(&ifocb->incomplete_stations, in ieee80211_ocb_work()
137 spin_unlock_bh(&ifocb->incomplete_lock); in ieee80211_ocb_work()
141 spin_lock_bh(&ifocb->incomplete_lock); in ieee80211_ocb_work()
143 spin_unlock_bh(&ifocb->incomplete_lock); in ieee80211_ocb_work()
145 if (test_and_clear_bit(OCB_WORK_HOUSEKEEPING, &ifocb->wrkq_flags)) in ieee80211_ocb_work()
156 struct ieee80211_if_ocb *ifocb = &sdata->u.ocb; in ieee80211_ocb_housekeeping_timer() local
158 set_bit(OCB_WORK_HOUSEKEEPING, &ifocb->wrkq_flags); in ieee80211_ocb_housekeeping_timer()
165 struct ieee80211_if_ocb *ifocb = &sdata->u.ocb; in ieee80211_ocb_setup_sdata() local
167 timer_setup(&ifocb->housekeeping_timer, in ieee80211_ocb_setup_sdata()
169 INIT_LIST_HEAD(&ifocb->incomplete_stations); in ieee80211_ocb_setup_sdata()
170 spin_lock_init(&ifocb->incomplete_lock); in ieee80211_ocb_setup_sdata()
177 struct ieee80211_if_ocb *ifocb = &sdata->u.ocb; in ieee80211_ocb_join() local
181 if (ifocb->joined == true) in ieee80211_ocb_join()
197 ifocb->joined = true; in ieee80211_ocb_join()
199 set_bit(OCB_WORK_HOUSEKEEPING, &ifocb->wrkq_flags); in ieee80211_ocb_join()
208 struct ieee80211_if_ocb *ifocb = &sdata->u.ocb; in ieee80211_ocb_leave() local
212 ifocb->joined = false; in ieee80211_ocb_leave()
215 spin_lock_bh(&ifocb->incomplete_lock); in ieee80211_ocb_leave()
216 while (!list_empty(&ifocb->incomplete_stations)) { in ieee80211_ocb_leave()
217 sta = list_first_entry(&ifocb->incomplete_stations, in ieee80211_ocb_leave()
220 spin_unlock_bh(&ifocb->incomplete_lock); in ieee80211_ocb_leave()
223 spin_lock_bh(&ifocb->incomplete_lock); in ieee80211_ocb_leave()
225 spin_unlock_bh(&ifocb->incomplete_lock); in ieee80211_ocb_leave()