Bug 252352

Summary: nVidia CK804 USB wakes up 47/second
Product: [Fedora] Fedora Reporter: John Reiser <jreiser>
Component: esoundAssignee: Bastien Nocera <bnocera>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 8   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-08-19 22:03:43 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 204948    

Description John Reiser 2007-08-15 15:23:25 UTC
Description of problem:
powertop reports that nVidia CK804 usb wakes up 47/second on an "idle" Gnome
Desktop.  Nothing is plugged in to any USB port.  Both keyboard and mouse are
PS/2; reboot, disconnect PS/2 cables, replace with USB keyboard and USB mouse
has no effect.  Ethernet is using a PCI card with e100 driver (not the builtin
CK804 connection); forcedeth has been rmmod.

Version-Release number of selected component (if applicable):
kernel-2.6.23-0.104.rc3.fc8

How reproducible:
always

Steps to Reproduce:
1. powertop; kill sealert; set AC97 powersave; filesystems mounted 'noatime'
2.
3.
  
Actual results:
PowerTOP 1.7    (C) 2007 Intel Corporation 

Collecting data for 5 seconds 
< Detailed C-state information is only available on Mobile CPUs (laptops) >
P-states (frequencies)
Wakeups-from-idle per second : 119.0
no ACPI power usage estimate available
Top causes for wakeups:
  51.8% ( 46.8)       <interrupt> : ohci_hcd:usb1, NVidia CK804 
  15.0% ( 13.6)   at-spi-registry : schedule_timeout (process_timeout) 
  13.7% ( 12.4)                 X : do_setitimer (it_real_fn) 
   3.1% (  2.8)    gnome-terminal : schedule_timeout (process_timeout) 
   2.2% (  2.0)     <kernel core> : clocksource_register (clocksource_watchdog) 
   2.0% (  1.8)       <interrupt> : libata 
   1.8% (  1.6)   setroubleshootd : schedule_timeout (process_timeout) 
   1.1% (  1.0)            dhcdbd : schedule_timeout (process_timeout) 
   1.1% (  1.0)     <kernel core> : queue_delayed_work_on (delayed_work_timer_fn) 


Expected results:
No interrupts when no relevant devices are active.

Additional info:
# cat /proc/interrupts
           CPU0       
  0:       1045   IO-APIC-edge      timer
  1:       2159   IO-APIC-edge      i8042
  6:          2   IO-APIC-edge      floppy
  7:          1   IO-APIC-edge      parport0
  8:          0   IO-APIC-edge      rtc0
  9:          0   IO-APIC-fasteoi   acpi
 12:      19786   IO-APIC-edge      i8042
 14:      15152   IO-APIC-edge      libata
 15:        102   IO-APIC-edge      libata
 16:      29061   IO-APIC-fasteoi   ohci_hcd:usb1, NVidia CK804
 17:          0   IO-APIC-fasteoi   ehci_hcd:usb2
 18:        507   IO-APIC-fasteoi   sata_nv
 21:         19   IO-APIC-fasteoi   firewire_ohci
 22:       7301   IO-APIC-fasteoi   eth2
NMI:          0 
LOC:     119569 
ERR:          1
MIS:          0

# /sbin/lspci
00:00.0 Memory controller: nVidia Corporation CK804 Memory Controller (rev a3)
00:01.0 ISA bridge: nVidia Corporation CK804 ISA Bridge (rev a3)
00:01.1 SMBus: nVidia Corporation CK804 SMBus (rev a2)
00:02.0 USB Controller: nVidia Corporation CK804 USB Controller (rev a2)
00:02.1 USB Controller: nVidia Corporation CK804 USB Controller (rev a3)
00:04.0 Multimedia audio controller: nVidia Corporation CK804 AC'97 Audio
Controller (rev a2)
00:06.0 IDE interface: nVidia Corporation CK804 IDE (rev f2)
00:07.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev f3)
00:09.0 PCI bridge: nVidia Corporation CK804 PCI Bridge (rev a2)
00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev a3)
00:0b.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0c.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0d.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0e.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM
Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Miscellaneous Control
01:07.0 Ethernet controller: Linksys Gigabit Network Adapter (rev 10)
01:08.0 Ethernet controller: Intel Corporation 82559 InBusiness 10/100 (rev 08)
01:09.0 Ethernet controller: ADMtek NC100 Network Everywhere Fast Ethernet
10/100 (rev 11)
01:0c.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller
(rev 80)
05:00.0 VGA compatible controller: nVidia Corporation NV44 [GeForce 6200 LE]
(rev a1)

# /sbin/lspci -n
00:00.0 0580: 10de:005e (rev a3)
00:01.0 0601: 10de:0050 (rev a3)
00:01.1 0c05: 10de:0052 (rev a2)
00:02.0 0c03: 10de:005a (rev a2)
00:02.1 0c03: 10de:005b (rev a3)
00:04.0 0401: 10de:0059 (rev a2)
00:06.0 0101: 10de:0053 (rev f2)
00:07.0 0101: 10de:0054 (rev f3)
00:09.0 0604: 10de:005c (rev a2)
00:0a.0 0680: 10de:0057 (rev a3)
00:0b.0 0604: 10de:005d (rev a3)
00:0c.0 0604: 10de:005d (rev a3)
00:0d.0 0604: 10de:005d (rev a3)
00:0e.0 0604: 10de:005d (rev a3)
00:18.0 0600: 1022:1100
00:18.1 0600: 1022:1101
00:18.2 0600: 1022:1102
00:18.3 0600: 1022:1103
01:07.0 0200: 1737:1032 (rev 10)
01:08.0 0200: 8086:1030 (rev 08)
01:09.0 0200: 1317:0985 (rev 11)
01:0c.0 0c00: 1106:3044 (rev 80)
05:00.0 0300: 10de:0163 (rev a1)
# 
-----

Comment 1 Arjan van de Ven 2007-08-19 18:00:51 UTC
these 47 could well be ALSA sound.. do you have some sound thingy active? (even
if you're not playing sound)

Comment 2 John Reiser 2007-08-19 18:43:27 UTC
It seems to be "/usr/bin/esd -nobeeps" because killing it silences all "CK804"
interrupts.  The parent process is /usr/bin/gnome-session.  The sound-related
kernel modules that are loaded are:
----- /sbin/lsmod | grep snd
snd_intel8x0           30821  3 
snd_ac97_codec         93821  1 snd_intel8x0
ac97_bus                6337  1 snd_ac97_codec
snd_seq_dummy           6725  0 
snd_seq_oss            30673  0 
snd_seq_midi_event      9929  1 snd_seq_oss
snd_seq                46361  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device         10325  3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss            38625  0 
snd_mixer_oss          16969  1 snd_pcm_oss
snd_pcm                65389  4 snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd_timer              20957  3 snd_seq,snd_pcm
snd                    45189  13
snd_intel8x0,snd_ac97_codec,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
soundcore               9761  1 snd
snd_page_alloc         11209  2 snd_intel8x0,snd_pcm
-----
AC97 power-saving mode was invoked.

Comment 3 Arjan van de Ven 2007-08-19 20:30:56 UTC
ac97 power saving doesn't actually kick in until userspace stops using the sound
device....... and it seems esd is doing exactly that. It should close the sound
device if it's not using it.

Comment 4 Bastien Nocera 2007-08-19 22:03:43 UTC
(In reply to comment #3)
> ac97 power saving doesn't actually kick in until userspace stops using the sound
> device....... and it seems esd is doing exactly that. It should close the sound
> device if it's not using it.

No. ALSA shouldn't be generating interrupts when nothing is writing to the device.

*** This bug has been marked as a duplicate of 253445 ***