CPU selection for ithreads on 8.3

Ryan Stone rysto32 at gmail.com
Wed May 2 21:28:47 UTC 2012


On Wed, May 2, 2012 at 5:16 PM, Navdeep Parhar <np at freebsd.org> wrote:
> There seems to be a regression in 8.3 in the way the kernel selects CPUs
> for interrupts.  For example, cxgb(4) on 8.3 ends up with all
> its ithreads on the same CPU (CPU7 in this case).
>
> 12 root     -68    -     0K   816K WAIT    7   0:55  0.00% intr{irq279:
> cxgbc0}
> 12 root     -68    -     0K   816K WAIT    7   0:52  0.00% intr{irq275:
> cxgbc0}
> 12 root     -68    -     0K   816K WAIT    7   0:47  0.00% intr{irq278:
> cxgbc0}
> 12 root     -68    -     0K   816K WAIT    7   0:43  0.00% intr{irq277:
> cxgbc0}
> 12 root     -68    -     0K   816K WAIT    7   0:43  0.00% intr{irq282:
> cxgbc0}
> 12 root     -68    -     0K   816K WAIT    7   0:41  0.00% intr{irq281:
> cxgbc0}
> 12 root     -68    -     0K   816K WAIT    7   0:32  0.00% intr{irq276:
> cxgbc0}
> 12 root     -68    -     0K   816K WAIT    7   0:31  0.00% intr{irq280:
> cxgbc0}
>
> Back in the day there used to be code in cxgb to bind different
> interrupts to different CPUs but it was removed because the kernel
> distributed them across CPUs anyway.  So what changed?  This appears 8.3
> specific.  I don't see it on head and I don't have a 9 system readily
> available right now.

Does r232757 fix this?  That just missed 8.3-RELEASE.


More information about the freebsd-hackers mailing list