RE: Interrupt stom on cardbus device

From: Robert Noland <rnoland_at_FreeBSD.org>
Date: Sat, 28 Feb 2009 13:03:26 -0600
On Sat, 2009-02-28 at 21:40 +0300, Nasonov Sergey wrote:
> 
> > -----Original Message-----
> > From: Robert Noland [mailto:rnoland_at_FreeBSD.org]
> > Sent: Saturday, February 28, 2009 8:50 PM
> > To: Nasonov Sergey
> > Cc: freebsd-current_at_freebsd.org
> > Subject: RE: Interrupt stom on cardbus device
> > 
> > On Sat, 2009-02-28 at 20:38 +0300, Nasonov Sergey wrote:
> > > > Hrm, the intel driver is very noisy.  If the problem really is
> INTx,
> > > > then the drm debugging won't know anything about that.  Could you
> try
> > > > that patch that I posted later, without this patch to i915.  I've
> > > looked
> > > > over the linux pci code and they do disable INTx when enabling
> MSI.
> > > >
> > > > I stuck the patch up as
> > > > http://people.freebsd.org/~rnoland/pci_disable_intx.patch
> > >
> > > Great! After applying this patch the problem was resolved. Switch to
> VT
> > > an then back to X11 now work fine. Thanks!
> > 
> > Can you confirm that:
> > 
> > 1. Interrupts are still working (the msi ones)
> 
> Yes, there is pciconf output:
> > vmstat -i
> interrupt                          total       rate
> irq1: atkbd0                        1838          1
> irq9: acpi0                         2117          1
> irq12: psm0                        74850         58
> irq14: ata0                        10143          7
> irq16: cbb0 uhci2+                 34852         27
> irq19: ehci1                           2          0
> irq20: uhci0                          13          0
> irq22: ehci0                           2          0
> cpu0: timer                      2570905       1999
> irq256: em0                           19          0
> irq257: hdac0                         28          0
> cpu1: timer                      2569860       1998
> irq258: vgapci0                     2523          1
> Total                            5267152       4095

Ok, I'll wait for John to review this, but hopefully we can commit
something like this next week.  I think this is a case of a loose
interpretation of the pci spec.  It states that a device using MSI is
prohibited from using INTx, but I'm guessing that at least some of the
hardware guys felt that it was the drivers job to enforce that, while
others do it in hardware.

> and pciconf -lvc: 
> vgapci0_at_pci0:0:2:0:     class=0x030000 card=0x20b517aa chip=0x2a028086
> rev=0x0c hdr=0x00
>     vendor     = 'Intel Corporation'
>     device     = 'Mobile 965 Express Integrated Graphics Controller'
>     class      = display
>     subclass   = VGA
>     cap 05[90] = MSI supports 1 message
>     cap 01[d0] = powerspec 3  supports D0 D3  current D0
> 
> And from console (output after start X server):
> 
> drm0: <Intel i965GM> on vgapci0
> [drm:pid1408:drm_attach] MSI count = 1
> info: [drm] MSI enabled 1 message(s)
> [drm:pid1408:drm_load] 
> [drm:pid1408:drm_addmap] offset = 0xf8100000, size = 0x00100000, type =
> 1
> [drm:pid1408:drm_addmap] Added map 1 0xf8100000/0x100000
> [drm:pid1408:i915_init_phys_hws] Enabled hardware status page
> [drm:pid1408:drm_vblank_init] 
> vgapci0: child drm0 requested pci_enable_busmaster
> [drm:pid1408:drm_agp_init] agp_available = 1
> info: [drm] AGP at 0xe0000000 256MB
> [drm:pid1408:drm_ctxbitmap_next] drm_ctxbitmap_next bit : 0
> [drm:pid1408:drm_ctxbitmap_init] drm_ctxbitmap_init : 0
> info: [drm] Initialized i915 1.6.0 20080730
> 
> > 2. Interrupts are still working for other devices on the shared INTx
> 
> Hmm, How to determine which device need to be checked?
> Em0, hdac0 and ubsa0 modem work fine.

From the above vmstat output, it looks like you are still seeing
interrupts on irq 16, which is where the storm was, so I think things
are good.

robert.

> 
> 
> > 
> > robert.
> > 
> > > Sergey.
> > >
> > >
> > > >
> > > > robert.
> > > >
> > > > Robert Noland <rnoland_at_FreeBSD.org>
> > > > FreeBSD
> > > _______________________________________________
> > > freebsd-current_at_freebsd.org mailing list
> > > http://lists.freebsd.org/mailman/listinfo/freebsd-current
> > > To unsubscribe, send any mail to "freebsd-current-
> > unsubscribe_at_freebsd.org"
> > --
> > Robert Noland <rnoland_at_FreeBSD.org>
> > FreeBSD
-- 
Robert Noland <rnoland_at_FreeBSD.org>
FreeBSD

Received on Sat Feb 28 2009 - 18:03:37 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:42 UTC