Storage Performance Development Kit (SPDK)
 help / color / mirror / Atom feed
* Re: [SPDK] DPDK
@ 2016-11-02 16:18 Daniel Verkamp
  0 siblings, 0 replies; 5+ messages in thread
From: Daniel Verkamp @ 2016-11-02 16:18 UTC (permalink / raw)
  To: spdk

[-- Attachment #1: Type: text/plain, Size: 1410 bytes --]

On 11/02/2016 04:47 AM, Kumaraparameshwaran Rathnavel wrote:
> Hi All,
>
> I am writing an application similar to nvmf target in SPDK. I should not use the Makefile format given for nvmf target. I am having my own cmake file and I have included libraries and header files from DPDK and SPDK. My application core dumps at rte_mempool_create. When I use the same code and the format of the Makefile in nvmf target it doesn't. I can see that I am missing some flags r something. Can any one help me? Is there an implementation of Makefiles of nvmf target in SPDK with cmake
>
> Thanking you,
> Param

Hi Param,

We would have to see a backtrace to be sure, but it is likely that your 
build system is not linking the DPDK libraries correctly.  If you are 
using DPDK 16.07 or newer built as static libraries, you need to link 
the rte_* libraries with the -Wl,--whole-archive linker option to ensure 
none of the object files that contain only constructors get eliminated. 
Some of the mempool functionality was made pluggable and moved to 
initialization in constructors in DPDK 16.07, and if you fail to link 
the libraries this way, you will end up with NULL function pointers. 
Alternatively, you can just use a shared library build of DPDK.

See commit 20c11032aecc9678b415dc1861607d5f46ec34ef in SPDK for how this 
issue was fixed in our Makefile build system.

Thanks,
-- Daniel


^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [SPDK] DPDK
@ 2016-11-02 17:28 Alex Bowden
  0 siblings, 0 replies; 5+ messages in thread
From: Alex Bowden @ 2016-11-02 17:28 UTC (permalink / raw)
  To: spdk

[-- Attachment #1: Type: text/plain, Size: 2222 bytes --]

I highly suggest doing some reading of DPDK's build configuration files. Here is a pointer:

CONFIG_RTE_BUILD_SHARED_LIB=y

-Alex

On Wed, Nov 2, 2016 at 12:44 PM, Kumaraparameshwaran Rathnavel <krath(a)cloudsimple.com<mailto:krath(a)cloudsimple.com>> wrote:
How do I get shared library of DPDK .

Thanking you,
Param

Sent from my iPhone

> On 02-Nov-2016, at 9:48 PM, Daniel Verkamp <daniel.verkamp(a)intel.com<mailto:daniel.verkamp(a)intel.com>> wrote:
>
>> On 11/02/2016 04:47 AM, Kumaraparameshwaran Rathnavel wrote:
>> Hi All,
>>
>> I am writing an application similar to nvmf target in SPDK. I should not use the Makefile format given for nvmf target. I am having my own cmake file and I have included libraries and header files from DPDK and SPDK. My application core dumps at rte_mempool_create. When I use the same code and the format of the Makefile in nvmf target it doesn't. I can see that I am missing some flags r something. Can any one help me? Is there an implementation of Makefiles of nvmf target in SPDK with cmake
>>
>> Thanking you,
>> Param
>
> Hi Param,
>
> We would have to see a backtrace to be sure, but it is likely that your build system is not linking the DPDK libraries correctly.  If you are using DPDK 16.07 or newer built as static libraries, you need to link the rte_* libraries with the -Wl,--whole-archive linker option to ensure none of the object files that contain only constructors get eliminated. Some of the mempool functionality was made pluggable and moved to initialization in constructors in DPDK 16.07, and if you fail to link the libraries this way, you will end up with NULL function pointers. Alternatively, you can just use a shared library build of DPDK.
>
> See commit 20c11032aecc9678b415dc1861607d5f46ec34ef in SPDK for how this issue was fixed in our Makefile build system.
>
> Thanks,
> -- Daniel
>
> _______________________________________________
> SPDK mailing list
> SPDK(a)lists.01.org<mailto:SPDK(a)lists.01.org>
> https://lists.01.org/mailman/listinfo/spdk
_______________________________________________
SPDK mailing list
SPDK(a)lists.01.org<mailto:SPDK(a)lists.01.org>
https://lists.01.org/mailman/listinfo/spdk


[-- Attachment #2: attachment.html --]
[-- Type: text/html, Size: 3217 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [SPDK] DPDK
@ 2016-11-02 16:44 Kumaraparameshwaran Rathnavel
  0 siblings, 0 replies; 5+ messages in thread
From: Kumaraparameshwaran Rathnavel @ 2016-11-02 16:44 UTC (permalink / raw)
  To: spdk

[-- Attachment #1: Type: text/plain, Size: 1739 bytes --]

How do I get shared library of DPDK . 

Thanking you,
Param

Sent from my iPhone

> On 02-Nov-2016, at 9:48 PM, Daniel Verkamp <daniel.verkamp(a)intel.com> wrote:
> 
>> On 11/02/2016 04:47 AM, Kumaraparameshwaran Rathnavel wrote:
>> Hi All,
>> 
>> I am writing an application similar to nvmf target in SPDK. I should not use the Makefile format given for nvmf target. I am having my own cmake file and I have included libraries and header files from DPDK and SPDK. My application core dumps at rte_mempool_create. When I use the same code and the format of the Makefile in nvmf target it doesn't. I can see that I am missing some flags r something. Can any one help me? Is there an implementation of Makefiles of nvmf target in SPDK with cmake
>> 
>> Thanking you,
>> Param
> 
> Hi Param,
> 
> We would have to see a backtrace to be sure, but it is likely that your build system is not linking the DPDK libraries correctly.  If you are using DPDK 16.07 or newer built as static libraries, you need to link the rte_* libraries with the -Wl,--whole-archive linker option to ensure none of the object files that contain only constructors get eliminated. Some of the mempool functionality was made pluggable and moved to initialization in constructors in DPDK 16.07, and if you fail to link the libraries this way, you will end up with NULL function pointers. Alternatively, you can just use a shared library build of DPDK.
> 
> See commit 20c11032aecc9678b415dc1861607d5f46ec34ef in SPDK for how this issue was fixed in our Makefile build system.
> 
> Thanks,
> -- Daniel
> 
> _______________________________________________
> SPDK mailing list
> SPDK(a)lists.01.org
> https://lists.01.org/mailman/listinfo/spdk

^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [SPDK] DPDK
@ 2016-11-02 16:27 Kumaraparameshwaran Rathnavel
  0 siblings, 0 replies; 5+ messages in thread
From: Kumaraparameshwaran Rathnavel @ 2016-11-02 16:27 UTC (permalink / raw)
  To: spdk

[-- Attachment #1: Type: text/plain, Size: 1731 bytes --]

Thanks for the Reply Daniel. 

Thanking You, 
Param

Sent from my iPhone

> On 02-Nov-2016, at 9:48 PM, Daniel Verkamp <daniel.verkamp(a)intel.com> wrote:
> 
>> On 11/02/2016 04:47 AM, Kumaraparameshwaran Rathnavel wrote:
>> Hi All,
>> 
>> I am writing an application similar to nvmf target in SPDK. I should not use the Makefile format given for nvmf target. I am having my own cmake file and I have included libraries and header files from DPDK and SPDK. My application core dumps at rte_mempool_create. When I use the same code and the format of the Makefile in nvmf target it doesn't. I can see that I am missing some flags r something. Can any one help me? Is there an implementation of Makefiles of nvmf target in SPDK with cmake
>> 
>> Thanking you,
>> Param
> 
> Hi Param,
> 
> We would have to see a backtrace to be sure, but it is likely that your build system is not linking the DPDK libraries correctly.  If you are using DPDK 16.07 or newer built as static libraries, you need to link the rte_* libraries with the -Wl,--whole-archive linker option to ensure none of the object files that contain only constructors get eliminated. Some of the mempool functionality was made pluggable and moved to initialization in constructors in DPDK 16.07, and if you fail to link the libraries this way, you will end up with NULL function pointers. Alternatively, you can just use a shared library build of DPDK.
> 
> See commit 20c11032aecc9678b415dc1861607d5f46ec34ef in SPDK for how this issue was fixed in our Makefile build system.
> 
> Thanks,
> -- Daniel
> 
> _______________________________________________
> SPDK mailing list
> SPDK(a)lists.01.org
> https://lists.01.org/mailman/listinfo/spdk

^ permalink raw reply	[flat|nested] 5+ messages in thread
* [SPDK] DPDK
@ 2016-11-02 11:47 Kumaraparameshwaran Rathnavel
  0 siblings, 0 replies; 5+ messages in thread
From: Kumaraparameshwaran Rathnavel @ 2016-11-02 11:47 UTC (permalink / raw)
  To: spdk

[-- Attachment #1: Type: text/plain, Size: 531 bytes --]

Hi All,

I am writing an application similar to nvmf target in SPDK. I should not use the Makefile format given for nvmf target. I am having my own cmake file and I have included libraries and header files from DPDK and SPDK. My application core dumps at rte_mempool_create. When I use the same code and the format of the Makefile in nvmf target it doesn't. I can see that I am missing some flags r something. Can any one help me? Is there an implementation of Makefiles of nvmf target in SPDK with cmake 

Thanking you,
Param

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-11-02 17:28 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-02 16:18 [SPDK] DPDK Daniel Verkamp
  -- strict thread matches above, loose matches on Subject: below --
2016-11-02 17:28 Alex Bowden
2016-11-02 16:44 Kumaraparameshwaran Rathnavel
2016-11-02 16:27 Kumaraparameshwaran Rathnavel
2016-11-02 11:47 Kumaraparameshwaran Rathnavel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox