Bug 95901

Summary: iwlwifi: 7265: wireless performance unstable on Linux >= 3.19
Product: Drivers Reporter: Ryan Finnie (ryan)
Component: network-wirelessAssignee: drivers_network-wireless (drivers_network-wireless)
Status: CLOSED INVALID    
Severity: normal CC: degts, enrico.tagliavini, greg.b.kernel, ilw, luca, ryan, seth, stefan.hoelldampf
Priority: P1    
Hardware: Intel   
OS: Linux   
See Also: https://bugzilla.kernel.org/show_bug.cgi?id=97291
Kernel Version: 4.0rc6 Subsystem:
Regression: No Bisected commit-id:
Attachments: syslog output, including dmesg
syslog with wpa_supplicant -dd
trace.dat on 4.0

Description Ryan Finnie 2015-03-31 20:23:59 UTC
Created attachment 172831 [details]
syslog output, including dmesg

[1.] One line summary of the problem:
Intel 7265 wireless performance unstable on Linux >= 3.19

[2.] Full description of the problem/report:
When in kernel >= 3.19, using iwlwifi and the 7265D firmwares
(iwlwifi-7265D-12.ucode 25.15.12.0, or iwlwifi-7265D-10.ucode 23.15.10.0), I am
experiencing the following issues:

 * On 5GHz 802.11ac, I'll get DEAUTH_LEAVING almost exactly every minute,
followed by an immediate reconnect (consistently reproducible).

 * On both 2.4GHz and 5GHz, all network activity will cease after 10-20
minutes. A manual reconnect will temporarily fix network activity (not
consistently reproducible).

Due to the co-dependencies of the 3.19 iwlwifi modules and the new 7265D
firmwares, I believe I am not able to do a kernel bisect in this situation.
Linux 3.18 and older with the old 7265 (non-D, level 9) firmware worked
correctly.

Client is a Lenovo Thinkpad X250, latest firmware (1.07).  AP is an ASUS
RT-AC87R (retail version of the RT-AC87U, same hardware), latest firmware
(3.0.0.4.378_4608-g7e6c1e5), in WAP-only mode.

[3.] Keywords (i.e., modules, networking, kernel):

[4.] Kernel version (from /proc/version):
Linux version 4.0.0-040000rc6-generic (kernel@gomeisa) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #201503291935 SMP Sun Mar 29 23:36:50 UTC 2015

[5.] Output of Oops.. message (if applicable) with symbolic information resolved (see Documentation/oops-tracing.txt)
N/A

[6.] A small shell script or example program which triggers the problem (if possible)
N/A

[7.] Environment
Description:	Ubuntu Vivid Vervet (development branch)
Release:	15.04

[7.1.] Software (add the output of the ver_linux script here)
Linux linda 4.0.0-040000rc6-generic #201503291935 SMP Sun Mar 29 23:36:50 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Gnu C                  4.9.2
Gnu make               4.0
binutils               2.25
util-linux             2.25.2
mount                  debug
module-init-tools      18
e2fsprogs              1.42.12
pcmciautils            018
PPP                    2.4.6
Linux C Library        2.21
Dynamic linker (ldd)   2.21
Procps                 3.3.9
Net-tools              1.60
Kbd                    1.15.5
Sh-utils               8.23
wireless-tools         30
Modules Loaded         ctr ccm rfcomm bnep nls_iso8859_1 arc4 snd_hda_codec_hdmi iwlmvm snd_hda_codec_realtek snd_hda_codec_generic mac80211 intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp snd_hda_intel coretemp snd_hda_controller snd_hda_codec iwlwifi kvm_intel uvcvideo snd_seq_midi snd_hwdep kvm videobuf2_vmalloc snd_seq_midi_event snd_pcm videobuf2_memops videobuf2_core cfg80211 v4l2_common snd_rawmidi videodev serio_raw btusb rtsx_pci_ms media snd_seq bluetooth mei_me memstick mei snd_seq_device thinkpad_acpi snd_timer nvram snd lpc_ich soundcore shpchp mac_hid parport_pc ppdev lp parport autofs4 dm_crypt rtsx_pci_sdmmc crct10dif_pclmul crc32_pclmul ghash_clmulni_intel aesni_intel i915 aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd psmouse ahci e1000e libahci ptp rtsx_pci i2c_algo_bit pps_core drm_kms_helper drm wmi video

[7.2.] Processor information (from /proc/cpuinfo):
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 61
model name	: Intel(R) Core(TM) i5-5300U CPU @ 2.30GHz
stepping	: 4
microcode	: 0x1d
cpu MHz		: 1900.015
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 20
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch ida arat epb pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx smap xsaveopt
bugs		:
bogomips	: 4589.70
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:

processor	: 1
vendor_id	: GenuineIntel
cpu family	: 6
model		: 61
model name	: Intel(R) Core(TM) i5-5300U CPU @ 2.30GHz
stepping	: 4
microcode	: 0x1d
cpu MHz		: 1953.023
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 1
initial apicid	: 1
fpu		: yes
fpu_exception	: yes
cpuid level	: 20
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch ida arat epb pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx smap xsaveopt
bugs		:
bogomips	: 4589.70
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:

processor	: 2
vendor_id	: GenuineIntel
cpu family	: 6
model		: 61
model name	: Intel(R) Core(TM) i5-5300U CPU @ 2.30GHz
stepping	: 4
microcode	: 0x1d
cpu MHz		: 1617.636
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 1
cpu cores	: 2
apicid		: 2
initial apicid	: 2
fpu		: yes
fpu_exception	: yes
cpuid level	: 20
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch ida arat epb pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx smap xsaveopt
bugs		:
bogomips	: 4589.70
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:

processor	: 3
vendor_id	: GenuineIntel
cpu family	: 6
model		: 61
model name	: Intel(R) Core(TM) i5-5300U CPU @ 2.30GHz
stepping	: 4
microcode	: 0x1d
cpu MHz		: 1928.675
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 1
cpu cores	: 2
apicid		: 3
initial apicid	: 3
fpu		: yes
fpu_exception	: yes
cpuid level	: 20
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch ida arat epb pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx smap xsaveopt
bugs		:
bogomips	: 4589.70
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:

[7.3.] Module information (from /proc/modules):
ctr 16384 2 - Live 0x0000000000000000
ccm 20480 2 - Live 0x0000000000000000
rfcomm 77824 8 - Live 0x0000000000000000
bnep 24576 2 - Live 0x0000000000000000
nls_iso8859_1 16384 1 - Live 0x0000000000000000
arc4 16384 2 - Live 0x0000000000000000
snd_hda_codec_hdmi 53248 1 - Live 0x0000000000000000
iwlmvm 299008 0 - Live 0x0000000000000000
snd_hda_codec_realtek 81920 1 - Live 0x0000000000000000
snd_hda_codec_generic 73728 1 snd_hda_codec_realtek, Live 0x0000000000000000
mac80211 774144 1 iwlmvm, Live 0x0000000000000000
intel_rapl 20480 0 - Live 0x0000000000000000
iosf_mbi 16384 1 intel_rapl, Live 0x0000000000000000
x86_pkg_temp_thermal 16384 0 - Live 0x0000000000000000
intel_powerclamp 20480 0 - Live 0x0000000000000000
snd_hda_intel 32768 5 - Live 0x0000000000000000
coretemp 16384 0 - Live 0x0000000000000000
snd_hda_controller 36864 1 snd_hda_intel, Live 0x0000000000000000
snd_hda_codec 147456 5 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_codec_generic,snd_hda_intel,snd_hda_controller, Live 0x0000000000000000
iwlwifi 208896 1 iwlmvm, Live 0x0000000000000000
kvm_intel 159744 0 - Live 0x0000000000000000
uvcvideo 94208 0 - Live 0x0000000000000000
snd_seq_midi 16384 0 - Live 0x0000000000000000
snd_hwdep 16384 1 snd_hda_codec, Live 0x0000000000000000
kvm 512000 1 kvm_intel, Live 0x0000000000000000
videobuf2_vmalloc 16384 1 uvcvideo, Live 0x0000000000000000
snd_seq_midi_event 16384 1 snd_seq_midi, Live 0x0000000000000000
snd_pcm 110592 4 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_controller,snd_hda_codec, Live 0x0000000000000000
videobuf2_memops 16384 1 videobuf2_vmalloc, Live 0x0000000000000000
videobuf2_core 53248 1 uvcvideo, Live 0x0000000000000000
cfg80211 581632 3 iwlmvm,mac80211,iwlwifi, Live 0x0000000000000000
v4l2_common 16384 1 videobuf2_core, Live 0x0000000000000000
snd_rawmidi 32768 1 snd_seq_midi, Live 0x0000000000000000
videodev 163840 3 uvcvideo,videobuf2_core,v4l2_common, Live 0x0000000000000000
serio_raw 16384 0 - Live 0x0000000000000000
btusb 45056 0 - Live 0x0000000000000000
rtsx_pci_ms 20480 0 - Live 0x0000000000000000
media 24576 2 uvcvideo,videodev, Live 0x0000000000000000
snd_seq 69632 2 snd_seq_midi,snd_seq_midi_event, Live 0x0000000000000000
bluetooth 524288 22 rfcomm,bnep,btusb, Live 0x0000000000000000
mei_me 20480 0 - Live 0x0000000000000000
memstick 20480 1 rtsx_pci_ms, Live 0x0000000000000000
mei 90112 1 mei_me, Live 0x0000000000000000
snd_seq_device 16384 3 snd_seq_midi,snd_rawmidi,snd_seq, Live 0x0000000000000000
thinkpad_acpi 86016 1 - Live 0x0000000000000000
snd_timer 32768 2 snd_pcm,snd_seq, Live 0x0000000000000000
nvram 16384 1 thinkpad_acpi, Live 0x0000000000000000
snd 86016 22 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_codec_generic,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_rawmidi,snd_seq,snd_seq_device,thinkpad_acpi,snd_timer, Live 0x0000000000000000
lpc_ich 24576 0 - Live 0x0000000000000000
soundcore 16384 2 snd_hda_codec,snd, Live 0x0000000000000000
shpchp 40960 0 - Live 0x0000000000000000
mac_hid 16384 0 - Live 0x0000000000000000
parport_pc 36864 0 - Live 0x0000000000000000
ppdev 20480 0 - Live 0x0000000000000000
lp 20480 0 - Live 0x0000000000000000
parport 45056 3 parport_pc,ppdev,lp, Live 0x0000000000000000
autofs4 40960 2 - Live 0x0000000000000000
dm_crypt 28672 1 - Live 0x0000000000000000
rtsx_pci_sdmmc 24576 0 - Live 0x0000000000000000
crct10dif_pclmul 16384 0 - Live 0x0000000000000000
crc32_pclmul 16384 0 - Live 0x0000000000000000
ghash_clmulni_intel 16384 0 - Live 0x0000000000000000
aesni_intel 172032 7 - Live 0x0000000000000000
i915 1126400 5 - Live 0x0000000000000000
aes_x86_64 20480 1 aesni_intel, Live 0x0000000000000000
lrw 16384 1 aesni_intel, Live 0x0000000000000000
gf128mul 16384 1 lrw, Live 0x0000000000000000
glue_helper 16384 1 aesni_intel, Live 0x0000000000000000
ablk_helper 16384 1 aesni_intel, Live 0x0000000000000000
cryptd 24576 4 ghash_clmulni_intel,aesni_intel,ablk_helper, Live 0x0000000000000000
psmouse 126976 0 - Live 0x0000000000000000
ahci 36864 3 - Live 0x0000000000000000
e1000e 233472 0 - Live 0x0000000000000000
libahci 32768 1 ahci, Live 0x0000000000000000
ptp 20480 1 e1000e, Live 0x0000000000000000
rtsx_pci 53248 2 rtsx_pci_ms,rtsx_pci_sdmmc, Live 0x0000000000000000
i2c_algo_bit 16384 1 i915, Live 0x0000000000000000
pps_core 20480 1 ptp, Live 0x0000000000000000
drm_kms_helper 126976 1 i915, Live 0x0000000000000000
drm 352256 6 i915,drm_kms_helper, Live 0x0000000000000000
wmi 20480 0 - Live 0x0000000000000000
video 28672 1 i915, Live 0x0000000000000000

[7.4.] Loaded driver and hardware information (/proc/ioports, /proc/iomem)
0000-0cf7 : PCI Bus 0000:00
  0000-001f : dma1
  0020-0021 : pic1
  0040-0043 : timer0
  0050-0053 : timer1
  0060-0060 : keyboard
  0061-0061 : PNP0800:00
  0062-0062 : PNP0C09:00
    0062-0062 : EC data
  0064-0064 : keyboard
  0066-0066 : PNP0C09:00
    0066-0066 : EC cmd
  0070-0071 : rtc0
  0080-008f : dma page reg
  00a0-00a1 : pic2
  00c0-00df : dma2
  00f0-00ff : fpu
    00f0-00f0 : PNP0C04:00
  03c0-03df : vesafb
  0800-087f : pnp 00:01
  0880-08ff : pnp 00:01
  0900-097f : pnp 00:01
  0980-09ff : pnp 00:01
  0a00-0a7f : pnp 00:01
  0a80-0aff : pnp 00:01
  0b00-0b7f : pnp 00:01
  0b80-0bff : pnp 00:01
0cf8-0cff : PCI conf1
0d00-ffff : PCI Bus 0000:00
  15e0-15ef : pnp 00:01
  1600-167f : pnp 00:01
    1640-165f : pnp 00:01
  1800-1803 : ACPI PM1a_EVT_BLK
  1804-1805 : ACPI PM1a_CNT_BLK
  1808-180b : ACPI PM_TMR
  1810-1815 : ACPI CPU throttle
  1830-1833 : iTCO_wdt
  1850-1850 : ACPI PM2_CNT_BLK
  1860-187f : iTCO_wdt
  1880-189f : ACPI GPE0_BLK
  3000-303f : 0000:00:02.0
  3060-307f : 0000:00:1f.2
    3060-307f : ahci
  3080-309f : 0000:00:19.0
  30a0-30a7 : 0000:00:1f.2
    30a0-30a7 : ahci
  30a8-30af : 0000:00:1f.2
    30a8-30af : ahci
  30b8-30bb : 0000:00:1f.2
    30b8-30bb : ahci
  30bc-30bf : 0000:00:1f.2
    30bc-30bf : ahci
  efa0-efbf : 0000:00:1f.3

00000000-00000fff : reserved
00001000-0009cfff : System RAM
0009d000-0009ffff : reserved
000a0000-000bffff : PCI Bus 0000:00
000c0000-000cfdff : Video ROM
000d0000-000d3fff : pnp 00:00
000d4000-000d7fff : pnp 00:00
000d8000-000dbfff : pnp 00:00
000dc000-000dffff : pnp 00:00
000e0000-000fffff : reserved
  000f0000-000fffff : System ROM
00100000-0fffffff : System RAM
  01000000-017f4e98 : Kernel code
  017f4e99-01d1c57f : Kernel data
  01e89000-01fcbfff : Kernel bss
10000000-1000afff : reserved
1000b000-bf06afff : System RAM
bf06b000-ccbfefff : reserved
ccbff000-ccd7efff : ACPI Non-volatile Storage
ccd7f000-ccdfefff : ACPI Tables
ccdff000-cfffffff : reserved
  ce000000-cfffffff : Graphics Stolen Memory
d0000000-febfffff : PCI Bus 0000:00
  d0000000-d000ffff : pnp 00:05
  d0010000-d001ffff : pnp 00:05
  e0000000-efffffff : 0000:00:02.0
  f0000000-f0ffffff : 0000:00:02.0
  f1000000-f10fffff : PCI Bus 0000:03
    f1000000-f1001fff : 0000:03:00.0
      f1000000-f1001fff : iwlwifi
  f1100000-f11fffff : PCI Bus 0000:02
    f1100000-f1100fff : 0000:02:00.0
      f1100000-f1100fff : rtsx_pci
  f1200000-f121ffff : 0000:00:19.0
    f1200000-f121ffff : e1000e
  f1220000-f122ffff : 0000:00:14.0
    f1220000-f122ffff : xhci-hcd
  f1230000-f1233fff : 0000:00:03.0
    f1230000-f1233fff : ICH HD audio
  f1234000-f1237fff : 0000:00:1b.0
    f1234000-f1237fff : ICH HD audio
  f1238000-f12380ff : 0000:00:1f.3
  f1239000-f123901f : 0000:00:16.0
    f1239000-f123901f : mei_me
  f123b000-f123bfff : 0000:00:1f.6
  f123c000-f123c7ff : 0000:00:1f.2
    f123c000-f123c7ff : ahci
  f123d000-f123d3ff : 0000:00:1d.0
    f123d000-f123d3ff : ehci_hcd
  f123e000-f123efff : 0000:00:19.0
    f123e000-f123efff : e1000e
  f8000000-fbffffff : PCI MMCONFIG 0000 [bus 00-3f]
    f8000000-fbffffff : reserved
      f8000000-fbffffff : pnp 00:01
fec00000-fec00fff : reserved
  fec00000-fec003ff : IOAPIC 0
fed00000-fed003ff : HPET 0
  fed00000-fed003ff : PNP0103:00
fed08000-fed08fff : reserved
fed10000-fed19fff : reserved
  fed10000-fed13fff : pnp 00:01
  fed18000-fed18fff : pnp 00:01
  fed19000-fed19fff : pnp 00:01
fed1c000-fed1ffff : reserved
  fed1c000-fed1ffff : pnp 00:01
    fed1f410-fed1f414 : iTCO_wdt
fed40000-fed4bfff : PCI Bus 0000:00
  fed45000-fed4bfff : pnp 00:01
fed90000-fed90fff : dmar0
fed91000-fed91fff : dmar1
fee00000-fee00fff : Local APIC
  fee00000-fee00fff : reserved
ffa00000-ffffffff : reserved
100000000-22dffffff : System RAM
22e000000-22fffffff : RAM buffer

[7.5.] PCI information ('lspci -vvv' as root)
00:00.0 Host bridge: Intel Corporation Broadwell-U Host Bridge -OPI (rev 09)
	Subsystem: Lenovo Device 2226
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR- INTx-
	Latency: 0
	Capabilities: [e0] Vendor Specific Information: Len=0c <?>

00:02.0 VGA compatible controller: Intel Corporation Broadwell-U Integrated Graphics (rev 09) (prog-if 00 [VGA controller])
	Subsystem: Lenovo Device 2226
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 45
	Region 0: Memory at f0000000 (64-bit, non-prefetchable) [size=16M]
	Region 2: Memory at e0000000 (64-bit, prefetchable) [size=256M]
	Region 4: I/O ports at 3000 [size=64]
	Expansion ROM at <unassigned> [disabled]
	Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
		Address: fee00018  Data: 0000
	Capabilities: [d0] Power Management version 2
		Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [a4] PCI Advanced Features
		AFCap: TP+ FLR+
		AFCtrl: FLR-
		AFStatus: TP-
	Kernel driver in use: i915

00:03.0 Audio device: Intel Corporation Broadwell-U Audio Controller (rev 09)
	Subsystem: Lenovo Device 2226
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 50
	Region 0: Memory at f1230000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [50] Power Management version 2
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit-
		Address: fee00478  Data: 0000
	Capabilities: [70] Express (v1) Root Complex Integrated Endpoint, MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0
			ExtTag- RBE-
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
			RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
			MaxPayload 128 bytes, MaxReadReq 128 bytes
		DevSta:	CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
	Kernel driver in use: snd_hda_intel

00:14.0 USB controller: Intel Corporation Wildcat Point-LP USB xHCI Controller (rev 03) (prog-if 30 [XHCI])
	Subsystem: Lenovo Device 2226
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 42
	Region 0: Memory at f1220000 (64-bit, non-prefetchable) [size=64K]
	Capabilities: [70] Power Management version 2
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0-,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [80] MSI: Enable+ Count=1/8 Maskable- 64bit+
		Address: 00000000fee00318  Data: 0000
	Kernel driver in use: xhci_hcd

00:16.0 Communication controller: Intel Corporation Wildcat Point-LP MEI Controller #1 (rev 03)
	Subsystem: Lenovo Device 2226
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 47
	Region 0: Memory at f1239000 (64-bit, non-prefetchable) [size=32]
	Capabilities: [50] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [8c] MSI: Enable+ Count=1/1 Maskable- 64bit+
		Address: 00000000fee003f8  Data: 0000
	Kernel driver in use: mei_me

00:19.0 Ethernet controller: Intel Corporation Ethernet Connection (3) I218-LM (rev 03)
	Subsystem: Lenovo Device 2226
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 46
	Region 0: Memory at f1200000 (32-bit, non-prefetchable) [size=128K]
	Region 1: Memory at f123e000 (32-bit, non-prefetchable) [size=4K]
	Region 2: I/O ports at 3080 [size=32]
	Capabilities: [c8] Power Management version 2
		Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=1 PME-
	Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
		Address: 00000000fee003d8  Data: 0000
	Capabilities: [e0] PCI Advanced Features
		AFCap: TP+ FLR+
		AFCtrl: FLR-
		AFStatus: TP-
	Kernel driver in use: e1000e

00:1b.0 Audio device: Intel Corporation Wildcat Point-LP High Definition Audio Controller (rev 03)
	Subsystem: Lenovo Device 2226
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 32, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 49
	Region 0: Memory at f1234000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [50] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
		Address: 00000000fee00458  Data: 0000
	Kernel driver in use: snd_hda_intel

00:1c.0 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #6 (rev e3) (prog-if 00 [Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
	I/O behind bridge: 0000f000-00000fff
	Memory behind bridge: f1100000-f11fffff
	Prefetchable memory behind bridge: 00000000fff00000-00000000000fffff
	Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
	BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B-
		PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
	Capabilities: [40] Express (v2) Root Port (Slot+), MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0
			ExtTag- RBE+
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
			RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
			MaxPayload 128 bytes, MaxReadReq 128 bytes
		DevSta:	CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend-
		LnkCap:	Port #6, Speed 5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <512ns, L1 <16us
			ClockPM- Surprise- LLActRep+ BwNot+
		LnkCtl:	ASPM L0s L1 Enabled; RCB 64 bytes Disabled- CommClk+
			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt-
		SltCap:	AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise-
			Slot #5, PowerLimit 10.000W; Interlock- NoCompl+
		SltCtl:	Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg-
			Control: AttnInd Unknown, PwrInd Unknown, Power- Interlock-
		SltSta:	Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet+ Interlock-
			Changed: MRL- PresDet- LinkState+
		RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna- CRSVisible-
		RootCap: CRSVisible-
		RootSta: PME ReqID 0000, PMEStatus- PMEPending-
		DevCap2: Completion Timeout: Range ABC, TimeoutDis+, LTR+, OBFF Not Supported ARIFwd-
		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR+, OBFF Disabled ARIFwd-
		LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
			 Compliance De-emphasis: -6dB
		LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete-, EqualizationPhase1-
			 EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
	Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
		Address: 00000000  Data: 0000
	Capabilities: [90] Subsystem: Lenovo Device 2226
	Capabilities: [a0] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [100 v0] #00
	Capabilities: [200 v1] L1 PM Substates
		L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
			  PortCommonModeRestoreTime=40us PortTPowerOnTime=10us
	Kernel driver in use: pcieport

00:1c.1 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #3 (rev e3) (prog-if 00 [Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
	I/O behind bridge: 0000f000-00000fff
	Memory behind bridge: f1000000-f10fffff
	Prefetchable memory behind bridge: 00000000fff00000-00000000000fffff
	Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
	BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B-
		PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
	Capabilities: [40] Express (v2) Root Port (Slot+), MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0
			ExtTag- RBE+
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
			RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
			MaxPayload 128 bytes, MaxReadReq 128 bytes
		DevSta:	CorrErr+ UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend-
		LnkCap:	Port #3, Speed 5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <512ns, L1 <16us
			ClockPM- Surprise- LLActRep+ BwNot+
		LnkCtl:	ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+
			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive+ BWMgmt+ ABWMgmt-
		SltCap:	AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise-
			Slot #2, PowerLimit 10.000W; Interlock- NoCompl+
		SltCtl:	Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg-
			Control: AttnInd Unknown, PwrInd Unknown, Power- Interlock-
		SltSta:	Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet+ Interlock-
			Changed: MRL- PresDet- LinkState+
		RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna- CRSVisible-
		RootCap: CRSVisible-
		RootSta: PME ReqID 0000, PMEStatus- PMEPending-
		DevCap2: Completion Timeout: Range ABC, TimeoutDis+, LTR+, OBFF Not Supported ARIFwd-
		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR+, OBFF Disabled ARIFwd-
		LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
			 Compliance De-emphasis: -6dB
		LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete-, EqualizationPhase1-
			 EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
	Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
		Address: 00000000  Data: 0000
	Capabilities: [90] Subsystem: Lenovo Device 2226
	Capabilities: [a0] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [100 v0] #00
	Capabilities: [200 v1] L1 PM Substates
		L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
			  PortCommonModeRestoreTime=40us PortTPowerOnTime=10us
	Kernel driver in use: pcieport

00:1d.0 USB controller: Intel Corporation Wildcat Point-LP USB EHCI Controller (rev 03) (prog-if 20 [EHCI])
	Subsystem: Lenovo Device 2226
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 23
	Region 0: Memory at f123d000 (32-bit, non-prefetchable) [size=1K]
	Capabilities: [50] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [58] Debug port: BAR=1 offset=00a0
	Capabilities: [98] PCI Advanced Features
		AFCap: TP+ FLR+
		AFCtrl: FLR-
		AFStatus: TP-
	Kernel driver in use: ehci-pci

00:1f.0 ISA bridge: Intel Corporation Wildcat Point-LP LPC Controller (rev 03)
	Subsystem: Lenovo Device 2226
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Capabilities: [e0] Vendor Specific Information: Len=0c <?>
	Kernel driver in use: lpc_ich

00:1f.2 SATA controller: Intel Corporation Wildcat Point-LP SATA Controller [AHCI Mode] (rev 03) (prog-if 01 [AHCI 1.0])
	Subsystem: Lenovo Device 2226
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin B routed to IRQ 44
	Region 0: I/O ports at 30a8 [size=8]
	Region 1: I/O ports at 30bc [size=4]
	Region 2: I/O ports at 30a0 [size=8]
	Region 3: I/O ports at 30b8 [size=4]
	Region 4: I/O ports at 3060 [size=32]
	Region 5: Memory at f123c000 (32-bit, non-prefetchable) [size=2K]
	Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
		Address: fee00398  Data: 0000
	Capabilities: [70] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [a8] SATA HBA v1.0 BAR4 Offset=00000004
	Kernel driver in use: ahci

00:1f.3 SMBus: Intel Corporation Wildcat Point-LP SMBus Controller (rev 03)
	Subsystem: Lenovo Device 2226
	Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Interrupt: pin C routed to IRQ 10
	Region 0: Memory at f1238000 (64-bit, non-prefetchable) [size=256]
	Region 4: I/O ports at efa0 [size=32]

00:1f.6 Signal processing controller: Intel Corporation Wildcat Point-LP Thermal Management Controller (rev 03)
	Subsystem: Lenovo Device 2226
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin C routed to IRQ 10
	Region 0: Memory at f123b000 (64-bit, non-prefetchable) [size=4K]
	Capabilities: [50] Power Management version 3
		Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
		Address: 00000000  Data: 0000

02:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5227 PCI Express Card Reader (rev 01)
	Subsystem: Lenovo Device 2226
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 43
	Region 0: Memory at f1100000 (32-bit, non-prefetchable) [size=4K]
	Capabilities: [40] Power Management version 3
		Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0-,D1+,D2+,D3hot+,D3cold+)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
		Address: 00000000fee00358  Data: 0000
	Capabilities: [70] Express (v2) Endpoint, MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
			ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
			RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
			MaxPayload 128 bytes, MaxReadReq 512 bytes
		DevSta:	CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr+ TransPend-
		LnkCap:	Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s unlimited, L1 <64us
			ClockPM+ Surprise- LLActRep- BwNot-
		LnkCtl:	ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk-
			ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
		DevCap2: Completion Timeout: Not Supported, TimeoutDis+, LTR+, OBFF Via message/WAKE#
		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR+, OBFF Disabled
		LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
			 Compliance De-emphasis: -6dB
		LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete-, EqualizationPhase1-
			 EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
	Capabilities: [100 v2] Advanced Error Reporting
		UESta:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UEMsk:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UESvrt:	DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
		CESta:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
		CEMsk:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
		AERCap:	First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn-
	Capabilities: [140 v1] Device Serial Number 00-00-00-01-00-4c-e0-00
	Capabilities: [150 v1] Latency Tolerance Reporting
		Max snoop latency: 71680ns
		Max no snoop latency: 71680ns
	Capabilities: [158 v1] L1 PM Substates
		L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
			  PortCommonModeRestoreTime=60us PortTPowerOnTime=60us
	Kernel driver in use: rtsx_pci

03:00.0 Network controller: Intel Corporation Wireless 7265 (rev 59)
	Subsystem: Intel Corporation Dual Band Wireless-AC 7265
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 48
	Region 0: Memory at f1000000 (64-bit, non-prefetchable) [size=8K]
	Capabilities: [c8] Power Management version 3
		Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
		Address: 00000000fee00418  Data: 0000
	Capabilities: [40] Express (v2) Endpoint, MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0, Latency L0s <512ns, L1 unlimited
			ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset+
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
			RlxdOrd+ ExtTag- PhantFunc- AuxPwr+ NoSnoop+ FLReset-
			MaxPayload 128 bytes, MaxReadReq 128 bytes
		DevSta:	CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr+ TransPend-
		LnkCap:	Port #0, Speed 2.5GT/s, Width x1, ASPM L1, Exit Latency L0s <4us, L1 <32us
			ClockPM+ Surprise- LLActRep- BwNot-
		LnkCtl:	ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+
			ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
		DevCap2: Completion Timeout: Range B, TimeoutDis+, LTR+, OBFF Via WAKE#
		DevCtl2: Completion Timeout: 16ms to 55ms, TimeoutDis-, LTR+, OBFF Disabled
		LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
			 Compliance De-emphasis: -6dB
		LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete-, EqualizationPhase1-
			 EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
	Capabilities: [100 v1] Advanced Error Reporting
		UESta:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UEMsk:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UESvrt:	DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
		CESta:	RxErr- BadTLP+ BadDLLP- Rollover- Timeout+ NonFatalErr+
		CEMsk:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
		AERCap:	First Error Pointer: 00, GenCap- CGenEn- ChkCap- ChkEn-
	Capabilities: [140 v1] Device Serial Number 60-57-18-ff-ff-bf-da-92
	Capabilities: [14c v1] Latency Tolerance Reporting
		Max snoop latency: 71680ns
		Max no snoop latency: 71680ns
	Capabilities: [154 v1] L1 PM Substates
		L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
			  PortCommonModeRestoreTime=30us PortTPowerOnTime=60us
	Kernel driver in use: iwlwifi

[7.6.] SCSI information (from /proc/scsi/scsi)
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: Crucial_CT256MX1 Rev: MU01
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: SBe M2 SSD       Rev: 02.0
  Type:   Direct-Access                    ANSI  SCSI revision: 05

[7.7.] Other information that might be relevant to the problem (please look in /proc and include all information that you think to be relevant):
wlan0     IEEE 802.11abgn  ESSID:"Hello Rock Stars 5GHz"
          Mode:Managed  Frequency:5.805 GHz  Access Point: 38:2C:4A:5C:7F:E4
          Bit Rate=9 Mb/s   Tx-Power=22 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:on
          Link Quality=57/70  Signal level=-53 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:1   Missed beacon:0

See attached syslog.txt.

[X.] Other notes, patches, fixes, workarounds:
Downstream bug report: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1437913
linux-wireless thread: http://marc.info/?l=linux-wireless&m=142778129512570&w=2
Comment 1 Greg B 2015-04-03 06:44:00 UTC
I can confirm I am occasionally experiencing this as well on a ThinkPad T450 running kernel 3.19.

from lspci -nn:
03:00.0 Network controller [0280]: Intel Corporation Wireless 7265 [8086:095b] (rev 59)

When I've encountered this problem, it appeared to be a transmitter lockup.  If I was receiving a stream of data (in my case, an audio call over UDP), the RX stream would continue while TX was locked up.  A running ping would eventually start reporting ENOBUFS.  Sometimes the transmitter would recover after several seconds, but many times it would require forcing Linux to reassociate with the AP.  The problem also appeared to be worsened by a noisy RF environment (e.g., other nearby very active access points), with TX lockups occurring as frequently as every few seconds.
Comment 2 Emmanuel Grumbach 2015-04-03 11:55:29 UTC
@Greg - this is most likely a different issue.
Can you please attach your dmesg output to confirm?
Comment 3 Greg B 2015-04-03 20:20:50 UTC
@Emmanuel - there was no dmesg output at all during the lockup.  The first log message generated in /var/log/messages came from me manually disassocating the wifi, and the following messages after that came from me manually requesting wifi re-associate with the AP.  I can send those messages if desired.

I also commented on this issue downstream:  https://bugzilla.redhat.com/show_bug.cgi?id=1202930 (see tail end of report for my comments).

On the downstream report, I also included some information about a wifi problem I had twice on 3.18 which included a kernel WARNING and backtrace which could only be resolved by a reboot.  I haven't had that happen again.  I expect that's a different issue, but don't know.
Comment 4 Emmanuel Grumbach 2015-04-04 19:53:08 UTC
No dmesg output?
No reassociation?
No Tx queue stuck?

I think that the WARNING you talked about has been fixed since then.
Please make sure you work with the latest firmware (25.16.12.0).
Comment 5 Greg B 2015-04-05 05:47:35 UTC
Nothing at all remarkable in dmesg; the only messages are due to disconnection/reassociation after I manually intervened.  Here's the re-association *after* I manually disconnected and manually reassociated.  The connection had been locked up for about three minutes before I disconnected and reassociated, and a running ping was returning ENOBUFS for most of that time.  The driver and wifi subsystem apparently never realized there was a problem.

Sometimes this will happen several times a minute, for several minutes on end, and other times it will go minutes or hours before it happens again.

Kernel:  Linux version 3.19.3-200.fc21.x86_64 (mockbuild@bkernel02.phx2.fedoraproject.org) (gcc version 4.9.2 20150212 (Red Hat 4.9.2-6) (GCC) ) #1 SMP Thu Mar 26 21:39:42 UTC 2015

Ping -n -D output: (ENETUNREACH messages below were due to me manually disconnecting/reassociating the wifi)
[1428211160.121871] 64 bytes from x.x.x.x: icmp_seq=1188 ttl=64 time=4.77 ms
[1428211161.121624] 64 bytes from x.x.x.x: icmp_seq=1189 ttl=64 time=2.52 ms
[1428211162.122984] 64 bytes from x.x.x.x: icmp_seq=1190 ttl=64 time=2.12 ms
ping: sendmsg: No buffer space available
(ENOBUFS message repeated many times)
ping: sendmsg: No buffer space available
ping: sendmsg: No buffer space available
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
[1428211382.910083] 64 bytes from x.x.x.x: icmp_seq=1391 ttl=64 time=765 ms
[1428211383.983037] 64 bytes from x.x.x.x: icmp_seq=1392 ttl=64 time=837 ms
[1428211385.163210] 64 bytes from x.x.x.x: icmp_seq=1393 ttl=64 time=1016 ms
[1428211385.171305] 64 bytes from x.x.x.x: icmp_seq=1394 ttl=64 time=25.4 ms
[1428211386.152963] 64 bytes from x.x.x.x: icmp_seq=1395 ttl=64 time=5.63 ms
[1428211387.151779] 64 bytes from x.x.x.x: icmp_seq=1396 ttl=64 time=2.56 ms

Dmesg snippet:
[54388.592157] wlp3s0: deauthenticating from xx:xx:xx:xx:xx:xx by local choice (Reason: 3=DEAUTH_LEAVING)
[54388.602390] cfg80211: Calling CRDA to update world regulatory domain
[54388.616714] cfg80211: World regulatory domain updated:
[54388.616718] cfg80211:  DFS Master region: unset
[54388.616719] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[54388.616722] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[54388.616724] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[54388.616726] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[54388.616728] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
[54388.616730] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
[54388.616732] cfg80211:   (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[54388.616734] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[54388.616736] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[54388.617377] cfg80211: Calling CRDA for country: US
[54388.622191] cfg80211: Regulatory domain changed to country: US
[54388.622194] cfg80211:  DFS Master region: FCC
[54388.622195] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[54388.622197] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 3000 mBm), (N/A)
[54388.622198] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 1700 mBm), (N/A)
[54388.622200] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2300 mBm), (0 s)
[54388.622201] cfg80211:   (5490000 KHz - 5600000 KHz @ 80000 KHz), (N/A, 2300 mBm), (0 s)
[54388.622202] cfg80211:   (5650000 KHz - 5710000 KHz @ 40000 KHz), (N/A, 2300 mBm), (0 s)
[54388.622203] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 3000 mBm), (N/A)
[54388.622204] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 4000 mBm), (N/A)
[54391.812924] wlp3s0: authenticate with xx:xx:xx:xx:xx:xx
[54391.818065] wlp3s0: send auth to xx:xx:xx:xx:xx:xx (try 1/3)
[54391.821645] wlp3s0: authenticated
[54391.822681] wlp3s0: associate with xx:xx:xx:xx:xx:xx (try 1/3)
[54391.826146] wlp3s0: RX AssocResp from xx:xx:xx:xx:xx:xx (capab=0x411 status=0 aid=5)
[54391.827683] wlp3s0: associated
Comment 6 Emmanuel Grumbach 2015-04-05 07:32:30 UTC
good - please open a new bug.
This is not related to this bug.
Comment 7 Luca Coelho 2015-04-07 10:05:45 UTC
@Ryan Finnie -- getting back to the original bug

It's pretty strange that the deauth is happening exactly one minute after the connection completes.  And this can only be coming from the userspace, since the kernel "deauthenticating by local choice" message can only be printed if the userspace requested it or if the system is suspending (the latter is not the case here).

In order to try to get some more clues could you please do the following?

1. make sure there is only one wpa_supplicant instance running

2. run wpa_supplicant with debugging -- just add -dd to the command line options

3. collect ftrace logs (trace-cmd record -e iwlwifi -e iwlwifi_msg -e cfg80211 -e mac80211)

4. try to run 3.18 with iwlwifi-7265D-10.ucode renamed as iwlwifi-7265-10.ucode

5. if 4. works and the problem is not reproduced, you could bisect


Sorry that we can't figure out anything more without extra information...
Comment 8 Ryan Finnie 2015-04-13 04:27:21 UTC
Created attachment 173811 [details]
syslog with wpa_supplicant -dd
Comment 9 Ryan Finnie 2015-04-13 04:28:11 UTC
Created attachment 173821 [details]
trace.dat on 4.0
Comment 10 Ryan Finnie 2015-04-13 04:30:27 UTC
(In reply to Luca Coelho from comment #7)
> It's pretty strange that the deauth is happening exactly one minute after
> the connection completes.  And this can only be coming from the userspace,
> since the kernel "deauthenticating by local choice" message can only be
> printed if the userspace requested it or if the system is suspending (the
> latter is not the case here).

And yet oddly userspace doesn't seem to know about the deauth until after the kernel event.  I've uploaded a new full syslog with wpa_supplicant -dd, but here are the a lines when the 60 second interval happens:

Apr 12 21:08:04 linda wpa_supplicant[2606]: EAPOL authentication completed - result=SUCCESS
Apr 12 21:08:04 linda wpa_supplicant[2606]: RTM_NEWLINK: ifi_index=3 ifname=wlan0 operstate=6 linkmode=1 ifi_flags=0x11043 ([UP][RUNNING][LOWER_UP])
Apr 12 21:08:04 linda kernel: [ 1257.591077] wlan0: Limiting TX power to 30 (30 - 0) dBm as advertised by 38:2c:4a:5c:7f:e4
Apr 12 21:08:05 linda wpa_supplicant[2606]: EAPOL: startWhen --> 0
Apr 12 21:08:05 linda wpa_supplicant[2606]: EAPOL: disable timer tick
Apr 12 21:09:04 linda kernel: [ 1317.514138] wlan0: deauthenticating from 38:2c:4a:5c:7f:e4 by local choice (Reason: 3=DEAUTH_LEAVING)
Apr 12 21:09:04 linda wpa_supplicant[2606]: nl80211: Event message available
Apr 12 21:09:04 linda wpa_supplicant[2606]: nl80211: Drv Event 20 (NL80211_CMD_DEL_STATION) received for wlan0

> In order to try to get some more clues could you please do the following?
> 
> 1. make sure there is only one wpa_supplicant instance running

Confirmed.  Previously wpa_supplicant was managed by Ubuntu vivid via systemd/dbus/stuff (sorry, I'm not proficient with how the modern desktop works these days w/r/t networking).  But I now have it set to not manage wlan0 and have configured wpa_supplicant manually to rule out the desktop environment (no change in behavior).

> 2. run wpa_supplicant with debugging -- just add -dd to the command line
> options

Done, please see attached.

> 3. collect ftrace logs (trace-cmd record -e iwlwifi -e iwlwifi_msg -e
> cfg80211 -e mac80211)

Done, please see attached.

> 4. try to run 3.18 with iwlwifi-7265D-10.ucode renamed as
> iwlwifi-7265-10.ucode

iwlwifi on 3.18 doesn't seem to like that:

[    7.810688] Intel(R) Wireless WiFi driver for Linux, in-tree:
[    7.810691] Copyright(c) 2003- 2014 Intel Corporation
[    7.811625] iwlwifi 0000:03:00.0: irq 50 for MSI/MSI-X
[    7.823048] iwlwifi 0000:03:00.0: loaded firmware version 23.15.10.0 op_mode iwlmvm
[    7.860776] iwlwifi 0000:03:00.0: Detected Intel(R) Dual Band Wireless AC 7265, REV=0x210
[    7.861123] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
[    7.861572] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
[    7.916535] cfg80211: World regulatory domain updated:
[    7.916539] cfg80211:  DFS Master region: unset
[    7.916540] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[    7.916543] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[    7.916545] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[    7.916547] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm), (N/A)
[    7.916549] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[    7.916551] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[    8.866062] iwlwifi 0000:03:00.0: Failed to start INIT ucode: -110
[    8.866455] iwlwifi 0000:03:00.0: Failed to run INIT ucode: -110

> 5. if 4. works and the problem is not reproduced, you could bisect
> 
> 
> Sorry that we can't figure out anything more without extra information...

No problem, thank you for your help.  Please let me know if there's anything else I can do.
Comment 11 Luca Coelho 2015-04-13 06:23:26 UTC
(In reply to Ryan Finnie from comment #10)
> (In reply to Luca Coelho from comment #7)
> > It's pretty strange that the deauth is happening exactly one minute after
> > the connection completes.  And this can only be coming from the userspace,
> > since the kernel "deauthenticating by local choice" message can only be
> > printed if the userspace requested it or if the system is suspending (the
> > latter is not the case here).
> 
> And yet oddly userspace doesn't seem to know about the deauth until after
> the kernel event.  I've uploaded a new full syslog with wpa_supplicant -dd,
> but here are the a lines when the 60 second interval happens:
> 
> Apr 12 21:08:04 linda wpa_supplicant[2606]: EAPOL authentication completed -
> result=SUCCESS
> Apr 12 21:08:04 linda wpa_supplicant[2606]: RTM_NEWLINK: ifi_index=3
> ifname=wlan0 operstate=6 linkmode=1 ifi_flags=0x11043
> ([UP][RUNNING][LOWER_UP])
> Apr 12 21:08:04 linda kernel: [ 1257.591077] wlan0: Limiting TX power to 30
> (30 - 0) dBm as advertised by 38:2c:4a:5c:7f:e4
> Apr 12 21:08:05 linda wpa_supplicant[2606]: EAPOL: startWhen --> 0
> Apr 12 21:08:05 linda wpa_supplicant[2606]: EAPOL: disable timer tick
> Apr 12 21:09:04 linda kernel: [ 1317.514138] wlan0: deauthenticating from
> 38:2c:4a:5c:7f:e4 by local choice (Reason: 3=DEAUTH_LEAVING)
> Apr 12 21:09:04 linda wpa_supplicant[2606]: nl80211: Event message available
> Apr 12 21:09:04 linda wpa_supplicant[2606]: nl80211: Drv Event 20
> (NL80211_CMD_DEL_STATION) received for wlan0

Okay, sorry, this can also happen because of regulatory.  I missed that.

 
> > In order to try to get some more clues could you please do the following?
> > 
> > 1. make sure there is only one wpa_supplicant instance running
> 
> Confirmed.  Previously wpa_supplicant was managed by Ubuntu vivid via
> systemd/dbus/stuff (sorry, I'm not proficient with how the modern desktop
> works these days w/r/t networking).  But I now have it set to not manage
> wlan0 and have configured wpa_supplicant manually to rule out the desktop
> environment (no change in behavior).

Good, this is necessary to rule out strange behavior caused by two instances competing for control.

 
> > 2. run wpa_supplicant with debugging -- just add -dd to the command line
> > options
> 
> Done, please see attached.

Can't see anything in wpa_supplicant triggering the deauth, so it is indeed kernel initiated.

 
> > 3. collect ftrace logs (trace-cmd record -e iwlwifi -e iwlwifi_msg -e
> > cfg80211 -e mac80211)
> 
> Done, please see attached.

Thanks, this was very useful!

 
> > 4. try to run 3.18 with iwlwifi-7265D-10.ucode renamed as
> > iwlwifi-7265-10.ucode
> 
> iwlwifi on 3.18 doesn't seem to like that:
> 
> [    7.810688] Intel(R) Wireless WiFi driver for Linux, in-tree:
> [    7.810691] Copyright(c) 2003- 2014 Intel Corporation
> [    7.811625] iwlwifi 0000:03:00.0: irq 50 for MSI/MSI-X
> [    7.823048] iwlwifi 0000:03:00.0: loaded firmware version 23.15.10.0
> op_mode iwlmvm
> [    7.860776] iwlwifi 0000:03:00.0: Detected Intel(R) Dual Band Wireless AC
> 7265, REV=0x210
> [    7.861123] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
> [    7.861572] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
> [    7.916535] cfg80211: World regulatory domain updated:
> [    7.916539] cfg80211:  DFS Master region: unset
> [    7.916540] cfg80211:   (start_freq - end_freq @ bandwidth),
> (max_antenna_gain, max_eirp), (dfs_cac_time)
> [    7.916543] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300
> mBi, 2000 mBm), (N/A)
> [    7.916545] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (300
> mBi, 2000 mBm), (N/A)
> [    7.916547] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300
> mBi, 2000 mBm), (N/A)
> [    7.916549] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300
> mBi, 2000 mBm), (N/A)
> [    7.916551] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300
> mBi, 2000 mBm), (N/A)
> [    8.866062] iwlwifi 0000:03:00.0: Failed to start INIT ucode: -110
> [    8.866455] iwlwifi 0000:03:00.0: Failed to run INIT ucode: -110

Bummer, I thought that would have worked. :(


> > 5. if 4. works and the problem is not reproduced, you could bisect
> > 
> > 
> > Sorry that we can't figure out anything more without extra information...
> 
> No problem, thank you for your help.  Please let me know if there's anything
> else I can do.

So this really seems like a regulatory issue now.  Channel 153 (5765) is not available everywhere so it could be that your NIC was purchased in a region where it is not supported (Europe, for instance)?

I'll ask my colleague who knows a lot more about regulatory to see if he has any clues and what sort of data we may need.
Comment 12 Ryan Finnie 2015-04-13 07:20:35 UTC
(In reply to Luca Coelho from comment #11)
> So this really seems like a regulatory issue now.  Channel 153 (5765) is not
> available everywhere so it could be that your NIC was purchased in a region
> where it is not supported (Europe, for instance)?
> 
> I'll ask my colleague who knows a lot more about regulatory to see if he has
> any clues and what sort of data we may need.

Thanks.  FWIW, this Thinkpad X250 was bought directly from Lenovo through their US store, for use in the US.  The part number is 20CMCTO1WW and I assume the "WW" means worldwide, but I would assume (hope?) they would configure it with a wireless card sourced for use in the US.
Comment 13 Ryan Finnie 2015-04-13 17:05:11 UTC
(In reply to Ryan Finnie from comment #12)
> (In reply to Luca Coelho from comment #11)
> > So this really seems like a regulatory issue now.  Channel 153 (5765) is
> not
> > available everywhere so it could be that your NIC was purchased in a region
> > where it is not supported (Europe, for instance)?
> > 
> > I'll ask my colleague who knows a lot more about regulatory to see if he
> has
> > any clues and what sort of data we may need.
> 
> Thanks.  FWIW, this Thinkpad X250 was bought directly from Lenovo through
> their US store, for use in the US.  The part number is 20CMCTO1WW and I
> assume the "WW" means worldwide, but I would assume (hope?) they would
> configure it with a wireless card sourced for use in the US.

Yeah, definitely looks to be regulatory.  "iw reg set US" stops the deauths.  I believe there's still an outstanding bug considering the range for channel 153 (5735000 KHz - 5835000 KHz @ 40000 KHz) is listed both for the default unset and for FCC:

[   12.500598] cfg80211: World regulatory domain updated:
[   12.500602] cfg80211:  DFS Master region: unset
[   12.500603] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[   12.500607] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[   12.500618] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[   12.500620] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm), (N/A)
[   12.500622] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[   12.500624] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[   13.217842] cfg80211: Calling CRDA for country: US
[   13.220191] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
[   13.220647] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
[   13.241168] cfg80211: Regulatory domain changed to country: US
[   13.241173] cfg80211:  DFS Master region: FCC
[   13.241174] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[   13.241176] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2700 mBm), (N/A)
[   13.241178] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 1700 mBm), (N/A)
[   13.241179] cfg80211:   (5250000 KHz - 5330000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (0 s)
[   13.241181] cfg80211:   (5490000 KHz - 5600000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (0 s)
[   13.241182] cfg80211:   (5650000 KHz - 5710000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (0 s)
[   13.241183] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 3000 mBm), (N/A)
[   13.241185] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 4000 mBm), (N/A)
[   15.916175] wlan0: authenticate with 38:2c:4a:5c:7f:e4
[   15.916183] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded
[   15.925062] wlan0: send auth to 38:2c:4a:5c:7f:e4 (try 1/3)
[   15.925796] wlan0: authenticated
[   15.928273] wlan0: associate with 38:2c:4a:5c:7f:e4 (try 1/3)
[   15.936807] wlan0: RX AssocResp from 38:2c:4a:5c:7f:e4 (capab=0x511 status=0 aid=54)
[   15.938792] wlan0: associated
[   15.938854] cfg80211: Calling CRDA for country: US
[   15.954889] wlan0: Limiting TX power to 30 (30 - 0) dBm as advertised by 38:2c:4a:5c:7f:e4
[   15.972480] cfg80211: Regulatory domain changed to country: US
[   15.972483] cfg80211:  DFS Master region: FCC
[   15.972485] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[   15.972487] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2700 mBm), (N/A)
[   15.972490] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 1700 mBm), (N/A)
[   15.972492] cfg80211:   (5250000 KHz - 5330000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (0 s)
[   15.972493] cfg80211:   (5490000 KHz - 5600000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (0 s)
[   15.972495] cfg80211:   (5650000 KHz - 5710000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (0 s)
[   15.972497] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 3000 mBm), (N/A)
[   15.972499] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 4000 mBm), (N/A)
[ 2238.567087] wlan0: Limiting TX power to 30 (30 - 0) dBm as advertised by 38:2c:4a:5c:7f:e4
Comment 14 Luca Coelho 2015-04-13 17:21:18 UTC
Oh, good news if setting the reg to US manually works. :)

We looked into this a bit further.  There's a new patch in 3.19 that adds a check for regulatory validity after the connection has been established.  This seems to be the code that is causing the deauth here.

Another observation is that cfg80211 (as you posted above) is reporting (5735000 KHz - 5835000 KHz @ 40000 KHz), meaning 40MHz max should be used.  But the association happens at 80MHz.  This could be why it's disconnecting, but I'm not sure yet.  Additionally, the upstream regdb says that 80MHz can be used in the US, so maybe you have an older version?

In any case, there are a few more things you could try to log for us:

1) Can you take trace-cmd logs (same events as before) containing the time when you *load* the iwlwifi+iwlmvm modules?

2) Get the information that "iw list" returns, before and after the connection.

3) Can you enable the CONFIG_CFG80211_REG_DEBUG Kconfig option in your kernel?

With this we can check what is changed from before and after the connection is established, as well as the information that is enforced in the firmware.
Comment 15 Ryan Finnie 2015-04-13 20:41:06 UTC
(In reply to Luca Coelho from comment #14)
> Oh, good news if setting the reg to US manually works. :)
> 
> We looked into this a bit further.  There's a new patch in 3.19 that adds a
> check for regulatory validity after the connection has been established. 
> This seems to be the code that is causing the deauth here.
> 
> Another observation is that cfg80211 (as you posted above) is reporting
> (5735000 KHz - 5835000 KHz @ 40000 KHz), meaning 40MHz max should be used. 
> But the association happens at 80MHz.  This could be why it's disconnecting,
> but I'm not sure yet.  Additionally, the upstream regdb says that 80MHz can
> be used in the US, so maybe you have an older version?

Yeah, that appears to be it.  Ubuntu vivid currently has wireless-regdb 2013.02.13, which is ancient and predates 80MHz VHT updates.  I'm currently working with the Ubuntu distro people[0] to try to get Debian sid's 2014.11.18 package (which is still a few releases behind vanilla, but much more modern) included with vivid before final freeze.

With 2014.11.18 installed, it works as expected on 4.0 (and 3.19 which vivid is to be released with) without having to force "iw reg set US", and looks like it stops the world/US/world/US flip-flopping I saw before.

[0] Full disclosure: I am a Canonical employee, but not a Ubuntu developer, so I don't have the authority to simply push an update.  Looks like downstream maintenance of wireless-regdb got lost in the shuffle; see https://bugs.launchpad.net/ubuntu/+source/wireless-regdb/+bug/1284093 .

> In any case, there are a few more things you could try to log for us:
> 
> 1) Can you take trace-cmd logs (same events as before) containing the time
> when you *load* the iwlwifi+iwlmvm modules?
> 
> 2) Get the information that "iw list" returns, before and after the
> connection.
> 
> 3) Can you enable the CONFIG_CFG80211_REG_DEBUG Kconfig option in your
> kernel?
> 
> With this we can check what is changed from before and after the connection
> is established, as well as the information that is enforced in the firmware.

I will try to get this done tonight.  Do you want me to try this with the old or the newer regdb?
Comment 16 Emmanuel Grumbach 2015-04-13 20:48:53 UTC
Cool. The regdb maintainer happens to be the wireless maintainer for Ubuntu and is CCed to this bug:-)
Comment 17 Emmanuel Grumbach 2015-04-16 07:26:24 UTC
Closing as the bug is not in the WiFi driver.