iwlwifi: remove CMD_WANT_SKB flag if send_cmd_sync failure
authorZhu Yi <yi.zhu@intel.com>
Thu, 8 Jan 2009 18:19:58 +0000 (10:19 -0800)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 16 Jan 2009 22:08:23 +0000 (17:08 -0500)
commit73e1a65d3c4a013f6fa56e47133be95143a75fe3
tree825a40a62522c5571f0c617bae95c4230dc60b6b
parent9d97f2e55e3df44e3b6b4cc58b091501ba7ee0ac
iwlwifi: remove CMD_WANT_SKB flag if send_cmd_sync failure

In function iwl_send_cmd_sync(), if the flag CMD_WANT_SKB is set but
we are not provided with a valid SKB (cmd->meta.u.skb == NULL), we need
to remove the CMD_WANT_SKB flag from the TX cmd queue. Otherwise in case
the cmd comes in later, it will possibly set an invalid address. Thus
it causes an invalid memory access.

This fixed the bug http://bugzilla.kernel.org/show_bug.cgi?id=11326.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/iwlwifi/iwl-hcmd.c
drivers/net/wireless/iwlwifi/iwl3945-base.c