Linux wireless drivers development
 help / color / mirror / Atom feed
* re: ath9k: dfs move ath_dfs_pool_stats
From: Dan Carpenter @ 2013-11-01 10:26 UTC (permalink / raw)
  To: janusz.dziedzic; +Cc: linux-wireless, ath9k-devel

Hello Janusz Dziedzic,

This is a semi-automatic email about new static checker warnings.

The patch d265214b614a: "ath9k: dfs move ath_dfs_pool_stats" from Oct 
14, 2013, leads to the following Smatch complaint:

drivers/net/wireless/ath/ath9k/dfs_debug.c:67 read_file_dfs()
	 error: we previously assumed 'sc->dfs_detector' could be null (see line 47)

drivers/net/wireless/ath/ath9k/dfs_debug.c
    46	
    47		if (sc->dfs_detector)
                    ^^^^^^^^^^^^^^^^
Patch introduces a new check.

    48			dfs_pool_stats = sc->dfs_detector->get_stats(sc->dfs_detector);
    49	
    50		len += scnprintf(buf + len, size - len, "DFS support for "
    51				 "macVersion = 0x%x, macRev = 0x%x: %s\n",
    52				 hw_ver->macVersion, hw_ver->macRev,
    53				 (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_DFS) ?
    54						"enabled" : "disabled");
    55		len += scnprintf(buf + len, size - len, "Pulse detector statistics:\n");
    56		ATH9K_DFS_STAT("pulse events reported   ", pulses_total);
    57		ATH9K_DFS_STAT("invalid pulse events    ", pulses_no_dfs);
    58		ATH9K_DFS_STAT("DFS pulses detected     ", pulses_detected);
    59		ATH9K_DFS_STAT("Datalen discards        ", datalen_discards);
    60		ATH9K_DFS_STAT("RSSI discards           ", rssi_discards);
    61		ATH9K_DFS_STAT("BW info discards        ", bwinfo_discards);
    62		ATH9K_DFS_STAT("Primary channel pulses  ", pri_phy_errors);
    63		ATH9K_DFS_STAT("Secondary channel pulses", ext_phy_errors);
    64		ATH9K_DFS_STAT("Dual channel pulses     ", dc_phy_errors);
    65		len += scnprintf(buf + len, size - len, "Radar detector statistics "
    66				 "(current DFS region: %d)\n",
    67				 sc->dfs_detector->region);
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^
Existing unchecked dereference.

    68		ATH9K_DFS_STAT("Pulse events processed  ", pulses_processed);
    69		ATH9K_DFS_STAT("Radars detected         ", radar_detected);

regards,
dan carpenter

^ permalink raw reply

* Re: [PATCH] NFC: mei_phy: using kfree_skb() instead of kfree()
From: Samuel Ortiz @ 2013-11-01  9:31 UTC (permalink / raw)
  To: Salil Kapur
  Cc: lauro.venancio, aloisio.almeida, linux-wireless, linux-nfc,
	linux-kernel
In-Reply-To: <1383241666-3806-1-git-send-email-salilkapur93@gmail.com>

Hi Salil,

On Thu, Oct 31, 2013 at 11:17:46PM +0530, Salil Kapur wrote:
> using kfree_skb() instead of kfree() for struct sk_buff
> 
> Signed-off-by: Salil Kapur <salilkapur93@gmail.com>
> ---
>  drivers/nfc/mei_phy.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
Applied to nfc-next, thanks.

Cheers,
Samuel.

-- 
Intel Open Source Technology Centre
http://oss.intel.com/

^ permalink raw reply

* brcmfmac driver does not work with a BCM4335 WiFi module
From: Dong Aisheng @ 2013-11-01  6:22 UTC (permalink / raw)
  To: linux-wireless; +Cc: frankyl, brcm80211-dev-list

Hi ALL,

I'm verifying BCM4335 WiFi module on i.MX6SL EVK board.
The kernel i ran is latest from:
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless.git

The firmware is used is from:
git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git

NVRAM file is got from the vendor which should work for the module.

But i ran into the following issues, hope somebody can give me some hints.

First, i met error when module is auto loaded, but seems the driver is
still loaded successfully since i found the new WiFi interface with
ifconfig.
But it can not work after run rfkill unblock wlan and a lot error
messages comes out.

I'm wondering if this driver can support bcm4335 well, can anybody
provide some help?

Regards
Dong Aisheng

Below is the log FYI.

root@imx6slevk:~# mmc0: queuing unknown CIS tuple 0x91 (3 bytes)
mmc0: new high speed SDIO card at address 0001
brcmfmac: brcmf_sdioh_request_word: Failed to read word, Err: 0xffffffac
brcmfmac: brcmf_sdioh_request_word: Failed to read word, Err: 0xffffffac
brcmfmac: brcmf_sdioh_request_word: Failed to read word, Err: 0xffffffac
brcmfmac: brcmf_sdio_regrw_helper: failed with -84
brcmfmac: brcmf_sdio_chip_drivestrengthinit: No SDIO Drive strength
init done for chip 4335 rev 1 pmurev 18
brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Mar 24 2013
20:36:01 version 6.30.171.24.20 (B0 Station/P2P)
brcmfmac: brcmf_fil_cmd_data: Failed err=-23

root@imx6slevk:~#
root@imx6slevk:~# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:04:9F:02:76:E5
          inet addr:10.192.242.69  Bcast:10.192.242.255  Mask:255.255.255.0
          inet6 addr: fe80::204:9fff:fe02:76e5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:20301 errors:0 dropped:1 overruns:0 frame:0
          TX packets:16888 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:22233761 (21.2 MiB)  TX bytes:2373414 (2.2 MiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:34 errors:0 dropped:0 overruns:0 frame:0
          TX packets:34 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2340 (2.2 KiB)  TX bytes:2340 (2.2 KiB)

sit0      Link encap:IPv6-in-IPv4
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 00:90:4C:C5:12:38
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

root@imx6slevk:~#
root@imx6slevk:~# rfkill list
0: phy0: wlan
        Soft blocked: yes
        Hard blocked: no

root@imx6slevk:~# rfkill unblock wlan
root@imx6slevk:~# brcmfmac: brcmf_sdbrcm_bus_rxctl: resumed on timeout
brcmfmac: brcmf_add_if: ERROR: netdev:wlan0 already exists
brcmfmac: brcmf_add_if: ignore IF event
brcmfmac: brcmf_fil_cmd_data: Failed err=-110
brcmfmac: brcmf_fil_cmd_data: Failed err=-23
brcmfmac: brcmf_sdioh_request_byte: Failed to write byte
F1:@0x1001f=01, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to read byte
F1:@0x1001f=ff, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to read byte
F1:@0x1001f=ff, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to write byte
F1:@0x1001f=01, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to read byte
F1:@0x1001f=ff, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to read byte
F1:@0x1001f=ff, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to write byte
F1:@0x1001f=01, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to read byte
F1:@0x1001f=ff, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to read byte
F1:@0x1001f=ff, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to write byte
F1:@0x1001f=01, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to read byte
F1:@0x1001f=ff, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to read byte
F1:@0x1001f=ff, Err: -110
brcmfmac: brcmf_sdbrcm_bus_rxctl: resumed on timeout
brcmfmac: brcmf_fil_cmd_data: Failed err=-110
brcmfmac: brcmf_set_mpc: fail to set mpc
brcmfmac: brcmf_escan_timeout: timer expired
brcmfmac: brcmf_sdioh_request_byte: Failed to write byte
F1:@0x1001f=01, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to write byte
F1:@0x1001f=01, Err: -110
brcmfmac: brcmf_sdioh_request_byte: Failed to write byte
F1:@0x1001f=01, Err: -110
brcmfmac: brcmf_sdbrcm_bus_rxctl: resumed on timeout
brcmfmac: brcmf_fil_cmd_data: Failed err=-110
brcmfmac: brcmf_set_mpc: fail to set mpc
............

The following detailed Log for drver probe, if you also need the full
log after run rfkill please let me know.

[   36.555580] brcmfmac: brcmf_sdbrcm_probe Enter
[   36.564293] brcmfmac: F1 signature read @0x18000000=0x16214335
[   36.564425] brcmfmac: brcmf_sdio_chip_attach Enter
[   36.564973] brcmfmac: brcmf_sdio_chip_recognition chipid=0x4335 chiprev=1
[   36.565163] brcmfmac: brcmf_sdio_chip_buscoresetup ccrev=43,
pmurev=18, buscore rev/type=15/0x829
[   36.566410] brcmfmac: brcmf_sdioh_request_word: Failed to read
word, Err: 0xffffffac
[   36.594407] brcmfmac: brcmf_sdioh_request_word: Failed to read
word, Err: 0xffffffac
[   36.621092] brcmfmac: brcmf_sdioh_request_word: Failed to read
word, Err: 0xffffffac
[   36.627684] brcmfmac: brcmf_sdio_regrw_helper: failed with -84
[   36.638085] brcmfmac: brcmf_sdbrcm_kso_init Enter
[   36.638167] brcmfmac: brcmf_sdio_chip_drivestrengthinit: No SDIO
Drive strength init done for chip 4335 rev 1 pmurev 18
[   36.648862] brcmfmac: brcmf_attach Enter
[   36.648947] brcmfmac: brcmf_sdbrcm_probe_malloc Enter
[   36.648965] brcmfmac: brcmf_sdbrcm_probe_init Enter
[   36.649174] brcmfmac: brcmf_sdbrcm_probe completed!!
[   36.649190] brcmfmac: brcmf_bus_start
[   36.649201] brcmfmac: brcmf_sdbrcm_bus_init Enter
[   36.650399] brcmfmac: brcmf_sdbrcm_download_code_file Enter
[   37.065998] brcmfmac: brcmf_sdio_chip_verifynvram Compare NVRAM dl
& ul; size=2216
[   37.067114] brcmfmac: brcmf_sdio_chip_writenvram RAM size: 786432
[   37.067137] brcmfmac: brcmf_sdio_chip_writenvram nvram is placed at
2357076, size 2216, token=0xfdd5022a
[   37.226519] brcmfmac: brcmf_sdbrcm_bus_init enable 0x06, ready 0x06
[   37.226674] brcmfmac: brcmf_sdbrcm_sr_capable Enter
[   37.226845] brcmfmac: brcmf_sdbrcm_sr_init Enter
[   37.227026] brcmfmac: brcmf_sdbrcm_sr_init SR enabled
[   37.227368] brcmfmac: brcmf_add_if Enter, idx=0, ifidx=0
[   37.227383] brcmfmac: brcmf_add_if allocate netdev interface
[   37.227408] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.227419] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.227548] brcmfmac: brcmf_add_if  ==== pid:11, if:wlan%d
(00:00:00:00:00:00) created ===
[   37.227567] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.227675] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.227688] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.230910] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.231124] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.231139] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.231337] brcmfmac: brcmf_sdbrcm_dpc Dongle reports CHIPACTIVE
[   37.231350] brcmfmac: brcmf_sdio_readframes Enter
[   37.231550] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.231870] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.231883] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.232082] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.232097] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.232224] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.246569] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.246587] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.246807] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.247031] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.247047] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.247059] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.250219] brcmfmac: brcmf_sdio_readframes Enter
[   37.250346] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.250549] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.250606] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.250730] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.266635] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.266651] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.266869] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.267097] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.267112] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.267123] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.270283] brcmfmac: brcmf_sdio_readframes Enter
[   37.270410] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.270709] brcmfmac: brcmf_c_preinit_dcmds: Firmware version =
wl0: Mar 24 2013 20:36:01 version 6.30.171.24.20 (B0 Station/P2P)
[   37.282106] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.282125] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.282281] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.296548] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.296564] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.296775] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.297000] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.297015] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.297025] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.300190] brcmfmac: brcmf_sdio_readframes Enter
[   37.300317] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.300523] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.300538] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.300657] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.316546] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.316562] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.316767] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.316989] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.317005] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.317015] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.320178] brcmfmac: brcmf_sdio_readframes Enter
[   37.320302] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.320506] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.320522] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.320644] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.336555] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.336571] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.336782] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.337005] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.337020] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.337031] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.340209] brcmfmac: brcmf_sdio_readframes Enter
[   37.340334] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.340542] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.340558] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.340680] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.356551] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.356568] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.356781] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.357012] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.357027] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.357037] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.360196] brcmfmac: brcmf_sdio_readframes Enter
[   37.360323] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.360524] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.360539] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.360659] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.376550] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.376567] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.376772] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.376995] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.377012] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.377021] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.380178] brcmfmac: brcmf_sdio_readframes Enter
[   37.380306] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.380506] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.380522] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.380645] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.396550] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.396568] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.396774] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.397002] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.397018] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.397029] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.400187] brcmfmac: brcmf_sdio_readframes Enter
[   37.400316] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.400533] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.400549] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.400674] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.416549] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.416566] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.416774] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.416998] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.417015] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.417026] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.420187] brcmfmac: brcmf_sdio_readframes Enter
[   37.420310] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.420617] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.420633] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.420753] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.436550] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.436566] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.436777] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.437003] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.437018] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.437028] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.440189] brcmfmac: brcmf_sdio_readframes Enter
[   37.440311] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.440518] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.440533] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.440654] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.456547] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.456563] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.456773] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.456999] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.457015] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.457025] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.460185] brcmfmac: brcmf_sdio_readframes Enter
[   37.460312] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.460518] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.460534] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.460651] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.466742] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.466953] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.466967] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.466981] brcmfmac: brcmf_sdio_readframes Enter
[   37.467102] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.469141] brcmfmac: brcmf_fweh_register event handler registered
for FIFO_CREDIT_MAP
[   37.469161] brcmfmac: brcmf_fweh_register event handler registered
for BCMC_CREDIT_SUPPORT
[   37.469178] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.469193] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.469334] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.486546] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.486563] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.486778] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.487004] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.487020] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.487031] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.490190] brcmfmac: brcmf_sdio_readframes Enter
[   37.490316] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.490525] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.490542] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.490661] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.506550] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.506568] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.506781] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.507008] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.507024] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.507035] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.510194] brcmfmac: brcmf_sdio_readframes Enter
[   37.510318] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.510507] brcmfmac: brcmf_fil_cmd_data: Failed err=-23
[   37.514539] brcmfmac: brcmf_fws_init enabling AMPDU host-reorder failed
[   37.514573] brcmfmac: brcmf_fws_macdesc_init enter: desc bec567f0
ea=  (null), ifidx=0
[   37.514626] brcmfmac: brcmf_fws_init enabled bdcv2 tlv signaling [1]
[   37.514644] brcmfmac: brcmf_fws_macdesc_init enter: desc bec55030
ea=00:90:4c:c5:12:38, ifidx=0
[   37.514658] brcmfmac: brcmf_fws_add_interface added MACIF:0
[   37.514796] brcmfmac: brcmf_setup_wiphy Registering custom regulatory
[   37.522518] brcmfmac: brcmf_alloc_vif allocating virtual interface
(size=2332)
[   37.522550] brcmfmac: brcmf_fweh_register event handler registered for LINK
[   37.522563] brcmfmac: brcmf_fweh_register event handler registered
for DEAUTH_IND
[   37.522574] brcmfmac: brcmf_fweh_register event handler registered for DEAUTH
[   37.522584] brcmfmac: brcmf_fweh_register event handler registered
for DISASSOC_IND
[   37.522593] brcmfmac: brcmf_fweh_register event handler registered
for ASSOC_IND
[   37.522603] brcmfmac: brcmf_fweh_register event handler registered
for REASSOC_IND
[   37.522613] brcmfmac: brcmf_fweh_register event handler registered for ROAM
[   37.522622] brcmfmac: brcmf_fweh_register event handler registered
for MIC_ERROR
[   37.522633] brcmfmac: brcmf_fweh_register event handler registered
for SET_SSID
[   37.522644] brcmfmac: brcmf_fweh_register event handler registered
for PFN_NET_FOUND
[   37.522655] brcmfmac: brcmf_fweh_register event handler registered for IF
[   37.522667] brcmfmac: brcmf_fweh_register event handler registered
for P2P_PROBEREQ_MSG
[   37.522677] brcmfmac: brcmf_fweh_register event handler registered
for P2P_DISC_LISTEN_COMPLETE
[   37.522688] brcmfmac: brcmf_fweh_register event handler registered
for ACTION_FRAME_RX
[   37.522699] brcmfmac: brcmf_fweh_register event handler registered
for ACTION_FRAME_COMPLETE
[   37.522710] brcmfmac: brcmf_fweh_register event handler registered
for ACTION_FRAME_OFF_CHAN_COMPLETE
[   37.522720] brcmfmac: brcmf_fweh_register event handler registered
for ESCAN_RESULT
[   37.522732] brcmfmac: brcmf_btcoex_attach enter
[   37.523262] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.523284] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.523429] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.536624] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.536644] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.536879] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.537111] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.537126] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.537137] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.540301] brcmfmac: brcmf_sdio_readframes Enter
[   37.540434] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.540656] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.540672] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.540796] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.556688] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.556706] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.556927] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.557152] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.557167] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.557178] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.560348] brcmfmac: brcmf_sdio_readframes Enter
[   37.560476] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.560705] brcmfmac: brcmf_sdbrcm_bus_txctl Enter
[   37.560721] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.560846] brcmfmac: brcmf_sdbrcm_bus_rxctl Enter
[   37.576550] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.576567] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.576777] brcmfmac: brcmf_sdbrcm_isr Enter
[   37.577001] brcmfmac: brcmf_sdbrcm_dpc Enter
[   37.577016] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.577026] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   37.580188] brcmfmac: brcmf_sdio_readframes Enter
[   37.580311] brcmfmac: brcmf_sdbrcm_read_control Enter
[   37.580518] brcmfmac: brcmf_net_attach Enter, idx=0 mac=00:90:4c:c5:12:38
[   37.581610] brcmfmac: brcmf_netdev_get_stats Enter, idx=0
[   37.581704] brcmfmac: brcmf_net_attach wlan0: Broadcom Dongle Host Driver
[   37.596623] brcmfmac: brcmf_sdbrcm_bus_sleep Enter
[   37.596641] brcmfmac: brcmf_sdbrcm_kso_control Enter
[   45.955942] brcmfmac: brcmf_netdev_get_stats Enter, idx=0

^ permalink raw reply

* Re: [PATCH] wcn36xx: enable the beaconing in mesh mode
From: Thomas Pedersen @ 2013-11-01  4:14 UTC (permalink / raw)
  To: Eugene Krasnikov
  Cc: Chun-Yeow Yeoh, linux-wireless, John Linville, wcn36xx,
	Chun-Yeow Yeoh
In-Reply-To: <CAFSJ42b4Og8LttAzTkzH924W=0yKqu35khvr4vB6bzLnbLHjcA@mail.gmail.com>

On Thu, Oct 31, 2013 at 1:30 PM, Eugene Krasnikov <k.eugene.e@gmail.com> wrote:
>> +               msg_body.tim_ie_offset = 256;
>
> Does not look like correct value. Why 256?

Also mesh beacon does need the TIM< only it must be generated by
mac80211. How do you tell the firmware to ignore the beacon TIM?

--
Thomas

^ permalink raw reply

* Re: [PATCH NEXT V2] rtlwifi: Fix endian error in extracting packet type
From: Joe Perches @ 2013-11-01  2:04 UTC (permalink / raw)
  To: Ben Hutchings
  Cc: Larry Finger, linville, linux-wireless, Mark Cave-Ayland, netdev,
	Stable
In-Reply-To: <1383270515.2769.15.camel@joe-AO722>

On Thu, 2013-10-31 at 18:48 -0700, Joe Perches wrote:
> Or maybe something like this?
[]
> diff --git a/drivers/net/wireless/rtlwifi/base.c b/drivers/net/wireless/rtlwifi/base.c
[]
> +		src = be16_to_cpu(udp->source) >> 8;
> +		dst = be16_to_cpu(udp->dest) >> 8;

Of course this doesn't need the >> 8;


^ permalink raw reply

* Re: [PATCH NEXT V2] rtlwifi: Fix endian error in extracting packet type
From: Joe Perches @ 2013-11-01  1:48 UTC (permalink / raw)
  To: Ben Hutchings
  Cc: Larry Finger, linville, linux-wireless, Mark Cave-Ayland, netdev,
	Stable
In-Reply-To: <1383267769.1583.8.camel@bwh-desktop.uk.level5networks.com>

On Fri, 2013-11-01 at 01:02 +0000, Ben Hutchings wrote:
> On Thu, 2013-10-31 at 19:43 -0500, Larry Finger wrote:
> > From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> > 
> > All of the rtlwifi drivers have an error in the routine that tests if
> > the data is "special". If it is, the subsequant transmission will be
> > at the lowest rate to enhance reliability. The 16-bit quantity is
> > big-endian, but was being extracted in native CPU mode. One of the
> > effects of this bug is to inhibit association under some conditions
> > as the TX rate is too high.
> > 
> > A statement that would have made the code correct had been changed to
> > a comment. Rather than just reinstating that code, the fix here passes
> > sparse tests. A side effect of fixing this problem would have been to force
> > all IPv6 frames to run at the lowest rate. The test for that frame type
> > is removed.
> > 
> > The original code only checked the lower-order byte of UDP ports for BOOTP
> > protocol. That is extended to the full 16-bit source and destination ports.
> > 
> > One of the local headers contained duplicates of some of the ETH_P_XXX
> > definitions. These are deleted.
> > 
> > Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
> > Cc: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> > Cc: Stable <stable@vger.kernel.org> [2.6.38+]
> > ---
> > 
> > V2 - Addresses comments by Ben Hutchings and Bjorn Mork.
> > 
> >  drivers/net/wireless/rtlwifi/base.c |   15 ++++++---------
> >  drivers/net/wireless/rtlwifi/wifi.h |    6 +-----
> >  2 files changed, 7 insertions(+), 14 deletions(-)
> > Index: wireless-testing-save/drivers/net/wireless/rtlwifi/base.c
> > ===================================================================
> > --- wireless-testing-save.orig/drivers/net/wireless/rtlwifi/base.c
> > +++ wireless-testing-save/drivers/net/wireless/rtlwifi/base.c
> > @@ -1077,17 +1077,17 @@ u8 rtl_is_special_data(struct ieee80211_
> >  
> >  	ip = (struct iphdr *)((u8 *) skb->data + mac_hdr_len +
> >  			      SNAP_SIZE + PROTOC_TYPE_SIZE);
> > -	ether_type = *(u16 *) ((u8 *) skb->data + mac_hdr_len + SNAP_SIZE);
> > -	/*	ether_type = ntohs(ether_type); */
> > +	ether_type = be16_to_cpu(*(__be16 *)((u8 *)skb->data + mac_hdr_len +
> > +					     SNAP_SIZE));
> >  
> >  	if (ETH_P_IP == ether_type) {
> >  		if (IPPROTO_UDP == ip->protocol) {
> >  			struct udphdr *udp = (struct udphdr *)((u8 *) ip +
> >  							       (ip->ihl << 2));
> > -			if (((((u8 *) udp)[1] == 68) &&
> > -			     (((u8 *) udp)[3] == 67)) ||
> > -			    ((((u8 *) udp)[1] == 67) &&
> > -			     (((u8 *) udp)[3] == 68))) {
> > +			if (((((u16 *) udp)[0] == 68) &&
> > +			     (((u16 *) udp)[2] == 67)) ||
> > +			    ((((u16 *) udp)[0] == 67) &&
> > +			     (((u16 *) udp)[2] == 68))) {
> [...]
> 
> Now you're missing byte-swapping here, and using the wrong offset for
> the dest port (4 bytes rather than 2).
> 
> If you really think this is necessary then use something like:
> 			if ((udp->source == htons(68) &&
> 			     udp->dest == htons(67)) ||
> 			     ...

Or maybe something like this?
---
 drivers/net/wireless/rtlwifi/base.c | 91 +++++++++++++++++--------------------
 1 file changed, 41 insertions(+), 50 deletions(-)

diff --git a/drivers/net/wireless/rtlwifi/base.c b/drivers/net/wireless/rtlwifi/base.c
index 9a78e3d..7e9df65 100644
--- a/drivers/net/wireless/rtlwifi/base.c
+++ b/drivers/net/wireless/rtlwifi/base.c
@@ -37,6 +37,7 @@
 
 #include <linux/ip.h>
 #include <linux/module.h>
+#include <linux/udp.h>
 
 /*
  *NOTICE!!!: This file will be very big, we should
@@ -1074,64 +1075,54 @@ u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx)
 	if (!ieee80211_is_data(fc))
 		return false;
 
+	ip = (const struct iphdr *)(skb->data + mac_hdr_len +
+				    SNAP_SIZE + PROTOC_TYPE_SIZE);
+	ether_type = be16_to_cpup((__be16 *)
+				  (skb->data + mac_hdr_len + SNAP_SIZE));
 
-	ip = (struct iphdr *)((u8 *) skb->data + mac_hdr_len +
-			      SNAP_SIZE + PROTOC_TYPE_SIZE);
-	ether_type = *(u16 *) ((u8 *) skb->data + mac_hdr_len + SNAP_SIZE);
-	/*	ether_type = ntohs(ether_type); */
-
-	if (ETH_P_IP == ether_type) {
-		if (IPPROTO_UDP == ip->protocol) {
-			struct udphdr *udp = (struct udphdr *)((u8 *) ip +
-							       (ip->ihl << 2));
-			if (((((u8 *) udp)[1] == 68) &&
-			     (((u8 *) udp)[3] == 67)) ||
-			    ((((u8 *) udp)[1] == 67) &&
-			     (((u8 *) udp)[3] == 68))) {
-				/*
-				 * 68 : UDP BOOTP client
-				 * 67 : UDP BOOTP server
-				 */
-				RT_TRACE(rtlpriv, (COMP_SEND | COMP_RECV),
-					 DBG_DMESG, "dhcp %s !!\n",
-					 is_tx ? "Tx" : "Rx");
-
-				if (is_tx) {
-					rtlpriv->enter_ps = false;
-					schedule_work(&rtlpriv->
-						      works.lps_change_work);
-					ppsc->last_delaylps_stamp_jiffies =
-					    jiffies;
-				}
+	switch (ether_type) {
+	case ETH_P_IP: {
+		struct udphdr *udp;
+		u16 src;
+		u16 dst;
 
-				return true;
-			}
-		}
-	} else if (ETH_P_ARP == ether_type) {
-		if (is_tx) {
-			rtlpriv->enter_ps = false;
-			schedule_work(&rtlpriv->works.lps_change_work);
-			ppsc->last_delaylps_stamp_jiffies = jiffies;
-		}
+		if (ip->protocol != IPPROTO_UDP)
+			return false;
 
-		return true;
-	} else if (ETH_P_PAE == ether_type) {
-		RT_TRACE(rtlpriv, (COMP_SEND | COMP_RECV), DBG_DMESG,
-			 "802.1X %s EAPOL pkt!!\n", is_tx ? "Tx" : "Rx");
+		udp = (struct udphdr *)((u8 *)ip + (ip->ihl << 2));
+		src = be16_to_cpu(udp->source) >> 8;
+		dst = be16_to_cpu(udp->dest) >> 8;
 
-		if (is_tx) {
-			rtlpriv->enter_ps = false;
-			schedule_work(&rtlpriv->works.lps_change_work);
-			ppsc->last_delaylps_stamp_jiffies = jiffies;
-		}
+		/*
+		 * 68 : UDP BOOTP client
+		 * 67 : UDP BOOTP server
+		 */
+		if (!((src == 68 && dst == 67) || (src == 67 && dst == 68)))
+			return false;
 
+		RT_TRACE(rtlpriv, (COMP_SEND | COMP_RECV), DBG_DMESG,
+			 "dhcp %s !!\n", is_tx ? "Tx" : "Rx");
+		break;
+	}
+	case ETH_P_ARP:
+		break;
+	case ETH_P_PAE:
+		RT_TRACE(rtlpriv, (COMP_SEND | COMP_RECV), DBG_DMESG,
+			 "802.1X %s EAPOL pkt!!\n", is_tx ? "Tx" : "Rx");
+		break;
+	case ETH_P_IPV6:
 		return true;
-	} else if (ETH_P_IPV6 == ether_type) {
-		/* IPv6 */
-		return true;
+	default:
+		return false;
 	}
 
-	return false;
+	if (is_tx) {
+		rtlpriv->enter_ps = false;
+		schedule_work(&rtlpriv->works.lps_change_work);
+		ppsc->last_delaylps_stamp_jiffies = jiffies;
+	}
+
+	return true;
 }
 EXPORT_SYMBOL_GPL(rtl_is_special_data);
 



^ permalink raw reply related

* Re: [PATCH NEXT V2] rtlwifi: Fix endian error in extracting packet type
From: Ben Hutchings @ 2013-11-01  1:02 UTC (permalink / raw)
  To: Larry Finger; +Cc: linville, linux-wireless, Mark Cave-Ayland, netdev, Stable
In-Reply-To: <1383266638-4813-1-git-send-email-Larry.Finger@lwfinger.net>

On Thu, 2013-10-31 at 19:43 -0500, Larry Finger wrote:
> From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> 
> All of the rtlwifi drivers have an error in the routine that tests if
> the data is "special". If it is, the subsequant transmission will be
> at the lowest rate to enhance reliability. The 16-bit quantity is
> big-endian, but was being extracted in native CPU mode. One of the
> effects of this bug is to inhibit association under some conditions
> as the TX rate is too high.
> 
> A statement that would have made the code correct had been changed to
> a comment. Rather than just reinstating that code, the fix here passes
> sparse tests. A side effect of fixing this problem would have been to force
> all IPv6 frames to run at the lowest rate. The test for that frame type
> is removed.
> 
> The original code only checked the lower-order byte of UDP ports for BOOTP
> protocol. That is extended to the full 16-bit source and destination ports.
> 
> One of the local headers contained duplicates of some of the ETH_P_XXX
> definitions. These are deleted.
> 
> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
> Cc: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> Cc: Stable <stable@vger.kernel.org> [2.6.38+]
> ---
> 
> V2 - Addresses comments by Ben Hutchings and Bjorn Mork.
> 
>  drivers/net/wireless/rtlwifi/base.c |   15 ++++++---------
>  drivers/net/wireless/rtlwifi/wifi.h |    6 +-----
>  2 files changed, 7 insertions(+), 14 deletions(-)
> Index: wireless-testing-save/drivers/net/wireless/rtlwifi/base.c
> ===================================================================
> --- wireless-testing-save.orig/drivers/net/wireless/rtlwifi/base.c
> +++ wireless-testing-save/drivers/net/wireless/rtlwifi/base.c
> @@ -1077,17 +1077,17 @@ u8 rtl_is_special_data(struct ieee80211_
>  
>  	ip = (struct iphdr *)((u8 *) skb->data + mac_hdr_len +
>  			      SNAP_SIZE + PROTOC_TYPE_SIZE);
> -	ether_type = *(u16 *) ((u8 *) skb->data + mac_hdr_len + SNAP_SIZE);
> -	/*	ether_type = ntohs(ether_type); */
> +	ether_type = be16_to_cpu(*(__be16 *)((u8 *)skb->data + mac_hdr_len +
> +					     SNAP_SIZE));
>  
>  	if (ETH_P_IP == ether_type) {
>  		if (IPPROTO_UDP == ip->protocol) {
>  			struct udphdr *udp = (struct udphdr *)((u8 *) ip +
>  							       (ip->ihl << 2));
> -			if (((((u8 *) udp)[1] == 68) &&
> -			     (((u8 *) udp)[3] == 67)) ||
> -			    ((((u8 *) udp)[1] == 67) &&
> -			     (((u8 *) udp)[3] == 68))) {
> +			if (((((u16 *) udp)[0] == 68) &&
> +			     (((u16 *) udp)[2] == 67)) ||
> +			    ((((u16 *) udp)[0] == 67) &&
> +			     (((u16 *) udp)[2] == 68))) {
[...]

Now you're missing byte-swapping here, and using the wrong offset for
the dest port (4 bytes rather than 2).

If you really think this is necessary then use something like:
			if ((udp->source == htons(68) &&
			     udp->dest == htons(67)) ||
			     ...

Ben.

-- 
Ben Hutchings, Staff Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.


^ permalink raw reply

* [PATCH NEXT V2] rtlwifi: Fix endian error in extracting packet type
From: Larry Finger @ 2013-11-01  0:43 UTC (permalink / raw)
  To: linville; +Cc: linux-wireless, Mark Cave-Ayland, netdev, Larry Finger, Stable

From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>

All of the rtlwifi drivers have an error in the routine that tests if
the data is "special". If it is, the subsequant transmission will be
at the lowest rate to enhance reliability. The 16-bit quantity is
big-endian, but was being extracted in native CPU mode. One of the
effects of this bug is to inhibit association under some conditions
as the TX rate is too high.

A statement that would have made the code correct had been changed to
a comment. Rather than just reinstating that code, the fix here passes
sparse tests. A side effect of fixing this problem would have been to force
all IPv6 frames to run at the lowest rate. The test for that frame type
is removed.

The original code only checked the lower-order byte of UDP ports for BOOTP
protocol. That is extended to the full 16-bit source and destination ports.

One of the local headers contained duplicates of some of the ETH_P_XXX
definitions. These are deleted.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Cc: Stable <stable@vger.kernel.org> [2.6.38+]
---

V2 - Addresses comments by Ben Hutchings and Bjorn Mork.

 drivers/net/wireless/rtlwifi/base.c |   15 ++++++---------
 drivers/net/wireless/rtlwifi/wifi.h |    6 +-----
 2 files changed, 7 insertions(+), 14 deletions(-)
Index: wireless-testing-save/drivers/net/wireless/rtlwifi/base.c
===================================================================
--- wireless-testing-save.orig/drivers/net/wireless/rtlwifi/base.c
+++ wireless-testing-save/drivers/net/wireless/rtlwifi/base.c
@@ -1077,17 +1077,17 @@ u8 rtl_is_special_data(struct ieee80211_
 
 	ip = (struct iphdr *)((u8 *) skb->data + mac_hdr_len +
 			      SNAP_SIZE + PROTOC_TYPE_SIZE);
-	ether_type = *(u16 *) ((u8 *) skb->data + mac_hdr_len + SNAP_SIZE);
-	/*	ether_type = ntohs(ether_type); */
+	ether_type = be16_to_cpu(*(__be16 *)((u8 *)skb->data + mac_hdr_len +
+					     SNAP_SIZE));
 
 	if (ETH_P_IP == ether_type) {
 		if (IPPROTO_UDP == ip->protocol) {
 			struct udphdr *udp = (struct udphdr *)((u8 *) ip +
 							       (ip->ihl << 2));
-			if (((((u8 *) udp)[1] == 68) &&
-			     (((u8 *) udp)[3] == 67)) ||
-			    ((((u8 *) udp)[1] == 67) &&
-			     (((u8 *) udp)[3] == 68))) {
+			if (((((u16 *) udp)[0] == 68) &&
+			     (((u16 *) udp)[2] == 67)) ||
+			    ((((u16 *) udp)[0] == 67) &&
+			     (((u16 *) udp)[2] == 68))) {
 				/*
 				 * 68 : UDP BOOTP client
 				 * 67 : UDP BOOTP server
@@ -1126,9 +1126,6 @@ u8 rtl_is_special_data(struct ieee80211_
 		}
 
 		return true;
-	} else if (ETH_P_IPV6 == ether_type) {
-		/* IPv6 */
-		return true;
 	}
 
 	return false;
Index: wireless-testing-save/drivers/net/wireless/rtlwifi/wifi.h
===================================================================
--- wireless-testing-save.orig/drivers/net/wireless/rtlwifi/wifi.h
+++ wireless-testing-save/drivers/net/wireless/rtlwifi/wifi.h
@@ -77,11 +77,7 @@
 #define RTL_SLOT_TIME_9				9
 #define RTL_SLOT_TIME_20			20
 
-/*related with tcp/ip. */
-/*if_ehther.h*/
-#define ETH_P_PAE		0x888E	/*Port Access Entity (IEEE 802.1X) */
-#define ETH_P_IP		0x0800	/*Internet Protocol packet */
-#define ETH_P_ARP		0x0806	/*Address Resolution packet */
+/*related to tcp/ip. */
 #define SNAP_SIZE		6
 #define PROTOC_TYPE_SIZE	2
 

^ permalink raw reply

* Re: [ANN] wireless-regdb: master-2013-10-11
From: Thomas Bächler @ 2013-10-31 23:32 UTC (permalink / raw)
  To: John W. Linville, linux-wireless
In-Reply-To: <20131011202459.GF14329@tuxdriver.com>

[-- Attachment #1: Type: text/plain, Size: 572 bytes --]

Am 11.10.2013 22:24, schrieb John W. Linville:
> (Cutting the short log, since the original version got classified as
> SPAM on vger.kernel.org...??)
> 
> A new release of wireless-regdb (master-2013-10-11) is available at:
> 
> http://www.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2013.10.11.tar.gz
> 
> Here is the short log of the changes included since the 2013-02-13
> release:
> 
> SNIP -- you'll have to check it yourself:

We can't use the database file:

$ regdbdump regulatory.bin
Database signature verification failed.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 901 bytes --]

^ permalink raw reply

* Re: [PATCH] wcn36xx: enable the beaconing in mesh mode
From: Eugene Krasnikov @ 2013-10-31 20:30 UTC (permalink / raw)
  To: Chun-Yeow Yeoh; +Cc: linux-wireless, John Linville, wcn36xx, Chun-Yeow Yeoh
In-Reply-To: <1383199449-18310-1-git-send-email-yeohchunyeow@gmail.com>

> +               msg_body.tim_ie_offset = 256;

Does not look like correct value. Why 256?

^ permalink raw reply

* Re: [PATCH 5/7] wireless-regdb: optimize two of ES's rules
From: Xose Vazquez Perez @ 2013-10-31 20:21 UTC (permalink / raw)
  To: Luis R. Rodriguez
  Cc: wireless-regdb@lists.infradead.org, linux-wireless,
	John W. Linville
In-Reply-To: <CAB=NE6X7LJnCBVQ5bXiXs-F8MgNoRDGzzdubkVAVmoyd3EaQZw@mail.gmail.com>

On 10/31/2013 09:00 PM, Luis R. Rodriguez wrote:

> 2013/10/31 Xose Vazquez Perez <xose.vazquez@gmail.com>:

>> This patch is incompatible with my ("pending")patch:
>> http://lists.infradead.org/pipermail/wireless-regdb/2013-February/000136.html

> I'd like Michael to review this one, in the meantime I'll drop this
> one from my patch set. I have a new set of patches I'll post soon.

Time ago I sent the CEPT/ECC regulation:
http://lists.infradead.org/pipermail/wireless-regdb/2012-June/000058.html

===recortamorena===
* ECC/DEC/(04)08 Harmonised use of 5 GHz for the implementation
  of WAS/RLANs: http://www.erodocdb.dk/Docs/doc98/official/pdf/ECCDEC0408.PDF

---cut---
[...]
DECIDES

1. that this Decision designates the frequency bands 5.150-5.350 MHz
and 5.470–5.725 MHz for the implementation of Wireless Access
Systems including Radio Local Area Networks (WAS/RLANs) and the
use of equipment complying with the harmonised standard EN 301 893,
which may also be demonstrated by compliance with equivalent
technical specifications (in the sense of Article 3(2) of the
R&TTE Directive);

2. that in the frequency band 5.150-5.350 MHz, WAS/RLANs stations
shall be restricted to indoor use with a maximum mean e.i.r.p.1 of
200 mW and a maximum mean e.i.r.p. density of 10 mW/MHz in any 1MHz
band;

3. that in the frequency band 5.470-5.725 MHz, the indoor and
outdoor use of WAS/RLANs stations shall be restricted to a maximum
mean e.i.r.p.1 of 1 W and a maximum mean e.i.r.p. density of 50mW/MHz
in any 1 MHz band;

4. that, WAS/RLANs operating in the bands 5.250-5.350 MHz and
5.470-5.725 MHz shall either employ transmitter power control, which
provides, on average, a mitigation factor of at least 3 dB on the
maximum permitted output power of the systems; or, if transmitter
power control is not in use, then the maximum permitted mean
e.i.r.p.1 and the corresponding mean e.i.r.p. density limits in
decides 2 and 3 shall be reduced by 3 dB;

5. that, WAS/RLANs operating in the bands 5.250-5.350 MHz and
5.470-5.725 MHz shall use dynamic frequency selection (DFS) as
described in Recommendation ITU-R M. 1652 to ensure compatible
operation with radiodetermination systems;

6. that, in addition to decides 5, the DFS mechanism shall ensure
that the probability of selecting a given channel will be the same
for all available channels. The intention is to provide, on
average, a near-uniform spread of the loading of the spectrum;

7. that this Decision replaces the previous ERC Decision (99)23;

8. that this Decision shall enter into force on 30 October 2009;

9. that CEPT administrations shall communicate the national
measures implementing this Decision to the ECC chairman and the
Office when the Decision is nationally implemented."
[...]
---end---



* Implementation by country:

http://www.erodocdb.dk/doks/implement_doc_adm.aspx?docid=2033
http://www.erodocdb.dk/doks/mapsi_implement.aspx?docid=2033


- Yes ... 38

- Yes Partly ... 2
Russian Federation
Georgia

- Under study ... 1
Albania

- No info ... 7
Andorra
Vatican City
Monaco
Moldova
San Marino
Azerbaijan
Belarus


All CEPT countries, except those listed above, and for 5GHz
bands, should be clones of the current DE configuration:

(5150 - 5250 @ 40), (N/A, 100 mW), NO-OUTDOOR
(5250 - 5350 @ 40), (N/A, 100 mW), NO-OUTDOOR, DFS
(5470 - 5725 @ 40), (N/A, 500 mW), DFS

-thanks-
===end===


I did cut&paste from DE to ES, but DE lowers the limit
in 5150-5250 to 100mW for "neighborhood reasons" [1].
Even when 200mW is completely legal in DE.

[1] http://marc.info/?l=linux-wireless&m=127429049514439

^ permalink raw reply

* Re: [PATCH 5/7] wireless-regdb: optimize two of ES's rules
From: Luis R. Rodriguez @ 2013-10-31 20:00 UTC (permalink / raw)
  To: Xose Vazquez Perez
  Cc: wireless-regdb@lists.infradead.org, linux-wireless,
	John W. Linville
In-Reply-To: <5272723B.4090006@gmail.com>

2013/10/31 Xose Vazquez Perez <xose.vazquez@gmail.com>:
> hi Luis,
>
> This patch is incompatible with my ("pending")patch:
> http://lists.infradead.org/pipermail/wireless-regdb/2013-February/000136.html
>
> thanks,

I'd like Michael to review this one, in the meantime I'll drop this
one from my patch set. I have a new set of patches I'll post soon.

 Luis

^ permalink raw reply

* Re: French regulatory domain change request
From: Xose Vazquez Perez @ 2013-10-31 18:33 UTC (permalink / raw)
  To: Jean-Pierre Tosoni, linux-wireless, wireless-regdb

hi Jean-Pierre,

> The current description for France in regdb.txt is :
> country FR: DFS-ETSI
> 	(2402 - 2482 @ 40), (N/A, 20)
> 	(5170 - 5250 @ 80), (N/A, 20)
> 	(5250 - 5330 @ 80), (N/A, 20), DFS
> 	(5490 - 5710 @ 80), (N/A, 27), DFS
> 	# 60 gHz band channels 1-4, ref: Etsi En 302 567
> 	(57240 - 65880 @ 2160), (N/A, 40), NO-OUTDOOR
> 
> Following this paper http://www.arcep.fr/uploads/tx_gsavis/08-0568.pdf 
> " Décision n° 2008-0568" issued by the ARCEP (French Electronic
> communications and Postoffice Regulation Authority) in the year 2008,
> 1) the frequencies 5150-5350 MHz are limited to INDOOR use.
>  (see page 5: "Dans la bande de fréquences*5150-5350* MHz, les WAS/RLAN sont
> limités à une *utilisation intérieure* ...")
> 2) the limits of the frequency band is ~20MHz greater for all frequency
> values (5150 vs. 5170, 5350 vs. 5330, 5470 vs. 5490, 5725 vs. 5710)

> So IMHO the description for France should read: 
> country FR: DFS-ETSI
> 	(2402 - 2482 @ 40), (N/A, 20)
> 	# ref: ARCEP 08-0568
> http://www.arcep.fr/uploads/tx_gsavis/08-0568.pdf
> 	(5150 - 5250 @ 80), (N/A, 20), NO-OUTDOOR
> 	(5250 - 5350 @ 80), (N/A, 20), NO-OUTDOOR, DFS
> 	(5470 - 5725 @ 80), (N/A, 27), DFS
> 	# 60 gHz band channels 1-4, ref: Etsi En 302 567
> 	(57240 - 65880 @ 2160), (N/A, 40), NO-OUTDOOR
> By the way, this looks very like the description for Germany (DE)

You are right, but a patch is missing ;-)

BTW. It should be fixed for all, or nearly all, ETSI countries.

^ permalink raw reply

* [PATCH] NFC: mei_phy: using kfree_skb() instead of kfree()
From: Salil Kapur @ 2013-10-31 17:47 UTC (permalink / raw)
  To: lauro.venancio
  Cc: aloisio.almeida, sameo, linux-wireless, linux-nfc, linux-kernel,
	Salil Kapur

using kfree_skb() instead of kfree() for struct sk_buff

Signed-off-by: Salil Kapur <salilkapur93@gmail.com>
---
 drivers/nfc/mei_phy.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/nfc/mei_phy.c b/drivers/nfc/mei_phy.c
index 606bf55..bc30081 100644
--- a/drivers/nfc/mei_phy.c
+++ b/drivers/nfc/mei_phy.c
@@ -127,7 +127,7 @@ void nfc_mei_event_cb(struct mei_cl_device *device, u32 events, void *context)
 
 		reply_size = mei_cl_recv(device, skb->data, MEI_NFC_MAX_READ);
 		if (reply_size < MEI_NFC_HEADER_SIZE) {
-			kfree(skb);
+			kfree_skb(skb);
 			return;
 		}
 
-- 
1.8.1.2


^ permalink raw reply related

* Re: [PATCH] cfg80211: Introduce critical protocol indication for p2p connection.
From: Arend van Spriel @ 2013-10-31 17:42 UTC (permalink / raw)
  To: Undekari, Sunil Dutt
  Cc: Johannes Berg, linux-wireless@vger.kernel.org, j@w1.fi
In-Reply-To: <26F3B0343EE4744AA14EEEF9E1E534511F7A6606@aphydexd01a>

On 10/31/13 16:54, Undekari, Sunil Dutt wrote:
>> Just do it in the supplicant - that has full control over what's going on with a given device.
>> Trying to have the kernel manage multiple things that may or may not be exclusive and are all done in userspace is going to be a futile exercise.
> Please note that the scans that are mentioned by me in this context are not triggered by the supplicant, rather the host driver would initiate them.

So how would the scenario look like. The host driver will get involved 
in setting up the P2P connection so that knowledge is already available 
to defer the scans or am I missing something.

Regards,
Arend

> The driver / firmware would do such scans for a better roam performance.
> I would say, some handshake between the supplicant and the driver would be needed for a better understanding on the operations.
> Please have your say.
> Regards,
> Sunil
>
> -----Original Message-----
> From: Johannes Berg [mailto:johannes@sipsolutions.net]
> Sent: Thursday, October 31, 2013 8:55 PM
> To: Undekari, Sunil Dutt
> Cc: linux-wireless@vger.kernel.org; j@w1.fi
> Subject: Re: [PATCH] cfg80211: Introduce critical protocol indication for p2p connection.
>
> On Thu, 2013-10-31 at 15:22 +0000, Undekari, Sunil Dutt wrote:
>>> That's not what the critical protocol stuff was designed for, so no.
>> I would consider the P2P connection phase (P2P+WPS+WPA) to be critical
>> and any off channel operations (scan) triggered by the host driver
>> would result in the delayed / failed P2P connection attempt.
>> I suppose there should be an indication to the host driver w.r.t p2p
>> connection attempt so that any off load operations on any other
>> interface sharing the same radio would be avoided by the driver.
>> Since there is already an existing interface through the critical
>> protocol indication, I thought of extending it to also include a P2P
>> protocol/connection. This new proto id would be an indication to the
>> drivers to allow the scan on the current interface and avoid any scans
>> on another considering the fact that a p2p connection requires a scan.
>> Do you propose an alternative (a new interface?) to achieve the same?
>
> Just do it in the supplicant - that has full control over what's going on with a given device.
>
> Trying to have the kernel manage multiple things that may or may not be exclusive and are all done in userspace is going to be a futile exercise.
>
> johannes
>
> N�����r��y���b�X��ǧv�^�)޺{.n�+����{��*ޕ�,�{ay�\x1dʇڙ�,j\a��f���h���z�\x1e�w���\f���j:+v���w�j�m����\a����zZ+�����ݢj"��!�i



^ permalink raw reply

* Re: [PATCH 1/5] cfg80211/mac80211: DFS setup chandef for cac event
From: Johannes Berg @ 2013-10-31 16:47 UTC (permalink / raw)
  To: Janusz Dziedzic; +Cc: linux-wireless
In-Reply-To: <1382984824-3729-1-git-send-email-janusz.dziedzic@tieto.com>

I'd apply patches 1-3 but those don't seem very useful in themselves,
please resend the entire series when/if you address my comments.

johannes


^ permalink raw reply

* Re: [PATCH 5/5] cfg80211: fix dfs channel state after stopping AP
From: Johannes Berg @ 2013-10-31 16:46 UTC (permalink / raw)
  To: Janusz Dziedzic; +Cc: linux-wireless, Marek Puzyniak
In-Reply-To: <1382984824-3729-5-git-send-email-janusz.dziedzic@tieto.com>

On Mon, 2013-10-28 at 19:27 +0100, Janusz Dziedzic wrote:

> +	} else if (sdata->radar_required) {
> +		/*
> +		 * AP stopped on DFS channel so change that channel state
> +		 * to NL80211_DFS_USABLE again.
> +		 */
> +		cfg80211_leave_dfs_channel(wiphy, &sdata->vif.bss_conf.chandef);

Would it make sense to just do this in cfg80211?

johannes


^ permalink raw reply

* Re: [PATCH 4/5] cfg80211: DFS check chandef usable before CAC
From: Johannes Berg @ 2013-10-31 16:46 UTC (permalink / raw)
  To: Janusz Dziedzic; +Cc: linux-wireless
In-Reply-To: <1382984824-3729-4-git-send-email-janusz.dziedzic@tieto.com>

On Mon, 2013-10-28 at 19:27 +0100, Janusz Dziedzic wrote:

> +/**
> + * cfg80211_chandef_dfs_usable - checks if chandef is usable and we can
> + * start CAC on such chandef.

The short kernel-doc description can't span multiple lines

johannes


^ permalink raw reply

* Crash related to wmi_event_mgt_rx (or ieee80211_rx).
From: Ben Greear @ 2013-10-31 16:45 UTC (permalink / raw)
  To: ath10k, linux-wireless@vger.kernel.org

This is yesterday's ath tree, with Michal's ath10k RFT patch series applied,
and a few ath10k patches of my own.  Using modified ath10k firmware that supports
two stations to same AP.  This happened on module reload.


(gdb) l *(ath10k_wmi_event_mgmt_rx+0x246)
0xb501 is in ath10k_wmi_event_mgmt_rx (/mnt/sda/home/greearb/git/linux.ath/drivers/net/wireless/ath/ath10k/wmi.c:959).
954		 * because they can originally come in along with a trailer
955		 */
956		skb_trim(skb, buf_len);
957	
958		ieee80211_rx(ar->hw, skb);
959		return 0;
960	}
961	
962	static int freq_to_idx(struct ath10k *ar, int freq)
963	{

(gdb) l *(ieee80211_rx+0x54f)
0x1ac7a is in ieee80211_rx (/mnt/sda/home/greearb/git/linux.ath/arch/x86/include/asm/bitops.h:329).
324	}
325	
326	static __always_inline int constant_test_bit(long nr, const volatile unsigned long *addr)
327	{
328		return ((1UL << (nr & (BITS_PER_LONG-1))) &
329			(addr[nr >> _BITOPS_LONG_SHIFT])) != 0;
330	}
331	
332	static inline int variable_test_bit(long nr, volatile const unsigned long *addr)
333	{

general protection fault: 0000 [#1] PREEMPT SMP
Modules linked in: ath10k_pci(-) ath10k_core nfsv3 nfs_acl nfs fscache nf_nat_ipv4 nf_nat veth 8021q garp s]
CPU: 0 PID: 0 Comm: swapper/0 Tainted: G        WC   3.12.0-rc5-wl+ #2
Hardware name: To be filled by O.E.M. To be filled by O.E.M./HURONRIVER, BIOS 4.6.5 05/02/2012
task: ffffffff81a14490 ti: ffffffff81a00000 task.ti: ffffffff81a00000
RIP: 0010:[<ffffffffa032ac7a>]  [<ffffffffa032ac7a>] ieee80211_rx+0x54f/0x649 [mac80211]
RSP: 0018:ffff88021fa03b30  EFLAGS: 00010287
RAX: ffff880032c31ad0 RBX: ffff880032c308a0 RCX: 01526201bc0b4003
RDX: 0000000000000003 RSI: ffffffff81a14ba8 RDI: ffffffff81a14ba8
RBP: ffff88021fa03bc0 R08: ffff88020d766401 R09: ffff88020d766418
R10: ffffffff810c1f95 R11: ffff880032c30bd0 R12: ffff880032e11b00
R13: ffff880034324ca0 R14: ffff880032e36464 R15: dead000000100100
FS:  0000000000000000(0000) GS:ffff88021fa00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000001a90ae0 CR3: 0000000001a0d000 CR4: 00000000000407f0
Stack:
 ffff88021fa03b68 0000000000000001 00000000ffffffe6 dead000000100100
 ffff8800cc013600 ffff880032c308a0 ffff8800cd658a00 ffff8802120bd668
 0000000000000000 0000001000000000 0000000000000010 0000000000000000
Call Trace:
 <IRQ>
 [<ffffffffa0a01501>] ath10k_wmi_event_mgmt_rx+0x246/0x27e [ath10k_core]
 [<ffffffffa0a0435a>] ath10k_wmi_process_rx+0x6cc/0xa5a [ath10k_core]
 [<ffffffffa09fb07a>] ? ath10k_dbg+0x5c/0x5e [ath10k_core]
 [<ffffffffa09fda39>] ath10k_htc_rx_completion_handler+0x3b4/0x3e8 [ath10k_core]
 [<ffffffffa09fb07a>] ? ath10k_dbg+0x5c/0x5e [ath10k_core]
 [<ffffffffa0a18fe5>] ath10k_pci_process_ce+0x1a2/0x21e [ath10k_pci]
 [<ffffffffa0a190ae>] ath10k_pci_ce_recv_data+0x4d/0x123 [ath10k_pci]
 [<ffffffffa0a1b650>] ath10k_ce_per_engine_service+0x6b/0xab [ath10k_pci]
 [<ffffffffa0a1b6df>] ath10k_ce_per_engine_service_any+0x4f/0x6c [ath10k_pci]
 [<ffffffffa0a1a250>] ath10k_pci_tasklet+0x1e/0x4e [ath10k_pci]
 [<ffffffff810a2bed>] tasklet_action+0x88/0xe8
 [<ffffffff810de341>] ? handle_irq_event+0x47/0x5e
 [<ffffffff810a2eb8>] __do_softirq+0xc9/0x18e
 [<ffffffff81597dbc>] call_softirq+0x1c/0x30
 [<ffffffff8100c0d2>] do_softirq+0x45/0x9b
 [<ffffffff810a30a0>] irq_exit+0x56/0x9b
 [<ffffffff8100bd58>] do_IRQ+0x89/0xa0
 [<ffffffff81591eb2>] common_interrupt+0x72/0x72
 <EOI>
 [<ffffffff81495b80>] ? arch_local_irq_enable+0x8/0xd
 [<ffffffff810efe16>] ? trace_hardirqs_on+0xd/0xf
 [<ffffffff81495ead>] cpuidle_enter_state+0x51/0xbc
 [<ffffffff81495fe4>] cpuidle_idle_call+0xcc/0x118
 [<ffffffff81011b57>] arch_cpu_idle+0x9/0x21
 [<ffffffff810dda69>] cpu_startup_entry+0xae/0x119
 [<ffffffff8157fedd>] rest_init+0xc1/0xc8
 [<ffffffff8157fe1c>] ? csum_partial_copy_generic+0x16c/0x16c
 [<ffffffff81ae4d5c>] start_kernel+0x3b2/0x3bf
 [<ffffffff81ae47b2>] ? repair_env_string+0x5a/0x5a
 [<ffffffff81ae44b8>] x86_64_start_reservations+0x2a/0x2c
 [<ffffffff81ae45a4>] x86_64_start_kernel+0xea/0xf7
Code: a8 48 89 45 a0 e9 99 00 00 00 4c 89 e7 e8 13 77 1a e1 e9 fa fd ff ff 48 8b 83 30 12 00 00 45 31 ed 48
RIP  [<ffffffffa032ac7a>] ieee80211_rx+0x54f/0x649 [mac80211]
 RSP <ffff88021fa03b30>
---[ end trace 1385eeb9a1ac09ee ]---

-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


^ permalink raw reply

* Re: [PATCH 00/14] wlan: consolidate passive-scan and no-ibss flags
From: Luis R. Rodriguez @ 2013-10-31 16:42 UTC (permalink / raw)
  To: Johannes Berg
  Cc: John W. Linville, linux-wireless, Janusz Dziedzic, Shete, Mihir,
	Bhattacharyya, Tushnim, Peter Senna Tschudin, Julia Lawall
In-Reply-To: <1383237294.14302.5.camel@jlt4.sipsolutions.net>

On Thu, Oct 31, 2013 at 5:34 PM, Johannes Berg
<johannes@sipsolutions.net> wrote:
> On Mon, 2013-10-21 at 19:22 +0200, Luis R. Rodriguez wrote:
>> John, Johannes,
>>
>> This series addresses consolidating passive-scan and no-ibss flags.
>> Since its crosses over drivers I'll let you guys decide what tree
>> this goes into.
>
> Alright, I've applied this, but in one single big patch, and I've redone
> (most of) the driver updates using spatch.
>
> There were conflicts applying the patch, so most likely John will get
> conflicts when merging my tree. I've added the spatches to the commit
> log so that should be easy to resolve.

Oh I love to hear merge conflict issues are being addressed with
Coccinelle, thanks for the update. I should have just provided the
SmPL for it in the first place ;) -- my bad.

  Luis

^ permalink raw reply

* Re: [PATCH] mac80211: do not compute offset from ssn in Rx AMPDU reordering buffer
From: Johannes Berg @ 2013-10-31 16:42 UTC (permalink / raw)
  To: Karl Beldan; +Cc: linux-wireless, Karl Beldan
In-Reply-To: <1382622812-18253-1-git-send-email-karl.beldan@gmail.com>

On Thu, 2013-10-24 at 15:53 +0200, Karl Beldan wrote:
> From: Karl Beldan <karl.beldan@rivierawaves.com>
> 
> ATM, frames with SN sn are mapped into the sta reordering buffer
> sta->ampdu_mlme->tid_rx->reorder_buf at index
> ieee80211_sn_sub(sn, tid_rx->ssn) % tid_rx->buf_size.
> This offset calculation is useless, and this change replaces the index
> with sn % tid_rx->buf_size.

Applied.

johannes


^ permalink raw reply

* Re: [PATCH 00/14] wlan: consolidate passive-scan and no-ibss flags
From: Johannes Berg @ 2013-10-31 16:34 UTC (permalink / raw)
  To: Luis R. Rodriguez
  Cc: linville, linux-wireless, janusz.dziedzic, smihir, tushnimb
In-Reply-To: <1382376158-25586-1-git-send-email-mcgrof@do-not-panic.com>

On Mon, 2013-10-21 at 19:22 +0200, Luis R. Rodriguez wrote:
> John, Johannes,
> 
> This series addresses consolidating passive-scan and no-ibss flags.
> Since its crosses over drivers I'll let you guys decide what tree
> this goes into.

Alright, I've applied this, but in one single big patch, and I've redone
(most of) the driver updates using spatch.

There were conflicts applying the patch, so most likely John will get
conflicts when merging my tree. I've added the spatches to the commit
log so that should be easy to resolve.

johannes


^ permalink raw reply

* Re: [PATCH] Revert "mac80211: allow disable power save in mesh"
From: Johannes Berg @ 2013-10-31 16:15 UTC (permalink / raw)
  To: Bob Copeland; +Cc: Chun-Yeow Yeoh, linux-wireless
In-Reply-To: <1383084719-26610-1-git-send-email-me@bobcopeland.com>

On Tue, 2013-10-29 at 18:11 -0400, Bob Copeland wrote:
> This reverts commit ee1f668136b2fb6640ee2d54c2a525ea41f98211.

Applied.

johannes


^ permalink raw reply

* Re: [PATCH v2] nl80211: better document NL80211_CMD_TDLS_MGMT
From: Johannes Berg @ 2013-10-31 16:14 UTC (permalink / raw)
  To: Arik Nemtsov; +Cc: linux-wireless
In-Reply-To: <1383224075-15157-1-git-send-email-arik@wizery.com>

On Thu, 2013-10-31 at 14:54 +0200, Arik Nemtsov wrote:
> This command has different semantics depending on the action code sent.
> Document this fact and detail the supported action codes.

Applied, thanks.

johannes


^ permalink raw reply

* RE: [PATCH] cfg80211: Introduce critical protocol indication for p2p connection.
From: Undekari, Sunil Dutt @ 2013-10-31 15:54 UTC (permalink / raw)
  To: Johannes Berg; +Cc: linux-wireless@vger.kernel.org, j@w1.fi
In-Reply-To: <1383233115.14302.2.camel@jlt4.sipsolutions.net>

Pkp1c3QgZG8gaXQgaW4gdGhlIHN1cHBsaWNhbnQgLSB0aGF0IGhhcyBmdWxsIGNvbnRyb2wgb3Zl
ciB3aGF0J3MgZ29pbmcgb24gd2l0aCBhIGdpdmVuIGRldmljZS4NCj5UcnlpbmcgdG8gaGF2ZSB0
aGUga2VybmVsIG1hbmFnZSBtdWx0aXBsZSB0aGluZ3MgdGhhdCBtYXkgb3IgbWF5IG5vdCBiZSBl
eGNsdXNpdmUgYW5kIGFyZSBhbGwgZG9uZSBpbiB1c2Vyc3BhY2UgaXMgZ29pbmcgdG8gYmUgYSBm
dXRpbGUgZXhlcmNpc2UuDQpQbGVhc2Ugbm90ZSB0aGF0IHRoZSBzY2FucyB0aGF0IGFyZSBtZW50
aW9uZWQgYnkgbWUgaW4gdGhpcyBjb250ZXh0IGFyZSBub3QgdHJpZ2dlcmVkIGJ5IHRoZSBzdXBw
bGljYW50LCByYXRoZXIgdGhlIGhvc3QgZHJpdmVyIHdvdWxkIGluaXRpYXRlIHRoZW0uDQpUaGUg
ZHJpdmVyIC8gZmlybXdhcmUgd291bGQgZG8gc3VjaCBzY2FucyBmb3IgYSBiZXR0ZXIgcm9hbSBw
ZXJmb3JtYW5jZS4NCkkgd291bGQgc2F5LCBzb21lIGhhbmRzaGFrZSBiZXR3ZWVuIHRoZSBzdXBw
bGljYW50IGFuZCB0aGUgZHJpdmVyIHdvdWxkIGJlIG5lZWRlZCBmb3IgYSBiZXR0ZXIgdW5kZXJz
dGFuZGluZyBvbiB0aGUgb3BlcmF0aW9ucy4NClBsZWFzZSBoYXZlIHlvdXIgc2F5Lg0KUmVnYXJk
cywNClN1bmlsDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBKb2hhbm5lcyBC
ZXJnIFttYWlsdG86am9oYW5uZXNAc2lwc29sdXRpb25zLm5ldF0gDQpTZW50OiBUaHVyc2RheSwg
T2N0b2JlciAzMSwgMjAxMyA4OjU1IFBNDQpUbzogVW5kZWthcmksIFN1bmlsIER1dHQNCkNjOiBs
aW51eC13aXJlbGVzc0B2Z2VyLmtlcm5lbC5vcmc7IGpAdzEuZmkNClN1YmplY3Q6IFJlOiBbUEFU
Q0hdIGNmZzgwMjExOiBJbnRyb2R1Y2UgY3JpdGljYWwgcHJvdG9jb2wgaW5kaWNhdGlvbiBmb3Ig
cDJwIGNvbm5lY3Rpb24uDQoNCk9uIFRodSwgMjAxMy0xMC0zMSBhdCAxNToyMiArMDAwMCwgVW5k
ZWthcmksIFN1bmlsIER1dHQgd3JvdGU6DQo+ID4gVGhhdCdzIG5vdCB3aGF0IHRoZSBjcml0aWNh
bCBwcm90b2NvbCBzdHVmZiB3YXMgZGVzaWduZWQgZm9yLCBzbyBuby4NCj4gSSB3b3VsZCBjb25z
aWRlciB0aGUgUDJQIGNvbm5lY3Rpb24gcGhhc2UgKFAyUCtXUFMrV1BBKSB0byBiZSBjcml0aWNh
bCANCj4gYW5kIGFueSBvZmYgY2hhbm5lbCBvcGVyYXRpb25zIChzY2FuKSB0cmlnZ2VyZWQgYnkg
dGhlIGhvc3QgZHJpdmVyIA0KPiB3b3VsZCByZXN1bHQgaW4gdGhlIGRlbGF5ZWQgLyBmYWlsZWQg
UDJQIGNvbm5lY3Rpb24gYXR0ZW1wdC4NCj4gSSBzdXBwb3NlIHRoZXJlIHNob3VsZCBiZSBhbiBp
bmRpY2F0aW9uIHRvIHRoZSBob3N0IGRyaXZlciB3LnIudCBwMnAgDQo+IGNvbm5lY3Rpb24gYXR0
ZW1wdCBzbyB0aGF0IGFueSBvZmYgbG9hZCBvcGVyYXRpb25zIG9uIGFueSBvdGhlciANCj4gaW50
ZXJmYWNlIHNoYXJpbmcgdGhlIHNhbWUgcmFkaW8gd291bGQgYmUgYXZvaWRlZCBieSB0aGUgZHJp
dmVyLg0KPiBTaW5jZSB0aGVyZSBpcyBhbHJlYWR5IGFuIGV4aXN0aW5nIGludGVyZmFjZSB0aHJv
dWdoIHRoZSBjcml0aWNhbCANCj4gcHJvdG9jb2wgaW5kaWNhdGlvbiwgSSB0aG91Z2h0IG9mIGV4
dGVuZGluZyBpdCB0byBhbHNvIGluY2x1ZGUgYSBQMlAgDQo+IHByb3RvY29sL2Nvbm5lY3Rpb24u
IFRoaXMgbmV3IHByb3RvIGlkIHdvdWxkIGJlIGFuIGluZGljYXRpb24gdG8gdGhlIA0KPiBkcml2
ZXJzIHRvIGFsbG93IHRoZSBzY2FuIG9uIHRoZSBjdXJyZW50IGludGVyZmFjZSBhbmQgYXZvaWQg
YW55IHNjYW5zIA0KPiBvbiBhbm90aGVyIGNvbnNpZGVyaW5nIHRoZSBmYWN0IHRoYXQgYSBwMnAg
Y29ubmVjdGlvbiByZXF1aXJlcyBhIHNjYW4uDQo+IERvIHlvdSBwcm9wb3NlIGFuIGFsdGVybmF0
aXZlIChhIG5ldyBpbnRlcmZhY2U/KSB0byBhY2hpZXZlIHRoZSBzYW1lPw0KDQpKdXN0IGRvIGl0
IGluIHRoZSBzdXBwbGljYW50IC0gdGhhdCBoYXMgZnVsbCBjb250cm9sIG92ZXIgd2hhdCdzIGdv
aW5nIG9uIHdpdGggYSBnaXZlbiBkZXZpY2UuDQoNClRyeWluZyB0byBoYXZlIHRoZSBrZXJuZWwg
bWFuYWdlIG11bHRpcGxlIHRoaW5ncyB0aGF0IG1heSBvciBtYXkgbm90IGJlIGV4Y2x1c2l2ZSBh
bmQgYXJlIGFsbCBkb25lIGluIHVzZXJzcGFjZSBpcyBnb2luZyB0byBiZSBhIGZ1dGlsZSBleGVy
Y2lzZS4NCg0Kam9oYW5uZXMNCg0K

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox