From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <navakanthdev@gmail.com> Received: from mail-wg0-f66.google.com (mail-wg0-f66.google.com [74.125.82.66]) by dpdk.org (Postfix) with ESMTP id 9FB5B7DEB for <dev@dpdk.org>; Sun, 26 Oct 2014 05:40:12 +0100 (CET) Received: by mail-wg0-f66.google.com with SMTP id l18so941855wgh.5 for <dev@dpdk.org>; Sat, 25 Oct 2014 21:48:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=K323R1V/CYcVZBDFGCxZCJqrMkVzthkYu3uio8VFMW4=; b=F7sGndBjl5jKn44DbFNqSC3vazXBVK6me6h4hlWag48UFM/pw4p5ZnM5Mw2EJShUGk HWyjDpKvRgBpxaM4x781NoN+UiISqDz4b48t9ewXofr58UVd9KeV4RLfB0+wI/1D5akn ZRz4M1TgXDMI5sLSpfpi5TWKRR+ycWy0UDNpn6BgnGPZl/7LhscbkaNGLVR1Wd0XKQc4 H1o3+A5nfXYSYdPU0V5jwGm9yjeUOTcmx6Ss/aNirB/5lbMlzA8DENdQKS5sV9qldE0D qz3H9SwZb1RMGJCa7slg3AJeOWRcKkrczurNAqKqCkqGkbiu0lazHg2VJ/845o1+7Ktu lsnw== MIME-Version: 1.0 X-Received: by 10.180.208.101 with SMTP id md5mr13864841wic.9.1414298929154; Sat, 25 Oct 2014 21:48:49 -0700 (PDT) Received: by 10.194.93.102 with HTTP; Sat, 25 Oct 2014 21:48:49 -0700 (PDT) In-Reply-To: <C68F1134885B32458704E1E4DA3E34F341A6544C@FMSMSX105.amr.corp.intel.com> References: <CAJuW35gvYkzOBE7PtOepj0YDGwb79OWGB_Bp1fo6vD5if+BEDQ@mail.gmail.com> <CAJuW35iS3s7yZai9Vqt7sycA7W8MNmBhe7fezq74wC3q9beQpQ@mail.gmail.com> <C68F1134885B32458704E1E4DA3E34F341A5ABE7@FMSMSX105.amr.corp.intel.com> <CAJuW35ib2CGvDvPctXPV6EkyLy-ZZuQ5sPSbGYYe8TbyDxwQeQ@mail.gmail.com> <C68F1134885B32458704E1E4DA3E34F341A5E69B@FMSMSX105.amr.corp.intel.com> <AA3F441F262C58498CD6D0C1801DE7EB0AB8AD49@SHSMSX103.ccr.corp.intel.com> <CAJuW35je-t4CeUO4pfozTdkOTCriz5cjqyCgLRr+ACcaZkhcWQ@mail.gmail.com> <C68F1134885B32458704E1E4DA3E34F341A6544C@FMSMSX105.amr.corp.intel.com> Date: Sun, 26 Oct 2014 10:18:49 +0530 Message-ID: <CAJuW35hUVowbJmRKzzN6s_2jZ=-6Qn9PxWqGZ-bZZULYuW9G2A@mail.gmail.com> From: Navakanth M <navakanthdev@gmail.com> To: "Patel, Rashmin N" <rashmin.n.patel@intel.com> Content-Type: text/plain; charset=ISO-8859-1 Cc: "dev@dpdk.org" <dev@dpdk.org> Subject: Re: [dpdk-dev] vmxnet3 pmd dev restart X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <http://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> X-List-Received-Date: Sun, 26 Oct 2014 04:40:13 -0000 Thanks a lot guys for your support. I have tried the patch by Yong Wang, stop and start functions are working fine with out any crash. I have noticed that tx/rx stats are being reset to 0. I am not sure if this is valid behavior as we do not reset stats to 0 when we do ifconfig down and ifconfig up. Thanks Navakanth On Mon, Oct 13, 2014 at 11:42 PM, Patel, Rashmin N <rashmin.n.patel@intel.com> wrote: > Waterman/Navakanth, we've got some patches posted for the same by Yong Wang@VMware. I haven't got the chance to look at it but if you can validate it, it'd be great. > > Thanks, > Rashmin > > -----Original Message----- > From: Navakanth M [mailto:navakanthdev@gmail.com] > Sent: Sunday, October 12, 2014 8:07 PM > To: Patel, Rashmin N; Cao, Waterman > Cc: stephen@networkplumber.org; dev@dpdk.org; Jiajia, SunX > Subject: Re: vmxnet3 pmd dev restart > > Hi Rashmin > > I have tried the memset change but still I am facing the problem which I pointed out earlier. After restart, packets are not being received in vmxnet3_recv_pkts(). > I have also observed PANIC in vmxnet3_tq_tx_complete() after couple of stop and start operations. > > PANIC in vmxnet3_tq_tx_complete(): > EOP desc does not point to a valid mbuf15: > [/lib64/libc.so.6(clone+0x6d) [0x7fd60354c52d]] > 1: [/mswitch/bin/sos.shumway.elf(rte_dump_stack+0x23) [0x463313]] > 2: [/mswitch/bin/sos.shumway.elf(__rte_panic+0xc1) [0x447ae8]] > 3: [/mswitch/bin/sos.shumway.elf(vmxnet3_xmit_pkts+0x382) [0x4f4f22]] > > Thanks > Navakanth > > On Fri, Oct 10, 2014 at 8:39 AM, Cao, Waterman <waterman.cao@intel.com> wrote: >> Hi Rashmin, >> >> We found similar issue when we start/stop vmnet dev several time. (> >> 3 times) It happens kernel panic, and sometimes kernel will occur core dump. >> Let me know if you want to submit patch to fix it. >> >> Thanks >> Waterman >> >> -----Original Message----- >>>From: Patel, Rashmin N >>>Sent: Friday, October 10, 2014 6:07 AM >>>To: Navakanth M; stephen@networkplumber.org; Cao, Waterman >>>Cc: dev@dpdk.org >>>Subject: RE: vmxnet3 pmd dev restart >>> >>>I just quickly looked into the code and instead of releasing memory or simply set it to NULL (patch: >>> http://thread.gmane.org/gmane.comp.networking.dpdk.devel/4683), you can zero it out and it should work perfectly, you can give it a quick try. >>> >>>//rte_free(ring->buf_info); >>>memset(ring->buf_info, 0x0, ring->size*sizeof(vmxnet3_buf_info_t)); >>> >>>This will not free the memory from heap but just wipe it out to 0x0, provided that we freed all the mbuf(s) pointed by each buf_info->m pointers. Hence you won't need to reallocate it when you start device after this stop. >>> >>>Thanks, >>>Rashmin >>> >>>-----Original Message----- >>>From: Navakanth M [mailto:navakanthdev@gmail.com] >>>Sent: Wednesday, October 08, 2014 10:11 PM >>>To: stephen@networkplumber.org; Patel, Rashmin N; Cao, Waterman >>>Cc: dev@dpdk.org >>>Subject: Re: vmxnet3 pmd dev restart >>> >>>I had tried with Stephen's patch but after stop is done and when we >>>call start it crashed at vmxnet3_dev_start()-> >>>vmxnet3_dev_rxtx_init()->vmxnet3_post_rx_bufs() as buf_info is freed >>>and is not allocated again. buf_info is allocated in >>>vmxnet3_dev_rx_queue_setup() which would be called once at the initialization only. >>>I also tried not freeing buf_info in stop but then i see different >>>issue after start, packets are not received due to check while >>>(rcd->gen == rxq->comp_ring.gen) { in vmxnet3_recv_pkts() >>> >>>Waterman, Have you got chance to test stop and start of vmnet dev if so did you notice any issue similar to this? >>> >>>Thanks >>>Navakanth >>> >>>On Thu, Oct 9, 2014 at 12:46 AM, Patel, Rashmin N <rashmin.n.patel@intel.com> wrote: >>>> Yes I had a local copy working with couple of lines fix. But someone else, I think Stephen added a fix patch for the same, and I assume if it's been merged, should be working, so did not follow up later. >>>> >>>> I don't have a VMware setup handy at moment but I think Waterman would have more information about testing that patch if he has found any issue with it. >>>> >>>> Thanks, >>>> Rashmin >>>> >>>> -----Original Message----- >>>> From: Navakanth M [mailto:navakanthdev@gmail.com] >>>> Sent: Wednesday, October 08, 2014 4:14 AM >>>> To: dev@dpdk.org; Patel, Rashmin N >>>> Subject: Re: vmxnet3 pmd dev restart >>>> >>>> Hi Rashmin >>>> >>>> I have come across your reply in following post that you have worked on this problem and would submit the patch for it. >>>> Can you please share information on the changes you worked on or patch log if you had submitted any for it? >>>> http://thread.gmane.org/gmane.comp.networking.dpdk.devel/4683 >>>> >>>> Thanks >>>> Navakanth >>>> >>>> On Tue, Sep 30, 2014 at 1:44 PM, Navakanth M <navakanthdev@gmail.com> wrote: >>>>> Hi >>>>> >>>>> I am using DPDKv1.7.0 running on Vmware Esxi 5.1 and am trying to >>>>> reset the port which uses pmd_vmnet3 library functions from below >>>>> function calls. >>>>> rte_eth_dev_stop >>>>> rte_eth_dev_start >>>>> >>>>> Doing this, i face panic while rte_free(ring->buf_info) in >>>>> Vmxnet3_cmd_ring_release(). >>>>> I have gone through following thread but the patch mentioned didn't >>>>> help rather it crashed in start function while accessing buf_info >>>>> in vmxnet3_post_rx_bufs. I see this buf_info is allocated in queue >>>>> setup functions which are called at initialization. >>>>> http://thread.gmane.org/gmane.comp.networking.dpdk.devel/4683 >>>>> >>>>> I tried not freeing it and then rx packets are not received due to >>>>> mismatch in while (rcd->gen == rxq->comp_ring.gen) in >>>>> vmxnet3_recv_pkts() >>>>> >>>>> To reset the device port, is this the right way what i am doing? >>>>> Or do I have to call vmxnet3_dev_tx_queue_setup() >>>>> vmxnet3_dev_rx_queue_setup() once stop is called? I have checked >>>>> recent patches and threads but did not get much information on this. >>>>> >>>>> Thanks >>>>> Navakanth