Return-path: Received: from mail-pa0-f54.google.com ([209.85.220.54]:55431 "EHLO mail-pa0-f54.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752047Ab3LRTng (ORCPT ); Wed, 18 Dec 2013 14:43:36 -0500 Date: Wed, 18 Dec 2013 11:43:28 -0800 From: "Luis R. Rodriguez" To: Sander Eikelenboom Cc: Johannes Berg , Arend van Spriel , Linus Torvalds , Ben Hutchings , Julian Calaby , "Grumbach, Emmanuel" , "linux-kernel@vger.kernel.org" , "ilw@linux.intel.com" , "netdev@vger.kernel.org" , "linux-wireless@vger.kernel.org" , "John W. Linville" , Avinash Patil Subject: Re: [cfg80211 / iwlwifi] setting wireless regulatory domain doesn't work. Message-ID: <20131218194328.GE5705@cerro.do-not-panic.com> (sfid-20131218_204416_702285_5C26F1BD) References: <19210260274.20131216135644@eikelenboom.it> <1534126119.20131217104548@eikelenboom.it> <387552477.20131217213319@eikelenboom.it> <20131217212709.GB5624@decadent.org.uk> <1254825772.20131217224914@eikelenboom.it> <52B167F6.5060209@broadcom.com> <1387358785.4694.9.camel@jlt4.sipsolutions.net> <133955103.20131218114845@eikelenboom.it> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <133955103.20131218114845@eikelenboom.it> Sender: linux-wireless-owner@vger.kernel.org List-ID: On Wed, Dec 18, 2013 at 11:48:45AM +0100, Sander Eikelenboom wrote: > > Wednesday, December 18, 2013, 10:26:25 AM, you wrote: > > > Hi all, > > > We really should be asking Luis to look at this who hasn't yet chimed > > in, presumably because he's between jobs (and travelling IIRC) > > > On Wed, 2013-12-18 at 10:16 +0100, Arend van Spriel wrote: > >> On 12/17/2013 11:06 PM, Linus Torvalds wrote: > >> > We have literally had this *exact* same issue with firmware loading. > >> > Network drivers shouldn't try to load firmware at module load time. > >> > Same deal. > >> > >> It is kind of a chicken and egg problem for (wireless) networking > >> drivers. To get IFF_UP from the network layer you have to register a > >> netdevice. For wireless drivers this means you have to register a wiphy > >> device with cfg80211 which flags capabilities and optionally are custom > >> regulatory domain. That information depends on the device and firmware > >> used. And there we have a full circle. > > > This is all really beside the point. > > > For this CRDA information, the kernel never actually *waits* for it, so > > in the case that there's no reply, it uses the built-in world domain. So > > it's not like request_firmware(), which will block boot forever, but > > it's also not like request_firmware_nowait() which will eventually time > > out and come back with an error if userspace isn't handling it (though > > now that firmware loading is built in ...) > > > The issue is that it uses the built-in data *forever*, and what Sander > > said was "or it will block forever" but just meant that it never was > > able to do any further updates. > > > It *doesn't* actually block the boot process or such. Everything Linus > > said is true but seems to have been written in understanding "blocks" as > > "blocking the boot process", rather than "blocking further updates". > > > Regardless of this, even blocking further updates is a really bad idea. > > There are a few ways to handle this, but I'll let Luis poke at that. > > Your description is correct, sorry if I was not clear. We have a timeout handler for this, I'll check to see what's going on by trying to reproduce on my end. Are you using wireless-testing ? Luis