On Sun, Jun 14, 2015 at 9:07 PM, Zhang, Helin <helin.zhang at intel.com> wrote:
> Would it be better to modify the similar thing in kni_ioctl_create()? > That one doesn't need to use the "safe" version of list_for_each_entry() either, but it isn't in the packet processing path so the minor performance improvement doesn't really matter. > > - Helin > > > -----Original Message----- > > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Jay Rolette > > Sent: Thursday, June 4, 2015 3:19 AM > > To: dev at dpdk.org > > Subject: [dpdk-dev] [PATCH 1/3] kni: minor opto > > > > Don't need the 'safe' version of list_for_each_entry() if you aren't > deleting from > > the list as you iterate over it > > > > Signed-off-by: Jay Rolette <rolette at infiniteio.com> > > --- > > lib/librte_eal/linuxapp/kni/kni_misc.c | 5 ++--- > > 1 file changed, 2 insertions(+), 3 deletions(-) > > > > diff --git a/lib/librte_eal/linuxapp/kni/kni_misc.c > > b/lib/librte_eal/linuxapp/kni/kni_misc.c > > index 1935d32..312f196 100644 > > --- a/lib/librte_eal/linuxapp/kni/kni_misc.c > > +++ b/lib/librte_eal/linuxapp/kni/kni_misc.c > > @@ -213,13 +213,12 @@ static int > > kni_thread_single(void *unused) > > { > > int j; > > - struct kni_dev *dev, *n; > > + struct kni_dev *dev; > > > > while (!kthread_should_stop()) { > > down_read(&kni_list_lock); > > for (j = 0; j < KNI_RX_LOOP_NUM; j++) { > > - list_for_each_entry_safe(dev, n, > > - &kni_list_head, list) { > > + list_for_each_entry(dev, &kni_list_head, list) { > > #ifdef RTE_KNI_VHOST > > kni_chk_vhost_rx(dev); > > #else > > -- > > 2.3.2 (Apple Git-55) > >