high system load when using i915kms

Max Brazhnikov makc at freebsd.org
Thu Mar 14 12:20:41 UTC 2013


On Tue, 12 Mar 2013 19:57:30 +0200 Konstantin Belousov wrote:
> On Tue, Mar 12, 2013 at 04:53:25PM +0000, Max Brazhnikov wrote:
> > On Fri, 08 Mar 2013 11:38:13 -0800 Kevin Oberman wrote:
> > > On Fri, Mar 8, 2013 at 10:03 AM, Max Brazhnikov <makc at freebsd.org> wrote:
> > > >   PID USERNAME     THR PRI NICE   SIZE    RES STATE   C   TIME   WCPU
> > > > COMMAND
> > > >    11 root           2 155 ki31     0K    32K RUN     1   4:16 120.35% 
> > idle
> > > >    12 root          18 -84    -     0K   288K WAIT    0   0:57 76.34% intr
> > > >
> > > > I've got this after second boot today, although I couldn't reproduce it
> > > > yesterday even after ten attempts. But sometimes it's quite nasty and I
> > > > have
> > > > to reboot the system several times to get rid of it.
> > > >
> > > > Max
> > > >
> > > 
> > > So the issue is that that the interrupts from one or another of the USB
> > > devices has exploded from near zero to around 40K when the kernel module is
> > > loaded?
> > 
> > Exactly.
> > 
> > > A couple of possibly irrelevant questions. Do you normally manually load
> > > the module? I did not research the issue, but when I manually load the
> > > module I was seeing things just grind to a halt. If I started Gnome, the
> > > module was loaded automatically by X, and things worked.
> > 
> > No I don't usually load it manually, I was just wondering what causes the 
> > interrupt storm.
> > 
> > > Why loading the Intel KMS module would cause a massive increase in
> > > interrupts on a USB interface completely baffles me, but I suspect some
> > > sort of race is going on when the module is pre-loaded.
> > 
> > It happens if I allow X to load the module also, the problem is not due to 
> > pre-loading.
> 
> As I said earlier, change in the userspace cannot change the interrupt
> routing. What could happen (with very low probability) is that some
> kind of display interrupt get aliased to the non-msi one. Since it is
> unacknowledged, it causes the storm on the legacy irq line. But I never
> saw this on G[M]4*.
> 
> Just as the blind shot, try to set hw.drm.msi=0 in the loader.conf
> or using the kenv, before the i915kms module is loaded.

Nice shot, it does make the difference! I've never seen the problem after
adding hw.drm.msi=0 to the loader.conf.

Max


More information about the freebsd-x11 mailing list