@@ -163,7 +163,6 @@ void mwifiex_queue_main_work(struct mwifiex_adapter *adapter)
163163 spin_lock_irqsave (& adapter -> main_proc_lock , flags );
164164 if (adapter -> mwifiex_processing ) {
165165 adapter -> more_task_flag = true;
166- adapter -> more_rx_task_flag = true;
167166 spin_unlock_irqrestore (& adapter -> main_proc_lock , flags );
168167 } else {
169168 spin_unlock_irqrestore (& adapter -> main_proc_lock , flags );
@@ -172,20 +171,18 @@ void mwifiex_queue_main_work(struct mwifiex_adapter *adapter)
172171}
173172EXPORT_SYMBOL_GPL (mwifiex_queue_main_work );
174173
175- void mwifiex_queue_rx_work (struct mwifiex_adapter * adapter )
174+ static void mwifiex_queue_rx_work (struct mwifiex_adapter * adapter )
176175{
177176 unsigned long flags ;
178177
179178 spin_lock_irqsave (& adapter -> rx_proc_lock , flags );
180179 if (adapter -> rx_processing ) {
181- adapter -> more_rx_task_flag = true;
182180 spin_unlock_irqrestore (& adapter -> rx_proc_lock , flags );
183181 } else {
184182 spin_unlock_irqrestore (& adapter -> rx_proc_lock , flags );
185183 queue_work (adapter -> rx_workqueue , & adapter -> rx_work );
186184 }
187185}
188- EXPORT_SYMBOL_GPL (mwifiex_queue_rx_work );
189186
190187static int mwifiex_process_rx (struct mwifiex_adapter * adapter )
191188{
@@ -195,15 +192,13 @@ static int mwifiex_process_rx(struct mwifiex_adapter *adapter)
195192
196193 spin_lock_irqsave (& adapter -> rx_proc_lock , flags );
197194 if (adapter -> rx_processing || adapter -> rx_locked ) {
198- adapter -> more_rx_task_flag = true;
199195 spin_unlock_irqrestore (& adapter -> rx_proc_lock , flags );
200196 goto exit_rx_proc ;
201197 } else {
202198 adapter -> rx_processing = true;
203199 spin_unlock_irqrestore (& adapter -> rx_proc_lock , flags );
204200 }
205201
206- rx_process_start :
207202 /* Check for Rx data */
208203 while ((skb = skb_dequeue (& adapter -> rx_data_q ))) {
209204 atomic_dec (& adapter -> rx_pending );
@@ -225,11 +220,6 @@ static int mwifiex_process_rx(struct mwifiex_adapter *adapter)
225220 }
226221 }
227222 spin_lock_irqsave (& adapter -> rx_proc_lock , flags );
228- if (adapter -> more_rx_task_flag ) {
229- adapter -> more_rx_task_flag = false;
230- spin_unlock_irqrestore (& adapter -> rx_proc_lock , flags );
231- goto rx_process_start ;
232- }
233223 adapter -> rx_processing = false;
234224 spin_unlock_irqrestore (& adapter -> rx_proc_lock , flags );
235225
@@ -293,10 +283,11 @@ int mwifiex_main_process(struct mwifiex_adapter *adapter)
293283 mwifiex_process_hs_config (adapter );
294284 if (adapter -> if_ops .process_int_status )
295285 adapter -> if_ops .process_int_status (adapter );
296- if (adapter -> rx_work_enabled && adapter -> data_received )
297- mwifiex_queue_rx_work (adapter );
298286 }
299287
288+ if (adapter -> rx_work_enabled && adapter -> data_received )
289+ mwifiex_queue_rx_work (adapter );
290+
300291 /* Need to wake up the card ? */
301292 if ((adapter -> ps_state == PS_STATE_SLEEP ) &&
302293 (adapter -> pm_wakeup_card_req &&
0 commit comments