lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 01 Jan 2013 22:34:58 +0400
From:	Konstantin Khlebnikov <khlebnikov@...nvz.org>
To:	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	linux-pci@...r.kernel.org, Bjorn Helgaas <bhelgaas@...gle.com>
Subject: [REGRESSION 3.8-r1] broken pci irq/pm state for e1000e device

Seems like it's unrelated to e1000e driver itself, because I tried to
revert all it's changes down to 3.6 one by one and it does not help.

Looks like regression somewhere in pci-bus irq or power-management.
because I see underflow of counter pci_dev->enable_cnt:

root@...g:/sys/bus/pci/devices# cat 0000\:00\:19.0/enable ; modprobe e1000e ; sleep 2 ; rmmod e1000e ; cat 0000\:00\:19.0/enable
4294967288
4294967287

without sleep in the middle it does not work

my kernel config in attachment
hardware: lenovo thinkpad x220

root@...g:/sys/bus/pci/devices# uname -a
Linux zurg 3.8.0-rc1-zurg-00091-g4a490b7 #632 SMP Tue Jan 1 20:02:31 MSK 2013 x86_64 GNU/Linux

---

Right after boot it looks like this:

root@...g:/sys/bus/pci/devices# lspci
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04)
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)
00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b4)
00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b4)
00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b4)
00:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b4)
00:1c.6 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 7 (rev b4)
00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation QM67 Express Chipset Family LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 04)
00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 04)
03:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8188CE 802.11b/g/n WiFi Adapter
0d:00.0 System peripheral: Ricoh Co Ltd MMC/SD Host Controller (rev 07)
0e:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04)

root@...g:/sys/bus/pci/devices# cat 0000\:00\:19.0/irq
20
root@...g:/sys/bus/pci/devices# cat 0000\:00\:19.0/enable
0

here must be '1', not '0'

root@...g:/sys/bus/pci/devices# dmesg | grep e1000e
[    1.271303] e1000e: Intel(R) PRO/1000 Network Driver - 2.1.4-k
[    1.271303] e1000e: Copyright(c) 1999 - 2012 Intel Corporation.
[    1.271344] e1000e 0000:00:19.0: setting latency timer to 64
[    1.273035] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[    1.274217] e1000e 0000:00:19.0: irq 48 for MSI/MSI-X
[    1.468660] e1000e 0000:00:19.0 eth0: (PCI Express:2.5GT/s:Width x1) f0:de:f1:87:98:02
[    1.471679] e1000e 0000:00:19.0 eth0: Intel(R) PRO/1000 Network Connection
[    1.473344] e1000e 0000:00:19.0 eth0: MAC: 10, PHY: 11, PBA No: 1000FF-0FF
[    6.034076] e1000e 0000:00:19.0: irq 48 for MSI/MSI-X
[    6.135039] e1000e 0000:00:19.0: irq 48 for MSI/MSI-X

root@...g:/sys/bus/pci/devices# cat /proc/interrupts
            CPU0       CPU1       CPU2       CPU3
   0:         28          0          0          0  IR-IO-APIC-edge      timer
   1:       3198          0          0          0  IR-IO-APIC-edge      i8042
   8:          1          0          0          0  IR-IO-APIC-edge      rtc0
   9:        564          0          0          0  IR-IO-APIC-fasteoi   acpi
  12:      37034          0          0          0  IR-IO-APIC-edge      i8042
  16:         93          0          0          0  IR-IO-APIC-fasteoi   ehci_hcd:usb1, mmc0
  18:          0          0          0          0  IR-IO-APIC-fasteoi   i801_smbus
  23:        447          0          0          0  IR-IO-APIC-fasteoi   ehci_hcd:usb2
  40:          0          0          0          0  DMAR_MSI-edge      dmar0
  41:          0          0          0          0  DMAR_MSI-edge      dmar1
  42:      34463          0          0          0  IR-PCI-MSI-edge      ahci
  43:          1          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  44:          0          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  45:          0          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  46:          0          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  47:          0          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  48:      16487          0          0          0  IR-PCI-MSI-edge      iwlwifi
  49:         25          0          0          0  IR-PCI-MSI-edge      mei
  50:      10166          0          0          0  IR-PCI-MSI-edge      i915
  51:        213          0          0          0  IR-PCI-MSI-edge      snd_hda_intel
NMI:          0          0          0          0   Non-maskable interrupts
LOC:      42979      14460      30130      16998   Local timer interrupts
SPU:          0          0          0          0   Spurious interrupts
PMI:          0          0          0          0   Performance monitoring interrupts
IWI:          0          0          0          0   IRQ work interrupts
RTR:          0          0          0          0   APIC ICR read retries
RES:      15239      19431       1569        823   Rescheduling interrupts
CAL:         62         73         65         70   Function call interrupts
TLB:        376        616        380        560   TLB shootdowns
TRM:          0          0          0          0   Thermal event interrupts
THR:          0          0          0          0   Threshold APIC interrupts
MCE:          0          0          0          0   Machine check exceptions
MCP:          3          3          3          3   Machine check polls
ERR:          0
MIS:          0

devices not see carrier signal:

root@...g:/sys/bus/pci/devices# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: sit0: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT
     link/sit 0.0.0.0 brd 0.0.0.0
3: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT qlen 1000
     link/ether f0:de:f1:87:98:02 brd ff:ff:ff:ff:ff:ff
4: wwan0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT qlen 1000
     link/ether 02:80:37:ec:02:00 brd ff:ff:ff:ff:ff:ff
5: tap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br0 state UNKNOWN mode DEFAULT qlen 500
     link/ether 7e:28:c2:97:d5:f7 brd ff:ff:ff:ff:ff:ff
6: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT
     link/ether 7e:28:c2:97:d5:f7 brd ff:ff:ff:ff:ff:ff
7: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000
     link/ether 00:16:eb:1e:7b:10 brd ff:ff:ff:ff:ff:ff


after s2ram suspend-resume cycle device uses other irq and starts working:

[ 1035.674907] e1000e: Intel(R) PRO/1000 Network Driver - 2.1.4-k
[ 1035.674917] e1000e: Copyright(c) 1999 - 2012 Intel Corporation.
[ 1035.674998] e1000e 0000:00:19.0: setting latency timer to 64
[ 1035.675229] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[ 1035.675336] e1000e 0000:00:19.0: irq 52 for MSI/MSI-X
[ 1035.869874] e1000e 0000:00:19.0 eth0: (PCI Express:2.5GT/s:Width x1) f0:de:f1:87:98:02
[ 1035.869886] e1000e 0000:00:19.0 eth0: Intel(R) PRO/1000 Network Connection
[ 1035.869959] e1000e 0000:00:19.0 eth0: MAC: 10, PHY: 11, PBA No: 1000FF-0FF
[ 1036.005531] e1000e 0000:00:19.0: irq 52 for MSI/MSI-X
[ 1036.106151] e1000e 0000:00:19.0: irq 52 for MSI/MSI-X
[ 1038.933035] e1000e 0000:00:19.0: irq 52 for MSI/MSI-X
[ 1039.742505] e1000e 0000:00:19.0: System wakeup enabled by ACPI
[ 1040.368054] e1000e 0000:00:19.0: System wakeup disabled by ACPI
[ 1040.368159] e1000e 0000:00:19.0: irq 51 for MSI/MSI-X
[ 1044.552071] e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx

root@...g:/sys/bus/pci/devices# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: sit0: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT
     link/sit 0.0.0.0 brd 0.0.0.0
5: tap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br0 state UNKNOWN mode DEFAULT qlen 500
     link/ether 7e:28:c2:97:d5:f7 brd ff:ff:ff:ff:ff:ff
6: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT
     link/ether 7e:28:c2:97:d5:f7 brd ff:ff:ff:ff:ff:ff
7: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000
     link/ether 00:16:eb:1e:7b:10 brd ff:ff:ff:ff:ff:ff
28: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
     link/ether f0:de:f1:87:98:02 brd ff:ff:ff:ff:ff:ff
29: wwan0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT qlen 1000
     link/ether 02:80:37:ec:02:00 brd ff:ff:ff:ff:ff:ff

root@...g:/sys/bus/pci/devices# cat /proc/interrupts
            CPU0       CPU1       CPU2       CPU3
   0:         28          0          0          0  IR-IO-APIC-edge      timer
   1:       7705          0          0          0  IR-IO-APIC-edge      i8042
   8:          1          0          0          0  IR-IO-APIC-edge      rtc0
   9:        816          0          0          0  IR-IO-APIC-fasteoi   acpi
  12:      62277          0          0          0  IR-IO-APIC-edge      i8042
  16:        158          0          0          0  IR-IO-APIC-fasteoi   ehci_hcd:usb1, mmc0
  18:          0          0          0          0  IR-IO-APIC-fasteoi   i801_smbus
  23:       1265          0          0          0  IR-IO-APIC-fasteoi   ehci_hcd:usb2
  40:          0          0          0          0  DMAR_MSI-edge      dmar0
  41:          0          0          0          0  DMAR_MSI-edge      dmar1
  42:      36542          0          0          0  IR-PCI-MSI-edge      ahci
  43:          1          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  44:          0          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  45:          0          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  46:          0          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  47:          0          0          0          0  IR-PCI-MSI-edge      xhci_hcd
  48:      32379          0          0          0  IR-PCI-MSI-edge      iwlwifi
  49:         22          0          0          0  IR-PCI-MSI-edge      mei
  50:      25082          0          0          0  IR-PCI-MSI-edge      i915@pci:0000:00:02.0
  51:        201          0          0          0  IR-PCI-MSI-edge      eth0
  52:        103          0          0          0  IR-PCI-MSI-edge      snd_hda_intel
NMI:          0          0          0          0   Non-maskable interrupts
LOC:      72476      28194      54442      30290   Local timer interrupts
SPU:          0          0          0          0   Spurious interrupts
PMI:          0          0          0          0   Performance monitoring interrupts
IWI:          0          0          0          0   IRQ work interrupts
RTR:          0          0          0          0   APIC ICR read retries
RES:      30653      32541       2303       1235   Rescheduling interrupts
CAL:        123        151        132        142   Function call interrupts
TLB:        546        848        555        777   TLB shootdowns
TRM:          0          0          0          0   Thermal event interrupts
THR:          0          0          0          0   Threshold APIC interrupts
MCE:          0          0          0          0   Machine check exceptions
MCP:          7          7          7          7   Machine check polls
ERR:          0
MIS:          0


View attachment ".config" of type "text/plain" (84086 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ