Fwd: Interrupt Overload

Konstantin Belousov kostikbel at gmail.com
Sat Jun 7 18:41:37 UTC 2014


On Sat, Jun 07, 2014 at 08:21:08PM +0200, Dutch Ingraham wrote:
> 
> 
> > Sent: Saturday, June 07, 2014 at 1:57 PM
> > From: "Konstantin Belousov" <kostikbel at gmail.com>
> > To: "Dutch Ingraham" <stoa at gmx.us>
> > Cc: freebsd-hackers at freebsd.org
> > Subject: Re: Fwd: Interrupt Overload
> >
> > On Sat, Jun 07, 2014 at 12:48:16PM -0400, Dutch Ingraham wrote:
> > > On 06/07/2014 12:04 PM, Vladislav Prodan wrote:
> > > > 
> > > > 
> > > >  
> > > >  --- Original message ---
> > > >  From: "Dutch Ingraham" <stoa at gmx.us>
> > > >  Date: 7 June 2014, 18:33:12
> > > >   
> > > > 
> > > >>
> > > >> Thanks for the response.
> > > >>
> > > >> The output you requested:
> > > >>
> > > >> kern.eventtimer.choice: HPET1 (440) HPET2 (440) HPET3 (440) HPET4 (440)
> > > >> HPET5 (440) HPET6 (440) LAPIC (400) i8254 (100) RTC (0)
> > > >>
> > > >> kern.eventtimer.choice: HPET (did not specify 1, 2, etc.)
> > > >>
> > > >> I also changed the type of timer to LAPIC and rebooted; there was no
> > > >> appreciable change in the interrupt activity.
> > > > 
> > > > After reboot what became timer? :)
> > > > 
> > > > You can change the timer "on the fly", without rebooting the system.
> > > > 
> > > > If LAPIC does not help, then try other timers.
> > > > 
> > > > 
> > > > --
> > > >  Vladislav V. Prodan
> > > >  System & Network Administrator
> > > >  support.od.ua
> > > >  
> > > > _______________________________________________
> > > > freebsd-hackers at freebsd.org mailing list
> > > > http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> > > > To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"
> > > > 
> > > 
> > > You're right, it is not persistent.  I changed to each different event
> > > timer and the only one that made a difference was the i8254; that
> > > dropped the cpu load from 30% to 10-12%.  Much better, but still of
> > > course not acceptable for a Core II-Duo running at 3.0GHz.  The load
> > > averages shown in <top> do also drop proportionally.  Interestingly,
> > > though, <systat -vmstat> shows the same interrupt rate - 325K/sec.
> > > 
> > > What do you make of the fact that when I suspend with <<acpiconf -s 3>
> > > and then wake-up, everything is absolutely normal, regardless of event
> > > timer type?
> > 
> > You did not shown _useful_ output of vmstat -i.  Do it when the storm
> > occurs.  Also, show the pciconf -lvc output on the machine.
> > 
> 
> Sorry - I was entering that output by hand, so truncated what I thought was not useful.  
> In addition, the storm is always occurring, unless I put the machine to sleep and then wake-up.
> 
> Here is the full vmstat -i:
> 
> dutch:~:# vmstat -i
> interrupt                          total       rate
> irq1: atkbd0                          48          0
> irq0: attimer0                  12236927       1178
> irq8: atrtc0                      146537         14
> irq16: uhci0                  3362560857     323946
> irq18: atapci0+                    19828          1
> irq23: uhci3 ehci1                     2          0
> cpu0:timer                        163301         15
> irq256: hpet0:t0                 4516011        435
> irq257: hpet0:t1                   83960          8
> irq264: em0                        31799          3
> irq265: hdac0                         95          0
> irq266: ahci0:ch0                   8423          0
> irq267: ahci0:ch1                  15620          1
> cpu1:timer                          1229          0
> irq274: vgapci0                    10041          0
> Total                         3379794678     325606
> dutch:~:#
> 
> And here is pciconf -lvc:
> 
> dutch:~:# pciconf -lvc
> hostb0 at pci0:0:0:0:	class=0x060000 card=0x04201028 chip=0x2e108086 rev=0x03 hdr=0x00
>     vendor     = 'Intel Corporation'
>     device     = '4 Series Chipset DRAM Controller'
>     class      = bridge
>     subclass   = HOST-PCI
>     cap 09[e0] = vendor (length 12) Intel cap 6 version 1
> pcib1 at pci0:0:1:0:	class=0x060400 card=0x04201028 chip=0x2e118086 rev=0x03 hdr=0x01
>     vendor     = 'Intel Corporation'
>     device     = '4 Series Chipset PCI Express Root Port'
>     class      = bridge
>     subclass   = PCI-PCI
>     cap 0d[88] = PCI Bridge card=0x04201028
>     cap 01[80] = powerspec 3  supports D0 D3  current D0
>     cap 05[90] = MSI supports 1 message 
>     cap 10[a0] = PCI-Express 2 root port slot max data 128(128) link x0(x16)
>                  speed 0.0(5.0) ASPM disabled(L0s)
>     ecap 0002[100] = VC 1 max VC0
>     ecap 0005[140] = Root Complex Link Declaration 1
> vgapci0 at pci0:0:2:0:	class=0x030000 card=0x04201028 chip=0x2e128086 rev=0x03 hdr=0x00
>     vendor     = 'Intel Corporation'
>     device     = '4 Series Chipset Integrated Graphics Controller'
>     class      = display
>     subclass   = VGA
>     cap 05[90] = MSI supports 1 message enabled with 1 message
>     cap 01[d0] = powerspec 2  supports D0 D3  current D0

Try to set the tunable hw.drm.msi to 0 before i915 driver is loaded.
I.e. the easiest is to set it at loader prompt.  If you load driver
by starting Xorg, then kenv hw.drm.msi=0 would be enough.

Either way, helped it or not, post the vmstat -i output while the Xorg
is running.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20140607/64a7f3f4/attachment.sig>


More information about the freebsd-hackers mailing list