Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 324476
b: refs/heads/master
c: a6c4225
h: refs/heads/master
v: v3
  • Loading branch information
Devendra Naga authored and Greg Kroah-Hartman committed Aug 14, 2012
1 parent dc05345 commit bf2741c
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 22 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: be21a084c104de45d8bfab0a0ad3a73ed902db25
refs/heads/master: a6c42258ac8735aa25a4e5b711df2e516c3aff14
44 changes: 23 additions & 21 deletions trunk/drivers/staging/csr/bh.c
Original file line number Diff line number Diff line change
Expand Up @@ -160,39 +160,41 @@ uf_wait_for_thread_to_stop(unifi_priv_t *priv, struct uf_thread *thread)
* None.
* ---------------------------------------------------------------------------
*/
static void
static void
handle_bh_error(unifi_priv_t *priv)
{
u8 conf_param = CONFIG_IND_ERROR;
u8 interfaceTag;
netInterface_priv_t *interfacePriv;
u8 conf_param = CONFIG_IND_ERROR;
u8 interfaceTag;


/* Block unifi_run_bh() until the error has been handled. */
priv->bh_thread.block_thread = 1;
/* Block unifi_run_bh() until the error has been handled. */
priv->bh_thread.block_thread = 1;

/* Consider UniFi to be uninitialised */
priv->init_progress = UNIFI_INIT_NONE;
/* Consider UniFi to be uninitialised */
priv->init_progress = UNIFI_INIT_NONE;

/* Stop the network traffic */
for( interfaceTag =0; interfaceTag <CSR_WIFI_NUM_INTERFACES;interfaceTag ++) {
netInterface_priv_t *interfacePriv = priv->interfacePriv[interfaceTag];
if (interfacePriv->netdev_registered == 1) {
netif_carrier_off(priv->netdev[interfaceTag]);
}
}
/* Stop the network traffic */
for (interfaceTag = 0;
interfaceTag < CSR_WIFI_NUM_INTERFACES; interfaceTag++) {
interfacePriv = priv->interfacePriv[interfaceTag];
if (interfacePriv->netdev_registered)
netif_carrier_off(priv->netdev[interfaceTag]);
}

#ifdef CSR_NATIVE_LINUX
/* Force any client waiting on an mlme_wait_for_reply() to abort. */
uf_abort_mlme(priv);
/* Force any client waiting on an mlme_wait_for_reply() to abort. */
uf_abort_mlme(priv);

/* Cancel any pending workqueue tasks */
flush_workqueue(priv->unifi_workqueue);
/* Cancel any pending workqueue tasks */
flush_workqueue(priv->unifi_workqueue);

#endif /* CSR_NATIVE_LINUX */

unifi_error(priv, "handle_bh_error: fatal error is reported to the SME.\n");
/* Notify the clients (SME or unifi_manager) for the error. */
ul_log_config_ind(priv, &conf_param, sizeof(u8));
unifi_error(priv,
"handle_bh_error: fatal error is reported to the SME.\n");
/* Notify the clients (SME or unifi_manager) for the error. */
ul_log_config_ind(priv, &conf_param, sizeof(u8));

} /* handle_bh_error() */

Expand Down

0 comments on commit bf2741c

Please sign in to comment.