Skip to contentSkip to conversation

librte_table build race with SYMLINK-FILE?

DISCUSSION Simon Kågström 3 participants 4 messages Apr 11, 2016 – Apr 12, 2016

lore
Share & tools
lore
#0 lore raw

Hi!

I'm upgrading from DPDK 2.1 to 16.04-rc4, and have a new build issue which I didn't see before. It's in the librte_table and happens from time to time (unfrequently) in my out-of-tree build. It looks like a race between comilation and SYMLINK-FILE:

[...]
== Build lib/librte_table
CC rte_table_lpm_ipv6.o
CC rte_table_lpm.o
CC rte_table_acl.o
CC rte_table_hash_key8.o
In file included from [...]lib/librte_table/rte_table_lpm.c:43:0:
[...]/dpdk.build/include/rte_lpm.h:484:25: fatal error: rte_lpm_sse.h:
No such file or directory

 #include "rte_lpm_sse.h"
                         ^

compilation terminated.
CC rte_table_hash_key16.o
[...]

In this case, rte_lpm_sse.h is optionally symlinked if we're not on ARM. I've tried patching away the issue by unconditionally symlinking the _{neon,sse}.h files, and while I don't see the problem after that, I don't really see why it would improve the situation.

Does anyone else see this as well?

// Simon

#1 lore raw
Quoted 22 lines · On Mon, 11 Apr 2016 12:46:16 +0200 Simon Kågström…

Hi!

I'm upgrading from DPDK 2.1 to 16.04-rc4, and have a new build issue which I didn't see before. It's in the librte_table and happens from time to time (unfrequently) in my out-of-tree build. It looks like a race between comilation and SYMLINK-FILE:

[...]
== Build lib/librte_table
CC rte_table_lpm_ipv6.o
CC rte_table_lpm.o
CC rte_table_acl.o
CC rte_table_hash_key8.o
In file included from [...]lib/librte_table/rte_table_lpm.c:43:0:
[...]/dpdk.build/include/rte_lpm.h:484:25: fatal error: rte_lpm_sse.h:
No such file or directory

 #include "rte_lpm_sse.h"
                         ^

compilation terminated.
CC rte_table_hash_key16.o
[...]

Quoted 8 lines

In this case, rte_lpm_sse.h is optionally symlinked if we're not on ARM. I've tried patching away the issue by unconditionally symlinking the _{neon,sse}.h files, and while I don't see the problem after that, I don't really see why it would improve the situation.

Does anyone else see this as well?

// Simon

The issue is a missing dependency in the mk file for LPM.

#2 lore raw

2016-04-11 11:15, Stephen Hemminger:

Quoted 8 lines
Quoted 4 lines · On Mon, 11 Apr 2016 12:46:16 +0200 Simon Kågström…

In file included from [...]lib/librte_table/rte_table_lpm.c:43:0:
[...]/dpdk.build/include/rte_lpm.h:484:25: fatal error: rte_lpm_sse.h:
No such file or directory
#include "rte_lpm_sse.h"

The issue is a missing dependency in the mk file for LPM.

There is already this line:
DEPDIRS-$(CONFIG_RTE_LIBRTE_TABLE) += lib/librte_lpm

#3 lore raw
Quoted 8 lines · Thomas Monjalon

2016-04-11 11:15, Stephen Hemminger:

Quoted 7 lines
Quoted 4 lines · On Mon, 11 Apr 2016 12:46:16 +0200 Simon Kågström…

In file included from [...]lib/librte_table/rte_table_lpm.c:43:0:
[...]/dpdk.build/include/rte_lpm.h:484:25: fatal error: rte_lpm_sse.h:
No such file or directory
#include "rte_lpm_sse.h"

Quoted 4 lines
Quoted 1 line

The issue is a missing dependency in the mk file for LPM.

There is already this line:
DEPDIRS-$(CONFIG_RTE_LIBRTE_TABLE) += lib/librte_lpm

Sorry, this whole issue might have been caused by my old configuration being carried over to 16.04. I'll let you know if I run into it again!

// Simon