Hi Ferruh, There is latency in the range of milliseconds when packets are passed through KNI up to the IP stack. With CONFIG_RTE_KNI_PREEMPT_DEFAULT=n its required sacrifice a cpu core. Do you have any suggestion to improve latency without sacrificing a cpu?
What do you think about using cond_resched() instead of schedule_timeout_interruptible(), in our test it helped to reduce latency? Index: dpdk-stable-16.11.1/lib/librte_eal/linuxapp/kni/kni_misc.c =================================================================== --- dpdk/lib/librte_eal/linuxapp/kni/kni_misc.c +++ dpdk/lib/librte_eal/linuxapp/kni/kni_misc.c @@ -150,9 +150,8 @@ kni_thread_single(void *data) } up_read(&knet->kni_list_lock); #ifdef RTE_KNI_PREEMPT_DEFAULT - /* reschedule out for a while */ - schedule_timeout_interruptible( - usecs_to_jiffies(KNI_KTHREAD_RESCHEDULE_INTERVAL)); + /* reschedule out */ + cond_resched(); #endif } Regards, Nirmoy -- SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton HRB 21284 (AG Nürnberg) Maxfeldstr. 5 D-90409 Nürnberg / Phone: +49-911-740 18-4