Preferable style for the subject is: ath6kl: deinitialise wiphy on error On 09/15/2011 10:57 AM, Vivek Natarajan wrote: > This fixes the panic observed on card removal. Please add information about the crash. For example, you could copy the stack trace. > @@ -853,6 +854,8 @@ static int ath6kl_sdio_probe(struct sdio_func *func, > > err_off: > ath6kl_sdio_power_off(ar_sdio); > +err_sdio: > + ath6kl_cfg80211_deinit(ar_sdio->ar); > err_dma: > kfree(ar_sdio->dma_buffer); > err_hif: err_cfg80211, or something like that, would be a better name for the label. But this change actually has an architectural issue. The idea is that sdio.c only calls functions either from hif.h or core.h. It should not use any functions from cfg80211.c. A better fix would be to add new set of functions: ath6kl_core_free() which can be called after ath6kl_core_alloc() is executed ath6kl_core_cleanup() which can be called after ath6kl_core_init() is executed. This would replace the current ath6kl_destroy() function. But I can do the architecture change because it's more work. Please address the minor issues I commented above and then I can take the patch. Kalle -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html