Search Linux Wireless

Re: [PATCH 2/2] ath10k: make core registering async

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 22 May 2014 18:42, Kalle Valo <kvalo@xxxxxxxxxxxxxxxx> wrote:
> Michal Kazior <michal.kazior@xxxxxxxxx> writes:
>
>> If ath10k was built into the kernel it could stall
>> booting for 120 seconds by default (60 seconds for
>> each firmware API variant) waiting for firmware
>> files before userspace was ready or filesystems
>> mounted.
>>
>> Fix this by making the core registering
>> asynchronous.
>>
>> This also shoves off about 1 second from boot time
>> on most systems since the driver is now mostly
>> initialized in a worker and modprobe takes very
>> little time to complete.
>>
>> As a side effect there's no way to propagate
>> registering errors to the pci subsystem but this
>> probably isn't really necessary.
>>
>> Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
>
> [...]
>
>> --- a/drivers/net/wireless/ath/ath10k/pci.c
>> +++ b/drivers/net/wireless/ath/ath10k/pci.c
>> @@ -2758,8 +2758,6 @@ static void ath10k_pci_remove(struct pci_dev *pdev)
>>       if (!ar_pci)
>>               return;
>>
>> -     tasklet_kill(&ar_pci->msi_fw_err);
>
> Why this? That's not obvious to me.

It might end up not being initialized: If you, say, quickly insert and
eject a device you might not even initialize the tasklet (it's done
elsewhere; I suppose we could move it too) before ath10k_pci_remove()
is called. Also the tasklet is already killed elsewhere on the
teardown code path.

I'll split it into a separate patch that simply removes this line as
it's meaningless to call it here in the first place.


Michał
--
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




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux