Mailing List Archive

PF_RING 7.x, ZeroCopy and ksoftirqd
Hello and thank you for PF_RING.

I have a problem with ZeroCopy that does not work with ZC interface label:

/opt/pfring/sbin/zbalance_ipc -i zc:eth4 -c 20 -n 14 -g 17 -m 1 -q 2048
29/Sep/2018 15:36:17 [zbalance_ipc.c:878] ERROR: pfring_zc_open_device
error [Socket operation on non-socket] Please check that zc:eth4 is up and
not already used

Without "zc" interface label it works fine:

/opt/pfring/sbin/zbalance_ipc -i eth4 -c 2 -n 14 -g 17 -m 1 -q 2048
02/Oct/2018 20:59:30 [zbalance_ipc.c:1034] Starting balancer with 14
consumer queues..
02/Oct/2018 20:59:30 [zbalance_ipc.c:1044] Run your application instances
as follows:
02/Oct/2018 20:59:30 [zbalance_ipc.c:1049] pfcount -i zc:2@0
02/Oct/2018 20:59:30 [zbalance_ipc.c:1049] pfcount -i zc:2@1
02/Oct/2018 20:59:30 [zbalance_ipc.c:1049] pfcount -i zc:2@2


But it also causes an interrupt storm that consumes ksoftirqd for the
pinned CPU:

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+
COMMAND

108 root 20 0 0 0 0 R 100.0 0.0 6:19.82
ksoftirqd/16

490 root 20 0 1171116 3204 1864 S 24.5 0.0 0:04.03
zbalance_ipc

This should not happen. On another server with PF_RING 6.x the ZC
interface label works fine and there is no issue with ksoftirqd.

I use the standard load_driver.sh script to load the pf_ring and ixgbe
kernel modules.

What do you suggest I review ? Many thanks.


Hovsep
Re: PF_RING 7.x, ZeroCopy and ksoftirqd [ In reply to ]
I forgot about my testing using CPU 17 with previous post.

This is a test using CPU 16 which is the first CPU on the local NUMA node
where the NIC is attached.

/opt/pfring/sbin/zbalance_ipc -i eth4 -c 2 -n 14 -g 16 -m 1 -q 2048

ksoftirqd will spend 50% of CPU time dealing with interrupts. Maybe
because not using the "ZC" interface label.

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+
COMMAND

108 root 20 0 0 0 0 R 50.0 0.0 9:04.96
ksoftirqd/16

2848 root 20 0 1171116 3248 1916 S 50.0 0.0 0:04.08
zbalance_ipc

Why does the interface label "zc" not work with 7.x ?
Re: PF_RING 7.x, ZeroCopy and ksoftirqd [ In reply to ]
Hi Hovsep
please provide /proc/net/pf_ring/dev/eth4/info

Alfredo

> On 3 Oct 2018, at 17:21, Hovsep Levi <hovsep.sanjay.levi@gmail.com> wrote:
>
> I forgot about my testing using CPU 17 with previous post.
>
> This is a test using CPU 16 which is the first CPU on the local NUMA node where the NIC is attached.
>
> /opt/pfring/sbin/zbalance_ipc -i eth4 -c 2 -n 14 -g 16 -m 1 -q 2048
>
> ksoftirqd will spend 50% of CPU time dealing with interrupts. Maybe because not using the "ZC" interface label.
>
> PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
> 108 root 20 0 0 0 0 R 50.0 0.0 9:04.96 ksoftirqd/16
> 2848 root 20 0 1171116 3248 1916 S 50.0 0.0 0:04.08 zbalance_ipc
>
> Why does the interface label "zc" not work with 7.x ?
>
>
> _______________________________________________
> Ntop-misc mailing list
> Ntop-misc@listgateway.unipi.it
> http://listgateway.unipi.it/mailman/listinfo/ntop-misc

_______________________________________________
Ntop-misc mailing list
Ntop-misc@listgateway.unipi.it
http://listgateway.unipi.it/mailman/listinfo/ntop-misc
Re: PF_RING 7.x, ZeroCopy and ksoftirqd [ In reply to ]
Thank you. I was able to see the Polling Mode and Family was incorrect
because the PF_RING ixgbe.ko was not loaded.

My installation failed because there is was no install target for the ixgbe
Makefile. It now works correctly.

Hovsep


On Wed, Oct 3, 2018 at 4:51 PM Alfredo Cardigliano <cardigliano@ntop.org>
wrote:

> Hi Hovsep
> please provide /proc/net/pf_ring/dev/eth4/info
>
> Alfredo
>
> > On 3 Oct 2018, at 17:21, Hovsep Levi <hovsep.sanjay.levi@gmail.com>
> wrote:
> >
> > I forgot about my testing using CPU 17 with previous post.
> >
> > This is a test using CPU 16 which is the first CPU on the local NUMA
> node where the NIC is attached.
> >
> > /opt/pfring/sbin/zbalance_ipc -i eth4 -c 2 -n 14 -g 16 -m 1 -q 2048
> >
> > ksoftirqd will spend 50% of CPU time dealing with interrupts. Maybe
> because not using the "ZC" interface label.
> >
> > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+
> COMMAND
>
> > 108 root 20 0 0 0 0 R 50.0 0.0 9:04.96
> ksoftirqd/16
>
> > 2848 root 20 0 1171116 3248 1916 S 50.0 0.0 0:04.08
> zbalance_ipc
> >
> > Why does the interface label "zc" not work with 7.x ?
> >
> >
> > _______________________________________________
> > Ntop-misc mailing list
> > Ntop-misc@listgateway.unipi.it
> > http://listgateway.unipi.it/mailman/listinfo/ntop-misc
>
> _______________________________________________
> Ntop-misc mailing list
> Ntop-misc@listgateway.unipi.it
> http://listgateway.unipi.it/mailman/listinfo/ntop-misc
>