Search Linux Wireless

Re: [PATCH v4] Add new mac80211 driver mwlwifi.

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

 



On Tue, 2015-06-30 at 01:49 +0000, David Lin wrote:
> +++ b/drivers/net/wireless/mwlwifi/Kconfig
> @@ -0,0 +1,17 @@
> +config MWLWIFI
> +	tristate "Marvell Wireless WiFi driver (mwlwifi)"
> +	depends on PCI && MAC80211 && MWIFIEX_PCIE=n

I still think you need to get rid of this so we can build-test this
driver properly.

> +	select FW_LOADER
> +	select OF

This looks OK, though I get a very strange dependency loop warning from
Kconfig here.

Looks like the driver now builds almost cleanly with sparse/smatch on
64-bit.

Two warnings remain, both are bugs:

> writew(0x00, (void __iomem *)&priv->pcmd_buf[1]);

cannot be right. This memory isn't __iomem, it's dma_alloc_coherent, so
a simple write should be done.

in mwl_rx_ring_init:

>                         rx_hndl->psk_buff =
>                                 dev_alloc_skb(desc->rx_buf_size);
> 
>                         if (skb_linearize(rx_hndl->psk_buff)) {

*crash*. You also later check rx_hndl->psk_buff, but well after it
already crashed.

Also, this code sequence is utterly bogus. Please try to understand why
and then remove it.

You should also use paged RX since you're allocating *very large* buffe
rs. We found that even alloc_pages(1) will fail eventually, you're
doing an order-2 allocation here for every RX skb. At least used paged
RX to get it down to order-1.

johannes
--
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