> > Linux cfg80211 regulatory subsystem uses CRDA timeout to ensure completion > > of regulatory updates, performed by user-space software. See call_crda > > functon in net/wireless/reg.c: > > > > static int call_crda(const char *alpha2) > > { > > ... > > > > queue_delayed_work(system_power_efficient_wq, > > &crda_timeout, msecs_to_jiffies(3142)); > > return 0; > > } > > > > So regulatory update/reset operations shall be completed in 3142 msec. > > And that includes processing of regulatory notifiers for all the > > wireless cards in the system. > > > > It is not quite clear where this specific timeout value came from. > > Original commit (a90c7a313a1c5b) doesn't go into details about it. > > > > Any ideas where it could come from ? > > No particular reason. It's just ~pi seconds, and IIRC Luis thought that > was funny :-) Indeed, it is PI. I should have known. But instead I spent some time digging through 802.11 specs :) > Are you seeing any issues with that? Well, as I mentioned in my question, regulatory update/reset operations shall be completed in ~pi seconds for _all_ the wireless cards in the system. In our case, regulatory reset operation may be fairly costly. As a result, we end up with recurring reset timeout, when more than one qtn card is installed in a single pcie host. One option for us is to optimize regulatory reset operations in firmware. But what do you think about converting crda_timeout into a per-wiphy timeout in the case when all wiphy-s are being processed, e.g. in update_all_wiphy_regulatory. Regards, Sergey