On 09/18/2013 11:19 AM, Arend van Spriel wrote: > On 09/17/2013 07:45 PM, Joe Perches wrote: >> <3>[ 11.206312] BUG: scheduling while atomic: >> NetworkManager/866/0x00000200 > > Thanks, Joe > > I got a report on this few days ago. It was introduced by bcma API > change and I already sent email to the committer of that change, ie. > Hauke Mehrtens. Hope it will be settled soon how to fix this. > > Gr. AvS Hi, I see four solutions for the problem: 1. convert the usleep_range(1000, 2000) into udelay(1000) in drivers/bcma/driver_pci.c 2. remove the call of bcma_core_pci_power_save() from bcma_core_pci_up() so that it does not get called by brcmsmac. 3. remove the call of bcma_core_pci_power_save() from bcma_core_pci_up() and move the call to somewhere out of the big spin lock. 4. convert the big brmcsmac spin lock into a mutex lock and use an additional spin lock for the parts where it is actually needed. For 3.12 I am for solution 1 or 2 and for the long term 3.13? I am for solution 4, but that needs bigger changes. Hauke -- 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