nagarahalli replied on github web page:

platform/linux-dpdk/Makefile.am
line 19
@@ -348,8 +346,10 @@ endif
 endif
 endif
 if ODP_SCHEDULE_SCALABLE
+__LIB__libodp_dpdk_la_SOURCES += ../linux-generic/queue/scalable.c
 ../linux-generic/queue/scalable.lo: AM_CFLAGS += -DIM_ACTIVE_MODULE
 else
+__LIB__libodp_dpdk_la_SOURCES += ../linux-generic/queue/generic.c
 ../linux-generic/queue/generic.lo: AM_CFLAGS += -DIM_ACTIVE_MODULE
 endif
 


Comment:
Without these changes, try the compilation for the following configuration:
./configure --with-platform=linux-dpdk --enable-schedule-scalable  
--with-sdk-install-path=<dpdk path>

> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
> I did some experimenting with this and this seems to compile and run just 
> fine without these Makefile.am changes. Am I missing something?


>> nagarahalli wrote
>> As we discussed in the call today, this is temporary. Once the changes, not 
>> to use packet meta data, to default queue implementation is done, these can 
>> go away.


>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote:
>>> Is this intended to be a temporary change? The problem with conditional 
>>> compilation is that it's very easy to make changes that break another file 
>>> that isn't compiled unless some special config option is used. That's why 
>>> in today's config-based scheduler selection we compile all modules and the 
>>> only thing that's actually conditional is which entry points are plugged 
>>> into the scheduler interface table.
>>> 
>>> For 2.0 we want to eliminate config-time selections like this, so all 
>>> variants will necessarily have to be compiled to be included in the single 
>>> binary and selected dynamically at runtime. So I'm not sure this sort of 
>>> change is consistent with that goal. This seems to need more discussion as 
>>> to why we're doing this here.


https://github.com/Linaro/odp/pull/303#discussion_r154733899
updated_at 2017-12-04 18:30:35

Reply via email to