|
@@ -1865,14 +1865,14 @@ il_send_add_sta(struct il_priv *il, struct il_addsta_cmd *sta, u8 flags)
|
|
|
|
|
|
cmd.len = il->ops->build_addsta_hcmd(sta, data);
|
|
|
ret = il_send_cmd(il, &cmd);
|
|
|
-
|
|
|
- if (ret || (flags & CMD_ASYNC))
|
|
|
+ if (ret)
|
|
|
return ret;
|
|
|
+ if (flags & CMD_ASYNC)
|
|
|
+ return 0;
|
|
|
+
|
|
|
+ pkt = (struct il_rx_pkt *)cmd.reply_page;
|
|
|
+ ret = il_process_add_sta_resp(il, sta, pkt, true);
|
|
|
|
|
|
- if (ret == 0) {
|
|
|
- pkt = (struct il_rx_pkt *)cmd.reply_page;
|
|
|
- ret = il_process_add_sta_resp(il, sta, pkt, true);
|
|
|
- }
|
|
|
il_free_pages(il, cmd.reply_page);
|
|
|
|
|
|
return ret;
|