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=E2=80=99m 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 =E2=80=98top =E2=80=93P=E2=80=99, cpu 2 is 100% free and different c=
pu is ~100% busy.



Thanks,

Chenna.



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