From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Niraj Sharma (nirajsha)" Subject: Re: l3fwd fails : Cause: Unable to create the l3fwd LPM table on socket 0 Date: Mon, 2 Jun 2014 20:10:14 +0000 Message-ID: References: <59AF69C657FD0841A61C55336867B5B01AA315AC@IRSMSX103.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable To: "dev-VfR2kkLFssw@public.gmane.org" Return-path: In-Reply-To: <59AF69C657FD0841A61C55336867B5B01AA315AC-kPTMFJFq+rELt2AQoY/u9bfspsVTdybXVpNB7YpNyf8@public.gmane.org> Content-Language: en-US Content-ID: <49CCD14C1509BD40B21B59F3F20E070C-WwaMAgPkaIIluPl5bxqUMw@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" Bruce, Thanks for the insight. I should be able to solve this problem based on this information. Once I understand the applications, I plan to deep dive into DPDK code. -- Niraj On 6/2/14 12:01 PM, "Richardson, Bruce" wrote: > > >> -----Original Message----- >> From: dev [mailto:dev-bounces-VfR2kkLFssw@public.gmane.org] On Behalf Of Niraj Sharma >>(nirajsha) >> Sent: Friday, May 30, 2014 7:59 PM >> To: dev-VfR2kkLFssw@public.gmane.org >> Subject: [dpdk-dev] l3fwd fails : Cause: Unable to create the l3fwd LPM >>table on >> socket 0 >> > >> .... >> EAL: Setting up memory... >> EAL: Ask a virtual area of 0x200000 bytes >> EAL: Virtual area found at 0x7f67b7800000 (size =3D 0x200000) >> EAL: Ask a virtual area of 0x7c00000 bytes >> EAL: Virtual area found at 0x7f67afa00000 (size =3D 0x7c00000) >> EAL: Ask a virtual area of 0x200000 bytes >> EAL: Virtual area found at 0x7f67af600000 (size =3D 0x200000) >> EAL: Requesting 64 pages of size 2MB from socket 0 > >Just by way of explanation, the 64 pages are getting mapped into three >blocks, two with a single page each, i.e. 2MB in size, and the rest as a >contiguous 124MB block. > >> EAL: TSC frequency is ~3491919 KHz >> EAL: WARNING: cpu flags constant_tsc=3Dyes nonstop_tsc=3Dno -> using >>unreliable >> clock cycles ! >> EAL: Master core 0 is ready (tid=3Db86e2800) >> EAL: PCI device 0000:00:03.0 on NUMA socket -1 >> EAL: probe driver: 1af4:1000 rte_virtio_pmd >> EAL: PCI Port IO found start=3D0xc000 with size=3D0x20 >> EAL: PCI device 0000:00:04.0 on NUMA socket -1 >> EAL: probe driver: 1af4:1000 rte_virtio_pmd >> EAL: PCI Port IO found start=3D0xc020 with size=3D0x20 >> EAL: PCI device 0000:00:05.0 on NUMA socket -1 >> EAL: probe driver: 1af4:1000 rte_virtio_pmd >> EAL: 0000:00:05.0 not managed by UIO driver, skipping >> Initializing port 0 ... Creating queues: nb_rxq=3D1 nb_txq=3D1... >> Address:00:40:47:1A:0A:44, All >> ocated mbuf pool on socket 0 >> LPM: Adding route 0x01010100 / 24 (0) >> LPM: Adding route 0x02010100 / 24 (1) >> LPM: Adding route 0x03010100 / 24 (2) >> LPM: Adding route 0x04010100 / 24 (3) >> LPM: Adding route 0x05010100 / 24 (4) >> LPM: Adding route 0x06010100 / 24 (5) >> LPM: Adding route 0x07010100 / 24 (6) >> LPM: Adding route 0x08010100 / 24 (7) >> LPM: LPM memory allocation failed >> EAL: Error - exiting with code: 1 >> Cause: Unable to create the l3fwd LPM table on socket 0 >>=20 > >The error message indicates that you are running out of memory, or >running out of contiguous memory on your system when running the >application. From the output, it looks like the LPM table for IPv4 is >getting created and 8 rules are getting added to it. However, thereafter >the application is attempting to create an LPM table for IPv6 traffic and >there is not enough memory available for this. >Running a quick test on my system, the l3fwd app is requesting just over >32MB of memory for the LPM4 table and 128MB of memory for the LPM6 one. >This size of memory requests would explain the observed behaviour, given >you only have 128MB of hugepage memory in total - and only 124MB of that >in a contiguous block, as can be seen from the statements mapping the >memory. > >Regards, >/Bruce