Bug 57909

Summary: ACPI related slowness on an ASUS M2400N notebook
Product: Base System Reporter: Stefan Walter <sw>
Component: i386Assignee: njl
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: 5.1-RELEASE   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
dmesg.RELENG_5_1.working-pcm none

Description Stefan Walter 2003-10-12 20:00:36 UTC
I'm seeing the following problems on an ASUS M2400N notebook running
FreeBSD 5.1 (5.0 had the same issues):

- Occasionally, the whole system becomes *very* slow (including keyboard
  and touchpad/USB mouse). 'top -S' shows the three processes
  acpi-task{0,1,2} each at about 33%. Some time later, they get back to
  their normal values around 0% and the system is usable again. The
  duration of this slowness varies, and there isn't any obvious event
  starting or stopping it (although it *seems* like sometimes, pulling
  the AC adapter off or plugging it in helps).
- The described behaviour can often, but not always, be reproduced by
  booting the notebook with the AC adapter plugged in; then, the system
  is slow right after booting the kernel, so the execution of startup
  scripts takes up to 2-3 minutes. Booting on battery power and plugging
  in the AC adapter afterwards works fine.

Kernel configuration:
http://www.gegenunendlich.de/stuff/garuda/GARUDA
Dmesg right after booting:
http://www.gegenunendlich.de/stuff/garuda/garuda.dmesg
Output of acpiconf:
http://www.gegenunendlich.de/stuff/garuda/garuda.asl
http://www.gegenunendlich.de/stuff/garuda/garuda.dsdt

How-To-Repeat: See description.
Comment 1 njl freebsd_committer freebsd_triage 2003-10-13 17:38:08 UTC
Responsible Changed
From-To: freebsd-i386->njl

I'm looking into acpi problems.  This is probably an interrupt problem 
with the SCI.  Linux was having similar problems recently on the 
acpi-devel AT lists.sourceforge.net address.
Comment 2 Nate Lawson 2003-11-21 04:45:19 UTC
Info from the user.

---------- Forwarded message ----------
Date: 20 Nov 2003 20:25:56 +0100
From: sebastian ssmoller <sebastian.ssmoller@gmx.net>
To: Nate Lawson <nate@root.org>
Subject: Re: PR i386/57909

hi,
i did a cvsup today and rebuilt the kernel ... unfortunately the three
acpi_tasks are still there (comming up ca. 5 min after starting the
system) using 100% of my cpu. i attached my kernel conf, sysctl -a
output and dmesg.

meanwhile i installed a gentoo linux on my box and had the same acpi
problems first. then i applyed this patch :
http://sourceforge.net/mailarchive/message.php?msg_id=6103572
and now everything works fine

on linux i dumped the dsdt and used iasl to decompile and recompile it
which didnt work (compiler error 1037) so there could be a bug in the
asus asl code ?

let me know if u need more info or i can do more testing

regards,
sebastian

On Thu, 2003-11-20 at 00:32, Nate Lawson wrote:
> On Mon, 10 Nov 2003, Sebastian Ssmoller wrote:
> > i noticed that you are working on that pr. can you tell me what the current
> > status is?
> > i have the same problem on the same notebook with current (9.11.) running
> > which
> > makes the system nearly unusable :(
> >
> > if found out that the system runs stable only some minutes with ac plugged
> > in but
> > some hours without it. but finally it becomes very slow as described in the
> > pr.
>
> Sorry to take so long to respond.  If you can cvsup to today, you will
> have a new acpi_cpu driver and there have been a lot of changes in
> interrupt routing.  The problem in the PR is an interrupt storm and Linux
> (who we share some code with) has the same problem.  But the interrupt
> routing changes may help.
>
> Let me know how your testing goes.  Send a full dmesg if it isn't fixed.
>
> -Nate
>
Comment 3 Nate Lawson 2003-11-21 18:43:56 UTC
dmesg:
Copyright (c) 1992-2003 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD 5.1-CURRENT #0: Wed Nov 19 19:35:55 CET 2003
    root@hadriel.linnet:/usr/obj/usr/src/sys/DEBUG
Preloaded elf kernel "/boot/kernel/kernel" at 0xc0a49000.
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Pentium(R) M processor 1600MHz (1600.07-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x695  Stepping = 5
  Features=0xa7e9fbbf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,TM,PBE>
real memory  = 527695872 (503 MB)
avail memory = 502915072 (479 MB)
Pentium Pro MTRR support enabled
acpi0: <A M I  OEMRSDT > on motherboard
acpi0: Power Button (fixed)
Timecounter "ACPI-safe" frequency 3579545 Hz quality 1000
acpi_timer0: <24-bit timer at 3.579545MHz> port 0xe408-0xe40b on acpi0
acpi_cpu0: <CPU> on acpi0
acpi_tz0: <Thermal Zone> on acpi0
acpi_tz0: _CRT value is absurd, ignored (255.0C)
acpi_tz0: _PSV value is absurd, ignored (255.0C)
acpi_tz0: _ACx value is absurd, ignored (255.0C)
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pcib0: slot 2 INTA is routed to irq 5
pcib0: slot 29 INTA is routed to irq 5
pcib0: slot 29 INTB is routed to irq 5
pcib0: slot 29 INTC is routed to irq 5
pcib0: slot 29 INTD is routed to irq 4
pci0: <base peripheral> at device 0.1 (no driver attached)
pci0: <base peripheral> at device 0.3 (no driver attached)
agp0: <Intel 8285xM (85xGM GMCH) SVGA controller> port 0xdc00-0xdc07 mem 0xffa80000-0xffafffff,0xf0000000-0xf7ffffff irq 5 at device 2.0 on pci0
agp0: detected 8060k stolen memory
agp0: aperture size is 128M
pci0: <display> at device 2.1 (no driver attached)
uhci0: <Intel 82801DB (ICH4) USB controller USB-A> port 0xd480-0xd49f irq 5 at device 29.0 on pci0
usb0: <Intel 82801DB (ICH4) USB controller USB-A> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
ums0: Logitech Optical USB Mouse, rev 2.00/3.40, addr 2, iclass 3/1
ums0: 3 buttons and Z dir.
uhci1: <Intel 82801DB (ICH4) USB controller USB-B> port 0xd800-0xd81f irq 5 at device 29.1 on pci0
usb1: <Intel 82801DB (ICH4) USB controller USB-B> on uhci1
usb1: USB revision 1.0
uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
uhci2: <Intel 82801DB (ICH4) USB controller USB-C> port 0xd880-0xd89f irq 5 at device 29.2 on pci0
usb2: <Intel 82801DB (ICH4) USB controller USB-C> on uhci2
usb2: USB revision 1.0
uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub2: 2 ports with 2 removable, self powered
pci0: <serial bus, USB> at device 29.7 (no driver attached)
pcib1: <ACPI PCI-PCI bridge> at device 30.0 on pci0
pci1: <ACPI PCI bus> on pcib1
pcib1: slot 3 INTC is routed to irq 5
pcib1: slot 4 INTA is routed to irq 5
pcib1: slot 5 INTA is routed to irq 5
cbb0: <RF5C476 PCI-CardBus Bridge> at device 3.0 on pci1
cardbus0: <CardBus bus> on cbb0
pccard0: <16-bit PCCard bus> on cbb0
pcib1: slot 3 INTA is routed to irq 5
cbb0: [MPSAFE]
cbb1: <RF5C476 PCI-CardBus Bridge> at device 3.1 on pci1
cardbus1: <CardBus bus> on cbb1
pccard1: <16-bit PCCard bus> on cbb1
pcib1: slot 3 INTB is routed to irq 5
cbb1: [MPSAFE]
fwohci0: <Ricoh R5C552> mem 0xff7ef000-0xff7ef7ff irq 5 at device 3.2 on pci1
fwohci0: OHCI version 1.0 (ROM=1)
fwohci0: No. of Isochronous channel is 4.
fwohci0: EUI64 00:e0:18:00:03:11:f2:6f
fwohci0: Phy 1394a available S400, 2 ports.
fwohci0: Link S400, max_rec 2048 bytes.
firewire0: <IEEE1394(FireWire) bus> on fwohci0
fwe0: <Ethernet over FireWire> on firewire0
if_fwe0: Fake Ethernet address: 02:e0:18:11:f2:6f
sbp0: <SBP-2/SCSI over FireWire> on firewire0
fwohci0: Initiate bus reset
fwohci0: BUS reset
fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me)
firewire0: bus manager 0 (me)
rl0: <RealTek 8139 10/100BaseTX> port 0xc800-0xc8ff mem 0xff7efc00-0xff7efcff irq 5 at device 4.0 on pci1
rl0: Ethernet address: 00:0c:6e:f9:e2:25
miibus0: <MII bus> on rl0
rlphy0: <RealTek internal media interface> on miibus0
rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
pci1: <network> at device 5.0 (no driver attached)
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH4 UDMA100 controller> port 0xffa0-0xffaf,0-0x3,0-0x7,0-0x3,0-0x7 at device 31.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata0: [MPSAFE]
ata1: at 0x170 irq 15 on atapci0
ata1: [MPSAFE]
pci0: <multimedia, audio> at device 31.5 (no driver attached)
pci0: <simple comms> at device 31.6 (no driver attached)
acpi_button0: <Sleep Button> on acpi0
acpi_lid0: <Control Method Lid Switch> on acpi0
acpi_acad0: <AC Adapter> on acpi0
acpi_cmbat0: <Control Method Battery> on acpi0
atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
acpi_ec0: <Embedded Controller: GPE 0x1c> port 0x66,0x62 on acpi0
sio0: configured irq 3 not in bitmap of probed irqs 0
sio0: port may not be enabled
sio0 port 0x2f8-0x2ff irq 3 drq 1 on acpi0
sio0: type 16550A
fdc0: <Enhanced floppy controller (i82077, NE72065 or clone)> port 0x3f7,0x3f0-0x3f5 irq 6 drq 2 on acpi0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
ppc0 port 0x778-0x77f,0x378-0x37f irq 7 drq 3 on acpi0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/8 bytes threshold
ppbus0: <Parallel port bus> on ppc0
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
npx0: [FAST]
npx0: <math processor> on motherboard
npx0: INT 16 interface
orm0: <Option ROM> at iomem 0xc0000-0xccfff on isa0
pmtimer0 on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
Timecounter "TSC" frequency 1600065085 Hz quality 800
Timecounters tick every 10.000 msec
acpi_cpu: throttling enabled, 8 steps (100% to 12.5%), currently 100.0%
GEOM: create disk ad0 dp=0xc492c260
ad0: 57231MB <IC25N060ATMR04-0> [116280/16/63] at ata0-master UDMA100
acd0: CDRW <TOSHIBA DVD-ROM SD-R2312> at ata1-master PIO4
Mounting root from ufs:/dev/ad0s4a
acpi_tz0: _CRT value is absurd, ignored (255.0C)
acpi_tz0: _PSV value is absurd, ignored (255.0C)
acpi_tz0: _ACx value is absurd, ignored (255.0C)
acpi_tz0: _CRT value is absurd, ignored (255.0C)
acpi_tz0: _PSV value is absurd, ignored (255.0C)
acpi_tz0: _ACx value is absurd, ignored (255.0C)
Comment 4 njl freebsd_committer freebsd_triage 2003-11-21 21:26:35 UTC
State Changed
From-To: open->closed

A fix was committed in src/sys/contrib/dev/acpica/exfldio.c rev 1.1.1.20. 
It will appear in 5.2R.
Comment 5 Nate Lawson 2004-01-17 01:04:23 UTC
On Sat, 3 Jan 2004, Stefan Walter wrote:
> Kind of, running RELENG_5_2 from about a week ago now. What I didn't
> notice last time was that pcm(4) stopped working (also see the dmesg of
> my last mail or the one I sent to current@freebsd.org this week [1]):
>
> | pcm0: <Intel ICH4 (82801DB)> port 0xe100-0xe13f,0xe000-0xe0ff at device 31.5 on pci0
> | pcm0: unable to map IO port space
> | device_probe_and_attach: pcm0 attach returned 6
>
> The BIOS doesn't have any 'PNP OS' option I could turn off, and sound
> never worked without ACPI on this notebook.
>
> ...I just booted the notebook to send you an up-to-date dmesg, and
> noticed a few messages of this pattern: "ACPI-xxxx: *** Error: ...". I
> haven't seen those before, and when I turned the notebook off and
> rebooted (twice), they didn't appear again. Both dmesgs are attached to
> this mail.

Both dmesgs have the same error in it.  I think you sent me a duplicate.

-Nate
Comment 6 Stefan Walter 2004-01-17 11:00:12 UTC
Nate Lawson, 17.01.04, 02:04h CET:

> On Sat, 3 Jan 2004, Stefan Walter wrote:
> > Kind of, running RELENG_5_2 from about a week ago now. What I didn't
> > notice last time was that pcm(4) stopped working (also see the dmesg of
> > my last mail or the one I sent to current@freebsd.org this week [1]):
> >
> > | pcm0: <Intel ICH4 (82801DB)> port 0xe100-0xe13f,0xe000-0xe0ff at device 31.5 on pci0
> > | pcm0: unable to map IO port space
> > | device_probe_and_attach: pcm0 attach returned 6
> >
> > The BIOS doesn't have any 'PNP OS' option I could turn off, and sound
> > never worked without ACPI on this notebook.
> >
> > ...I just booted the notebook to send you an up-to-date dmesg, and
> > noticed a few messages of this pattern: "ACPI-xxxx: *** Error: ...". I
> > haven't seen those before, and when I turned the notebook off and
> > rebooted (twice), they didn't appear again. Both dmesgs are attached to
> > this mail.
> 
> Both dmesgs have the same error in it.  I think you sent me a duplicate.

No, one contains the "ACPI-xxxx: *** Error:" messages, one doesn't. Or
are you talking about pcm(4) now? I only have a single dmesg of
5.1-RELEASE that was in my original PR; it shows pcm was working/probed
correctly with 5.1. It's attached to this mail.

All three dmesgs are available at [1], too.

Stefan

[1]: http://www.gegenunendlich.de/stuff/garuda/