Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 Sep 2017 19:23:01 +0530
From:      Bhargava Chenna Marreddy <bhargava.marreddy@broadcom.com>
To:        freebsd-net@freebsd.org
Subject:   FreeBSD 12.0: IRQ pinning is not working as expected with cpuset
Message-ID:  <56aaecf133c6b3e8ea0e4bd10f6241ca@mail.gmail.com>

next in thread | raw e-mail | index | archive | help

Hi,



Can some please guide me in configuring IRQ pinning for Network driver?



Looks like IRQ pinning is not working as expected with cpuset command.



This is what I’m doing ..



1. Identify the IRQ number on rxq0

# vmstat -i | grep rxq0

irq271: bnxt0:rxq0 2 0



2. Read the current affinity mask:

#cpuset -g -x 271

irq 271 mask: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
18, 19, 20, 21, 22, 23



3. Set CPU2 for IRQ 271

# cpuset -l 2 -x 271



4. Make sure by reading back ..

# cpuset -g -x 271

irq 271 mask: 2



5. Start TCP traffic, interrupts will be coming into IRQ 271 (rxq0) but
different CPU will be processing then (but not CPU 2).

As per ‘top –P’, cpu 2 is 100% free and different cpu is ~100% busy.



Thanks,

Chenna.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56aaecf133c6b3e8ea0e4bd10f6241ca>