Re: [lng-odp] api-next broken?

2017-08-31 Thread Verma, Shally

-Original Message-
From: Dmitry Eremin-Solenikov [mailto:dmitry.ereminsoleni...@linaro.org] 
Sent: 31 August 2017 16:13
To: shally verma <shallyvermacav...@gmail.com>; lng-odp-forward 
<lng-odp@lists.linaro.org>
Cc: Pimpalkar, Shrutika <shrutika.pimpal...@cavium.com>; Verma, Shally 
<shally.ve...@cavium.com>; Nilla, Subrahmanyam <subrahmanyam.ni...@cavium.com>
Subject: Re: [lng-odp] api-next broken?

On 31/08/17 13:25, shally verma wrote:
> I was trying api-next from linaro/odp as of today and am seeing this 
> error. Am I missing anything here?
> 
> I simply use
> ./bootstrap
> ./configure
> ./make
> 
> make[2]: Entering directory
> `/home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass'
>   CC   odp_ipfragreass-odp_ipfragreass.o
>   CC   odp_ipfragreass-odp_ipfragreass_fragment.o
>   CC   odp_ipfragreass-odp_ipfragreass_helpers.o
>   CC   odp_ipfragreass-odp_ipfragreass_reassemble.o
>   CCLD odp_ipfragreass
> odp_ipfragreass-odp_ipfragreass_reassemble.o: In function
> `atomic_strong_cas_dblptr':
> /home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass/odp_ipfragreass_atomics.h:51:
> undefined reference to `__atomic_compare_exchange_16'
> /home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass/odp_ipfragreass_atomics.h:51:
> undefined reference to `__atomic_compare_exchange_16'
> /home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass/odp_ipfragreass_atomics.h:51:
> undefined reference to `__atomic_compare_exchange_16'
> collect2: error: ld returned 1 exit status
> make[2]: *** [odp_ipfragreass] Error 1

Please provide config.log and make V=1 log. Thanks.

It is resolved with install of -latomic .
Thanks
Shally

--
With best wishes
Dmitry


Re: [lng-odp] api-next broken?

2017-08-31 Thread Dmitry Eremin-Solenikov
On 31/08/17 13:25, shally verma wrote:
> I was trying api-next from linaro/odp as of today and am seeing this
> error. Am I missing anything here?
> 
> I simply use
> ./bootstrap
> ./configure
> ./make
> 
> make[2]: Entering directory
> `/home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass'
>   CC   odp_ipfragreass-odp_ipfragreass.o
>   CC   odp_ipfragreass-odp_ipfragreass_fragment.o
>   CC   odp_ipfragreass-odp_ipfragreass_helpers.o
>   CC   odp_ipfragreass-odp_ipfragreass_reassemble.o
>   CCLD odp_ipfragreass
> odp_ipfragreass-odp_ipfragreass_reassemble.o: In function
> `atomic_strong_cas_dblptr':
> /home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass/odp_ipfragreass_atomics.h:51:
> undefined reference to `__atomic_compare_exchange_16'
> /home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass/odp_ipfragreass_atomics.h:51:
> undefined reference to `__atomic_compare_exchange_16'
> /home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass/odp_ipfragreass_atomics.h:51:
> undefined reference to `__atomic_compare_exchange_16'
> collect2: error: ld returned 1 exit status
> make[2]: *** [odp_ipfragreass] Error 1

Please provide config.log and make V=1 log. Thanks.


-- 
With best wishes
Dmitry


Re: [lng-odp] api-next broken?

2017-08-31 Thread Maxim Uvarov
-latomic is not installed and ./configure did not detect that.

Can you please write compiler version?

On 31 August 2017 at 13:25, shally verma 
wrote:

> I was trying api-next from linaro/odp as of today and am seeing this
> error. Am I missing anything here?
>
> I simply use
> ./bootstrap
> ./configure
> ./make
>
> make[2]: Entering directory
> `/home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass'
>   CC   odp_ipfragreass-odp_ipfragreass.o
>   CC   odp_ipfragreass-odp_ipfragreass_fragment.o
>   CC   odp_ipfragreass-odp_ipfragreass_helpers.o
>   CC   odp_ipfragreass-odp_ipfragreass_reassemble.o
>   CCLD odp_ipfragreass
> odp_ipfragreass-odp_ipfragreass_reassemble.o: In function
> `atomic_strong_cas_dblptr':
> /home/shrutika/zip/zip-linux/83xx/odp/odp/example/
> ipfragreass/odp_ipfragreass_atomics.h:51:
> undefined reference to `__atomic_compare_exchange_16'
> /home/shrutika/zip/zip-linux/83xx/odp/odp/example/
> ipfragreass/odp_ipfragreass_atomics.h:51:
> undefined reference to `__atomic_compare_exchange_16'
> /home/shrutika/zip/zip-linux/83xx/odp/odp/example/
> ipfragreass/odp_ipfragreass_atomics.h:51:
> undefined reference to `__atomic_compare_exchange_16'
> collect2: error: ld returned 1 exit status
> make[2]: *** [odp_ipfragreass] Error 1
>
> Thanks
> Shally
>


[lng-odp] api-next broken?

2017-08-31 Thread shally verma
I was trying api-next from linaro/odp as of today and am seeing this
error. Am I missing anything here?

I simply use
./bootstrap
./configure
./make

make[2]: Entering directory
`/home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass'
  CC   odp_ipfragreass-odp_ipfragreass.o
  CC   odp_ipfragreass-odp_ipfragreass_fragment.o
  CC   odp_ipfragreass-odp_ipfragreass_helpers.o
  CC   odp_ipfragreass-odp_ipfragreass_reassemble.o
  CCLD odp_ipfragreass
odp_ipfragreass-odp_ipfragreass_reassemble.o: In function
`atomic_strong_cas_dblptr':
/home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass/odp_ipfragreass_atomics.h:51:
undefined reference to `__atomic_compare_exchange_16'
/home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass/odp_ipfragreass_atomics.h:51:
undefined reference to `__atomic_compare_exchange_16'
/home/shrutika/zip/zip-linux/83xx/odp/odp/example/ipfragreass/odp_ipfragreass_atomics.h:51:
undefined reference to `__atomic_compare_exchange_16'
collect2: error: ld returned 1 exit status
make[2]: *** [odp_ipfragreass] Error 1

Thanks
Shally


Re: [lng-odp] api-next broken?

2015-12-09 Thread Maxim Uvarov
So the problem appears only in libc6-dev 2.21.  No problem with  
libc6-dev 2.19


Diff is:
/usr/include/time.h
@@ -108,7 +108,7 @@ typedef __timer_t timer_t;

 #if (!defined __timespec_defined\
  && ((defined _TIME_H\
-  && (defined __USE_POSIX199309 || defined __USE_MISC\
+  && (defined __USE_POSIX199309\
   || defined __USE_ISOC11))\
  || defined __need_timespec))
 # define __timespec_defined1

Maxim.

On 12/09/2015 03:13, Bill Fischofer wrote:
Well, I've verified that if you do similar mods to 
test/validation/pktio/pktio.c and test/validation/time/time.c then all 
is good, however what this means is that we've just broken ODP API 
portability because we now require that ODP applications include this 
#define when compiling for linux-generic.  That's bad.


I tried putting the #define into 
platform/linux-generic/include/odp/plat/time_types.h since that's 
where odp_time_t is defined, but C doesn't like that. As this is an 
artifact of the linux-generic implementation of the odp_time APIs 
whatever magic needs to happen strictly within linux-generic and 
cannot spill over to the validation tests or other ODP applications.


On Tue, Dec 8, 2015 at 5:23 PM, Mike Holmes > wrote:


Yep, I just compiled what I had, but it is the same root cause,
just needs to be told to allow POSIX in that SRC.

Maxim do you just want to fix in your morning, I dont have time
now tonight so dont wait for me but you could add me as Suggested-by

On 8 December 2015 at 18:17, Bill Fischofer
> wrote:

That helps but it looks incomplete.  With that patch applied
ODP compiles but the CUnit tests fail:

Making all in pktio
make[3]: Entering directory
'/home/bill/linaro/api-next/test/validation/pktio'
  CC   pktio.lo
pktio.c: In function 'queue_deq_wait_time':
pktio.c:339:13: error: storage size of 'wait' isn't known
  odp_time_t wait, end;
 ^
pktio.c:339:19: error: storage size of 'end' isn't known
  odp_time_t wait, end;
   ^
pktio.c:342:2: error: invalid use of incomplete typedef
'odp_time_t'
  wait = odp_time_local_from_ns(ns);
  ^
pktio.c:343:2: error: invalid use of incomplete typedef
'odp_time_t'
  end = odp_time_sum(odp_time_local(), wait);
  ^
pktio.c:343:21: error: type of formal parameter 1 is incomplete
  end = odp_time_sum(odp_time_local(), wait);
 ^
pktio.c:343:39: error: type of formal parameter 2 is incomplete
  end = odp_time_sum(odp_time_local(), wait);
   ^
pktio.c:348:2: error: invalid use of incomplete typedef
'odp_time_t'
  } while (odp_time_cmp(end, odp_time_local()) > 0);
  ^
pktio.c:348:24: error: type of formal parameter 1 is incomplete
  } while (odp_time_cmp(end, odp_time_local()) > 0);
^
pktio.c:348:29: error: type of formal parameter 2 is incomplete
  } while (odp_time_cmp(end, odp_time_local()) > 0);
 ^
pktio.c:339:19: error: unused variable 'end'
[-Werror=unused-variable]
  odp_time_t wait, end;
   ^
pktio.c:339:13: error: unused variable 'wait'
[-Werror=unused-variable]
  odp_time_t wait, end;
 ^
pktio.c: In function 'wait_for_packet':
pktio.c:356:13: error: storage size of 'wait_time' isn't known
  odp_time_t wait_time, end;
 ^
pktio.c:356:24: error: storage size of 'end' isn't known
  odp_time_t wait_time, end;
^
pktio.c:362:2: error: invalid use of incomplete typedef
'odp_time_t'
  wait_time = odp_time_local_from_ns(ns);
  ^
pktio.c:363:2: error: invalid use of incomplete typedef
'odp_time_t'
  end = odp_time_sum(odp_time_local(), wait_time);
  ^
pktio.c:363:21: error: type of formal parameter 1 is incomplete
  end = odp_time_sum(odp_time_local(), wait_time);
 ^
pktio.c:363:39: error: type of formal parameter 2 is incomplete
  end = odp_time_sum(odp_time_local(), wait_time);
   ^
pktio.c:389:2: error: invalid use of incomplete typedef
'odp_time_t'
  } while (odp_time_cmp(end, odp_time_local()) > 0);
  ^
pktio.c:389:24: error: type of formal parameter 1 is incomplete
  } while (odp_time_cmp(end, odp_time_local()) > 0);
   

Re: [lng-odp] api-next broken?

2015-12-09 Thread Bill Fischofer
I'm running vanilla Ubuntu 15.04 at current service.  gcc shows:

bill@Ubuntu15:~/linaro/timefix$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.9/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu
4.9.2-10ubuntu13' --with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs
--enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr
--program-suffix=-4.9 --enable-shared --enable-linker-build-id
--libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.9 --libdir=/usr/lib --enable-nls
--with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug
--enable-libstdcxx-time=yes --enable-gnu-unique-object
--disable-vtable-verify --enable-plugin --with-system-zlib
--disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64/jre
--enable-java-home
--with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64
--with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-amd64
--with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
--enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686
--with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib
--with-tune=generic --enable-checking=release --build=x86_64-linux-gnu
--host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.9.2 (Ubuntu 4.9.2-10ubuntu13)

I'm not sure why that libc6-dev change was made. That seems a significant
breakage to one of the Linux APIs to slip in to a minor service update.

On Wed, Dec 9, 2015 at 3:50 AM, Maxim Uvarov 
wrote:

> So the problem appears only in libc6-dev 2.21.  No problem with  libc6-dev
> 2.19
>
> Diff is:
> /usr/include/time.h
> @@ -108,7 +108,7 @@ typedef __timer_t timer_t;
>
>  #if (!defined __timespec_defined\
>   && ((defined _TIME_H\
> -  && (defined __USE_POSIX199309 || defined __USE_MISC\
> +  && (defined __USE_POSIX199309\
>|| defined __USE_ISOC11))\
>   || defined __need_timespec))
>  # define __timespec_defined1
>
> Maxim.
>
> On 12/09/2015 03:13, Bill Fischofer wrote:
>
>> Well, I've verified that if you do similar mods to
>> test/validation/pktio/pktio.c and test/validation/time/time.c then all is
>> good, however what this means is that we've just broken ODP API portability
>> because we now require that ODP applications include this #define when
>> compiling for linux-generic.  That's bad.
>>
>> I tried putting the #define into
>> platform/linux-generic/include/odp/plat/time_types.h since that's where
>> odp_time_t is defined, but C doesn't like that. As this is an artifact of
>> the linux-generic implementation of the odp_time APIs whatever magic needs
>> to happen strictly within linux-generic and cannot spill over to the
>> validation tests or other ODP applications.
>>
>> On Tue, Dec 8, 2015 at 5:23 PM, Mike Holmes > > wrote:
>>
>> Yep, I just compiled what I had, but it is the same root cause,
>> just needs to be told to allow POSIX in that SRC.
>>
>> Maxim do you just want to fix in your morning, I dont have time
>> now tonight so dont wait for me but you could add me as Suggested-by
>>
>> On 8 December 2015 at 18:17, Bill Fischofer
>> > wrote:
>>
>> That helps but it looks incomplete.  With that patch applied
>> ODP compiles but the CUnit tests fail:
>>
>> Making all in pktio
>> make[3]: Entering directory
>> '/home/bill/linaro/api-next/test/validation/pktio'
>>   CC   pktio.lo
>> pktio.c: In function 'queue_deq_wait_time':
>> pktio.c:339:13: error: storage size of 'wait' isn't known
>>   odp_time_t wait, end;
>>  ^
>> pktio.c:339:19: error: storage size of 'end' isn't known
>>   odp_time_t wait, end;
>>^
>> pktio.c:342:2: error: invalid use of incomplete typedef
>> 'odp_time_t'
>>   wait = odp_time_local_from_ns(ns);
>>   ^
>> pktio.c:343:2: error: invalid use of incomplete typedef
>> 'odp_time_t'
>>   end = odp_time_sum(odp_time_local(), wait);
>>   ^
>> pktio.c:343:21: error: type of formal parameter 1 is incomplete
>>   end = odp_time_sum(odp_time_local(), wait);
>>  ^
>> pktio.c:343:39: error: type of formal parameter 2 is incomplete
>>   end = odp_time_sum(odp_time_local(), wait);
>>^
>> pktio.c:348:2: error: invalid use of incomplete typedef
>> 'odp_time_t'
>>   } while (odp_time_cmp(end, odp_time_local()) 

Re: [lng-odp] api-next broken?

2015-12-09 Thread Maxim Uvarov

yes, I'm installing 15.10 to VM to check that odp works there.

Also it looks like in CI we need different containers to check most of 
common distributive versions.


Maxim.

On 12/09/2015 15:00, Bill Fischofer wrote:

I'm running vanilla Ubuntu 15.04 at current service.  gcc shows:

bill@Ubuntu15:~/linaro/timefix$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.9/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 
4.9.2-10ubuntu13' 
--with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs 
--enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr 
--program-suffix=-4.9 --enable-shared --enable-linker-build-id 
--libexecdir=/usr/lib --without-included-gettext 
--enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.9 
--libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu 
--enable-libstdcxx-debug --enable-libstdcxx-time=yes 
--enable-gnu-unique-object --disable-vtable-verify --enable-plugin 
--with-system-zlib --disable-browser-plugin --enable-java-awt=gtk 
--enable-gtk-cairo 
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64/jre 
--enable-java-home 
--with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64 
--with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-amd64 
--with-arch-directory=amd64 
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc 
--enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 
--with-multilib-list=m32,m64,mx32 --enable-multilib 
--with-tune=generic --enable-checking=release --build=x86_64-linux-gnu 
--host=x86_64-linux-gnu --target=x86_64-linux-gnu

Thread model: posix
gcc version 4.9.2 (Ubuntu 4.9.2-10ubuntu13)

I'm not sure why that libc6-dev change was made. That seems a 
significant breakage to one of the Linux APIs to slip in to a minor 
service update.


On Wed, Dec 9, 2015 at 3:50 AM, Maxim Uvarov > wrote:


So the problem appears only in libc6-dev 2.21.  No problem with
libc6-dev 2.19

Diff is:
/usr/include/time.h
@@ -108,7 +108,7 @@ typedef __timer_t timer_t;

 #if (!defined __timespec_defined\
  && ((defined _TIME_H\
-  && (defined __USE_POSIX199309 || defined __USE_MISC\
+  && (defined __USE_POSIX199309 \
   || defined __USE_ISOC11))\
  || defined __need_timespec))
 # define __timespec_defined1

Maxim.

On 12/09/2015 03:13, Bill Fischofer wrote:

Well, I've verified that if you do similar mods to
test/validation/pktio/pktio.c and test/validation/time/time.c
then all is good, however what this means is that we've just
broken ODP API portability because we now require that ODP
applications include this #define when compiling for
linux-generic. That's bad.

I tried putting the #define into
platform/linux-generic/include/odp/plat/time_types.h since
that's where odp_time_t is defined, but C doesn't like that.
As this is an artifact of the linux-generic implementation of
the odp_time APIs whatever magic needs to happen strictly
within linux-generic and cannot spill over to the validation
tests or other ODP applications.

On Tue, Dec 8, 2015 at 5:23 PM, Mike Holmes

>> wrote:

Yep, I just compiled what I had, but it is the same root
cause,
just needs to be told to allow POSIX in that SRC.

Maxim do you just want to fix in your morning, I dont have
time
now tonight so dont wait for me but you could add me as
Suggested-by

On 8 December 2015 at 18:17, Bill Fischofer

>> wrote:

That helps but it looks incomplete.  With that patch
applied
ODP compiles but the CUnit tests fail:

Making all in pktio
make[3]: Entering directory
'/home/bill/linaro/api-next/test/validation/pktio'
  CC   pktio.lo
pktio.c: In function 'queue_deq_wait_time':
pktio.c:339:13: error: storage size of 'wait' isn't known
  odp_time_t wait, end;
 ^
pktio.c:339:19: error: storage size of 'end' isn't known
  odp_time_t wait, end;
   ^
pktio.c:342:2: error: invalid use of incomplete typedef
'odp_time_t'
  wait = odp_time_local_from_ns(ns);
   

Re: [lng-odp] api-next broken?

2015-12-08 Thread Bill Fischofer
Well, I've verified that if you do similar mods to
test/validation/pktio/pktio.c and test/validation/time/time.c then all is
good, however what this means is that we've just broken ODP API portability
because we now require that ODP applications include this #define when
compiling for linux-generic.  That's bad.

I tried putting the #define into
platform/linux-generic/include/odp/plat/time_types.h since that's where
odp_time_t is defined, but C doesn't like that.  As this is an artifact of
the linux-generic implementation of the odp_time APIs whatever magic needs
to happen strictly within linux-generic and cannot spill over to the
validation tests or other ODP applications.

On Tue, Dec 8, 2015 at 5:23 PM, Mike Holmes  wrote:

> Yep, I just compiled what I had, but it is the same root cause, just needs
> to be told to allow POSIX in that SRC.
>
> Maxim do you just want to fix in your morning, I dont have time now
> tonight so dont wait for me but you could add me as Suggested-by
>
> On 8 December 2015 at 18:17, Bill Fischofer 
> wrote:
>
>> That helps but it looks incomplete.  With that patch applied ODP compiles
>> but the CUnit tests fail:
>>
>> Making all in pktio
>> make[3]: Entering directory
>> '/home/bill/linaro/api-next/test/validation/pktio'
>>   CC   pktio.lo
>> pktio.c: In function 'queue_deq_wait_time':
>> pktio.c:339:13: error: storage size of 'wait' isn't known
>>   odp_time_t wait, end;
>>  ^
>> pktio.c:339:19: error: storage size of 'end' isn't known
>>   odp_time_t wait, end;
>>^
>> pktio.c:342:2: error: invalid use of incomplete typedef 'odp_time_t'
>>   wait = odp_time_local_from_ns(ns);
>>   ^
>> pktio.c:343:2: error: invalid use of incomplete typedef 'odp_time_t'
>>   end = odp_time_sum(odp_time_local(), wait);
>>   ^
>> pktio.c:343:21: error: type of formal parameter 1 is incomplete
>>   end = odp_time_sum(odp_time_local(), wait);
>>  ^
>> pktio.c:343:39: error: type of formal parameter 2 is incomplete
>>   end = odp_time_sum(odp_time_local(), wait);
>>^
>> pktio.c:348:2: error: invalid use of incomplete typedef 'odp_time_t'
>>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>>   ^
>> pktio.c:348:24: error: type of formal parameter 1 is incomplete
>>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>> ^
>> pktio.c:348:29: error: type of formal parameter 2 is incomplete
>>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>>  ^
>> pktio.c:339:19: error: unused variable 'end' [-Werror=unused-variable]
>>   odp_time_t wait, end;
>>^
>> pktio.c:339:13: error: unused variable 'wait' [-Werror=unused-variable]
>>   odp_time_t wait, end;
>>  ^
>> pktio.c: In function 'wait_for_packet':
>> pktio.c:356:13: error: storage size of 'wait_time' isn't known
>>   odp_time_t wait_time, end;
>>  ^
>> pktio.c:356:24: error: storage size of 'end' isn't known
>>   odp_time_t wait_time, end;
>> ^
>> pktio.c:362:2: error: invalid use of incomplete typedef 'odp_time_t'
>>   wait_time = odp_time_local_from_ns(ns);
>>   ^
>> pktio.c:363:2: error: invalid use of incomplete typedef 'odp_time_t'
>>   end = odp_time_sum(odp_time_local(), wait_time);
>>   ^
>> pktio.c:363:21: error: type of formal parameter 1 is incomplete
>>   end = odp_time_sum(odp_time_local(), wait_time);
>>  ^
>> pktio.c:363:39: error: type of formal parameter 2 is incomplete
>>   end = odp_time_sum(odp_time_local(), wait_time);
>>^
>> pktio.c:389:2: error: invalid use of incomplete typedef 'odp_time_t'
>>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>>   ^
>> pktio.c:389:24: error: type of formal parameter 1 is incomplete
>>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>> ^
>> pktio.c:389:29: error: type of formal parameter 2 is incomplete
>>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>>  ^
>> pktio.c:356:24: error: unused variable 'end' [-Werror=unused-variable]
>>   odp_time_t wait_time, end;
>> ^
>> pktio.c:356:13: error: unused variable 'wait_time'
>> [-Werror=unused-variable]
>>   odp_time_t wait_time, end;
>>  ^
>> cc1: all warnings being treated as errors
>> Makefile:504: recipe for target 'pktio.lo' failed
>> make[3]: *** [pktio.lo] Error 1
>> make[3]: Leaving directory
>> '/home/bill/linaro/api-next/test/validation/pktio'
>> Makefile:417: recipe for target 'all-recursive' failed
>> make[2]: *** [all-recursive] Error 1
>>
>>
>> On Tue, Dec 8, 2015 at 5:12 PM, Mike Holmes 
>> wrote:
>>
>>> Patch sent that works for me, it depends on the compiler in use and the
>>> c99 vs posix standard I think
>>>
>>> On 8 December 2015 at 17:14, Bill Fischofer 

Re: [lng-odp] api-next broken?

2015-12-08 Thread Mike Holmes
Patch sent that works for me, it depends on the compiler in use and the c99
vs posix standard I think

On 8 December 2015 at 17:14, Bill Fischofer 
wrote:

> git bisect shows:
>
> 3164ccfe7e6dc548852b8f6f681069cd6d524bfc is the first bad commit
> commit 3164ccfe7e6dc548852b8f6f681069cd6d524bfc
> Author: Ivan Khoronzhuk 
> Date:   Fri Dec 4 19:51:29 2015 +0200
>
> linux-generic: odp_time: don't use cpu cycle API to get time
>
> The linux-generic time API implementation shouldn't depend on cpu
> cycle API wich is not stable enough to measure time period due to
> dynamic frequency scaling.
>
> Reviewed-by: Petri Savolainen 
> Signed-off-by: Ivan Khoronzhuk 
> Signed-off-by: Maxim Uvarov 
>
> :04 04 5b252b56eaa4d7c8df9f4583d0b6e7b8db9a9fb9
> d331e32ad2a37014cdb8133a917cd660f52b6f7c M platform
>
>
> On Tue, Dec 8, 2015 at 3:55 PM, Bill Fischofer 
> wrote:
>
>> Trying to compile a fresh clone of api-next I'm seeing the following:
>>
>>   CC   odp_schedule.lo
>> odp_schedule.c: In function 'schedule_loop':
>> odp_schedule.c:589:13: error: storage size of 'next' isn't known
>>   odp_time_t next, wtime;
>>  ^
>> odp_schedule.c:589:19: error: storage size of 'wtime' isn't known
>>   odp_time_t next, wtime;
>>^
>> odp_schedule.c:606:4: error: invalid use of incomplete typedef
>> 'odp_time_t'
>> wtime = odp_time_local_from_ns(wait);
>> ^
>> odp_schedule.c:607:4: error: invalid use of incomplete typedef
>> 'odp_time_t'
>> next = odp_time_sum(odp_time_local(), wtime);
>> ^
>> odp_schedule.c:607:24: error: type of formal parameter 1 is incomplete
>> next = odp_time_sum(odp_time_local(), wtime);
>> ^
>> odp_schedule.c:607:42: error: type of formal parameter 2 is incomplete
>> next = odp_time_sum(odp_time_local(), wtime);
>>   ^
>> odp_schedule.c:612:3: error: invalid use of incomplete typedef
>> 'odp_time_t'
>>if (odp_time_cmp(next, odp_time_local()) < 0)
>>^
>> odp_schedule.c:612:20: error: type of formal parameter 1 is incomplete
>>if (odp_time_cmp(next, odp_time_local()) < 0)
>> ^
>> odp_schedule.c:612:26: error: type of formal parameter 2 is incomplete
>>if (odp_time_cmp(next, odp_time_local()) < 0)
>>   ^
>> odp_schedule.c:589:19: error: unused variable 'wtime'
>> [-Werror=unused-variable]
>>   odp_time_t next, wtime;
>>^
>> odp_schedule.c:589:13: error: unused variable 'next'
>> [-Werror=unused-variable]
>>   odp_time_t next, wtime;
>>  ^
>> cc1: all warnings being treated as errors
>> Makefile:757: recipe for target 'odp_schedule.lo' failed
>>
>>
>


-- 
Mike Holmes
Technical Manager - Linaro Networking Group
Linaro.org  *│ *Open source software for ARM SoCs
___
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp


Re: [lng-odp] api-next broken?

2015-12-08 Thread Bill Fischofer
That helps but it looks incomplete.  With that patch applied ODP compiles
but the CUnit tests fail:

Making all in pktio
make[3]: Entering directory
'/home/bill/linaro/api-next/test/validation/pktio'
  CC   pktio.lo
pktio.c: In function 'queue_deq_wait_time':
pktio.c:339:13: error: storage size of 'wait' isn't known
  odp_time_t wait, end;
 ^
pktio.c:339:19: error: storage size of 'end' isn't known
  odp_time_t wait, end;
   ^
pktio.c:342:2: error: invalid use of incomplete typedef 'odp_time_t'
  wait = odp_time_local_from_ns(ns);
  ^
pktio.c:343:2: error: invalid use of incomplete typedef 'odp_time_t'
  end = odp_time_sum(odp_time_local(), wait);
  ^
pktio.c:343:21: error: type of formal parameter 1 is incomplete
  end = odp_time_sum(odp_time_local(), wait);
 ^
pktio.c:343:39: error: type of formal parameter 2 is incomplete
  end = odp_time_sum(odp_time_local(), wait);
   ^
pktio.c:348:2: error: invalid use of incomplete typedef 'odp_time_t'
  } while (odp_time_cmp(end, odp_time_local()) > 0);
  ^
pktio.c:348:24: error: type of formal parameter 1 is incomplete
  } while (odp_time_cmp(end, odp_time_local()) > 0);
^
pktio.c:348:29: error: type of formal parameter 2 is incomplete
  } while (odp_time_cmp(end, odp_time_local()) > 0);
 ^
pktio.c:339:19: error: unused variable 'end' [-Werror=unused-variable]
  odp_time_t wait, end;
   ^
pktio.c:339:13: error: unused variable 'wait' [-Werror=unused-variable]
  odp_time_t wait, end;
 ^
pktio.c: In function 'wait_for_packet':
pktio.c:356:13: error: storage size of 'wait_time' isn't known
  odp_time_t wait_time, end;
 ^
pktio.c:356:24: error: storage size of 'end' isn't known
  odp_time_t wait_time, end;
^
pktio.c:362:2: error: invalid use of incomplete typedef 'odp_time_t'
  wait_time = odp_time_local_from_ns(ns);
  ^
pktio.c:363:2: error: invalid use of incomplete typedef 'odp_time_t'
  end = odp_time_sum(odp_time_local(), wait_time);
  ^
pktio.c:363:21: error: type of formal parameter 1 is incomplete
  end = odp_time_sum(odp_time_local(), wait_time);
 ^
pktio.c:363:39: error: type of formal parameter 2 is incomplete
  end = odp_time_sum(odp_time_local(), wait_time);
   ^
pktio.c:389:2: error: invalid use of incomplete typedef 'odp_time_t'
  } while (odp_time_cmp(end, odp_time_local()) > 0);
  ^
pktio.c:389:24: error: type of formal parameter 1 is incomplete
  } while (odp_time_cmp(end, odp_time_local()) > 0);
^
pktio.c:389:29: error: type of formal parameter 2 is incomplete
  } while (odp_time_cmp(end, odp_time_local()) > 0);
 ^
pktio.c:356:24: error: unused variable 'end' [-Werror=unused-variable]
  odp_time_t wait_time, end;
^
pktio.c:356:13: error: unused variable 'wait_time' [-Werror=unused-variable]
  odp_time_t wait_time, end;
 ^
cc1: all warnings being treated as errors
Makefile:504: recipe for target 'pktio.lo' failed
make[3]: *** [pktio.lo] Error 1
make[3]: Leaving directory
'/home/bill/linaro/api-next/test/validation/pktio'
Makefile:417: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1


On Tue, Dec 8, 2015 at 5:12 PM, Mike Holmes  wrote:

> Patch sent that works for me, it depends on the compiler in use and the
> c99 vs posix standard I think
>
> On 8 December 2015 at 17:14, Bill Fischofer 
> wrote:
>
>> git bisect shows:
>>
>> 3164ccfe7e6dc548852b8f6f681069cd6d524bfc is the first bad commit
>> commit 3164ccfe7e6dc548852b8f6f681069cd6d524bfc
>> Author: Ivan Khoronzhuk 
>> Date:   Fri Dec 4 19:51:29 2015 +0200
>>
>> linux-generic: odp_time: don't use cpu cycle API to get time
>>
>> The linux-generic time API implementation shouldn't depend on cpu
>> cycle API wich is not stable enough to measure time period due to
>> dynamic frequency scaling.
>>
>> Reviewed-by: Petri Savolainen 
>> Signed-off-by: Ivan Khoronzhuk 
>> Signed-off-by: Maxim Uvarov 
>>
>> :04 04 5b252b56eaa4d7c8df9f4583d0b6e7b8db9a9fb9
>> d331e32ad2a37014cdb8133a917cd660f52b6f7c M platform
>>
>>
>> On Tue, Dec 8, 2015 at 3:55 PM, Bill Fischofer > > wrote:
>>
>>> Trying to compile a fresh clone of api-next I'm seeing the following:
>>>
>>>   CC   odp_schedule.lo
>>> odp_schedule.c: In function 'schedule_loop':
>>> odp_schedule.c:589:13: error: storage size of 'next' isn't known
>>>   odp_time_t next, wtime;
>>>  ^
>>> odp_schedule.c:589:19: error: storage size of 'wtime' isn't known
>>>   odp_time_t next, wtime;
>>>^
>>> odp_schedule.c:606:4: error: invalid use of 

Re: [lng-odp] api-next broken?

2015-12-08 Thread Mike Holmes
Yep, I just compiled what I had, but it is the same root cause, just needs
to be told to allow POSIX in that SRC.

Maxim do you just want to fix in your morning, I dont have time now tonight
so dont wait for me but you could add me as Suggested-by

On 8 December 2015 at 18:17, Bill Fischofer 
wrote:

> That helps but it looks incomplete.  With that patch applied ODP compiles
> but the CUnit tests fail:
>
> Making all in pktio
> make[3]: Entering directory
> '/home/bill/linaro/api-next/test/validation/pktio'
>   CC   pktio.lo
> pktio.c: In function 'queue_deq_wait_time':
> pktio.c:339:13: error: storage size of 'wait' isn't known
>   odp_time_t wait, end;
>  ^
> pktio.c:339:19: error: storage size of 'end' isn't known
>   odp_time_t wait, end;
>^
> pktio.c:342:2: error: invalid use of incomplete typedef 'odp_time_t'
>   wait = odp_time_local_from_ns(ns);
>   ^
> pktio.c:343:2: error: invalid use of incomplete typedef 'odp_time_t'
>   end = odp_time_sum(odp_time_local(), wait);
>   ^
> pktio.c:343:21: error: type of formal parameter 1 is incomplete
>   end = odp_time_sum(odp_time_local(), wait);
>  ^
> pktio.c:343:39: error: type of formal parameter 2 is incomplete
>   end = odp_time_sum(odp_time_local(), wait);
>^
> pktio.c:348:2: error: invalid use of incomplete typedef 'odp_time_t'
>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>   ^
> pktio.c:348:24: error: type of formal parameter 1 is incomplete
>   } while (odp_time_cmp(end, odp_time_local()) > 0);
> ^
> pktio.c:348:29: error: type of formal parameter 2 is incomplete
>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>  ^
> pktio.c:339:19: error: unused variable 'end' [-Werror=unused-variable]
>   odp_time_t wait, end;
>^
> pktio.c:339:13: error: unused variable 'wait' [-Werror=unused-variable]
>   odp_time_t wait, end;
>  ^
> pktio.c: In function 'wait_for_packet':
> pktio.c:356:13: error: storage size of 'wait_time' isn't known
>   odp_time_t wait_time, end;
>  ^
> pktio.c:356:24: error: storage size of 'end' isn't known
>   odp_time_t wait_time, end;
> ^
> pktio.c:362:2: error: invalid use of incomplete typedef 'odp_time_t'
>   wait_time = odp_time_local_from_ns(ns);
>   ^
> pktio.c:363:2: error: invalid use of incomplete typedef 'odp_time_t'
>   end = odp_time_sum(odp_time_local(), wait_time);
>   ^
> pktio.c:363:21: error: type of formal parameter 1 is incomplete
>   end = odp_time_sum(odp_time_local(), wait_time);
>  ^
> pktio.c:363:39: error: type of formal parameter 2 is incomplete
>   end = odp_time_sum(odp_time_local(), wait_time);
>^
> pktio.c:389:2: error: invalid use of incomplete typedef 'odp_time_t'
>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>   ^
> pktio.c:389:24: error: type of formal parameter 1 is incomplete
>   } while (odp_time_cmp(end, odp_time_local()) > 0);
> ^
> pktio.c:389:29: error: type of formal parameter 2 is incomplete
>   } while (odp_time_cmp(end, odp_time_local()) > 0);
>  ^
> pktio.c:356:24: error: unused variable 'end' [-Werror=unused-variable]
>   odp_time_t wait_time, end;
> ^
> pktio.c:356:13: error: unused variable 'wait_time'
> [-Werror=unused-variable]
>   odp_time_t wait_time, end;
>  ^
> cc1: all warnings being treated as errors
> Makefile:504: recipe for target 'pktio.lo' failed
> make[3]: *** [pktio.lo] Error 1
> make[3]: Leaving directory
> '/home/bill/linaro/api-next/test/validation/pktio'
> Makefile:417: recipe for target 'all-recursive' failed
> make[2]: *** [all-recursive] Error 1
>
>
> On Tue, Dec 8, 2015 at 5:12 PM, Mike Holmes 
> wrote:
>
>> Patch sent that works for me, it depends on the compiler in use and the
>> c99 vs posix standard I think
>>
>> On 8 December 2015 at 17:14, Bill Fischofer 
>> wrote:
>>
>>> git bisect shows:
>>>
>>> 3164ccfe7e6dc548852b8f6f681069cd6d524bfc is the first bad commit
>>> commit 3164ccfe7e6dc548852b8f6f681069cd6d524bfc
>>> Author: Ivan Khoronzhuk 
>>> Date:   Fri Dec 4 19:51:29 2015 +0200
>>>
>>> linux-generic: odp_time: don't use cpu cycle API to get time
>>>
>>> The linux-generic time API implementation shouldn't depend on cpu
>>> cycle API wich is not stable enough to measure time period due to
>>> dynamic frequency scaling.
>>>
>>> Reviewed-by: Petri Savolainen 
>>> Signed-off-by: Ivan Khoronzhuk 
>>> Signed-off-by: Maxim Uvarov 
>>>
>>> :04 04 5b252b56eaa4d7c8df9f4583d0b6e7b8db9a9fb9
>>> d331e32ad2a37014cdb8133a917cd660f52b6f7c M platform
>>>
>>>
>>> On Tue, 

Re: [lng-odp] api-next broken?

2015-12-08 Thread Bill Fischofer
git bisect shows:

3164ccfe7e6dc548852b8f6f681069cd6d524bfc is the first bad commit
commit 3164ccfe7e6dc548852b8f6f681069cd6d524bfc
Author: Ivan Khoronzhuk 
Date:   Fri Dec 4 19:51:29 2015 +0200

linux-generic: odp_time: don't use cpu cycle API to get time

The linux-generic time API implementation shouldn't depend on cpu
cycle API wich is not stable enough to measure time period due to
dynamic frequency scaling.

Reviewed-by: Petri Savolainen 
Signed-off-by: Ivan Khoronzhuk 
Signed-off-by: Maxim Uvarov 

:04 04 5b252b56eaa4d7c8df9f4583d0b6e7b8db9a9fb9
d331e32ad2a37014cdb8133a917cd660f52b6f7c M platform


On Tue, Dec 8, 2015 at 3:55 PM, Bill Fischofer 
wrote:

> Trying to compile a fresh clone of api-next I'm seeing the following:
>
>   CC   odp_schedule.lo
> odp_schedule.c: In function 'schedule_loop':
> odp_schedule.c:589:13: error: storage size of 'next' isn't known
>   odp_time_t next, wtime;
>  ^
> odp_schedule.c:589:19: error: storage size of 'wtime' isn't known
>   odp_time_t next, wtime;
>^
> odp_schedule.c:606:4: error: invalid use of incomplete typedef 'odp_time_t'
> wtime = odp_time_local_from_ns(wait);
> ^
> odp_schedule.c:607:4: error: invalid use of incomplete typedef 'odp_time_t'
> next = odp_time_sum(odp_time_local(), wtime);
> ^
> odp_schedule.c:607:24: error: type of formal parameter 1 is incomplete
> next = odp_time_sum(odp_time_local(), wtime);
> ^
> odp_schedule.c:607:42: error: type of formal parameter 2 is incomplete
> next = odp_time_sum(odp_time_local(), wtime);
>   ^
> odp_schedule.c:612:3: error: invalid use of incomplete typedef 'odp_time_t'
>if (odp_time_cmp(next, odp_time_local()) < 0)
>^
> odp_schedule.c:612:20: error: type of formal parameter 1 is incomplete
>if (odp_time_cmp(next, odp_time_local()) < 0)
> ^
> odp_schedule.c:612:26: error: type of formal parameter 2 is incomplete
>if (odp_time_cmp(next, odp_time_local()) < 0)
>   ^
> odp_schedule.c:589:19: error: unused variable 'wtime'
> [-Werror=unused-variable]
>   odp_time_t next, wtime;
>^
> odp_schedule.c:589:13: error: unused variable 'next'
> [-Werror=unused-variable]
>   odp_time_t next, wtime;
>  ^
> cc1: all warnings being treated as errors
> Makefile:757: recipe for target 'odp_schedule.lo' failed
>
>
___
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp


[lng-odp] api-next broken?

2015-12-08 Thread Bill Fischofer
Trying to compile a fresh clone of api-next I'm seeing the following:

  CC   odp_schedule.lo
odp_schedule.c: In function 'schedule_loop':
odp_schedule.c:589:13: error: storage size of 'next' isn't known
  odp_time_t next, wtime;
 ^
odp_schedule.c:589:19: error: storage size of 'wtime' isn't known
  odp_time_t next, wtime;
   ^
odp_schedule.c:606:4: error: invalid use of incomplete typedef 'odp_time_t'
wtime = odp_time_local_from_ns(wait);
^
odp_schedule.c:607:4: error: invalid use of incomplete typedef 'odp_time_t'
next = odp_time_sum(odp_time_local(), wtime);
^
odp_schedule.c:607:24: error: type of formal parameter 1 is incomplete
next = odp_time_sum(odp_time_local(), wtime);
^
odp_schedule.c:607:42: error: type of formal parameter 2 is incomplete
next = odp_time_sum(odp_time_local(), wtime);
  ^
odp_schedule.c:612:3: error: invalid use of incomplete typedef 'odp_time_t'
   if (odp_time_cmp(next, odp_time_local()) < 0)
   ^
odp_schedule.c:612:20: error: type of formal parameter 1 is incomplete
   if (odp_time_cmp(next, odp_time_local()) < 0)
^
odp_schedule.c:612:26: error: type of formal parameter 2 is incomplete
   if (odp_time_cmp(next, odp_time_local()) < 0)
  ^
odp_schedule.c:589:19: error: unused variable 'wtime'
[-Werror=unused-variable]
  odp_time_t next, wtime;
   ^
odp_schedule.c:589:13: error: unused variable 'next'
[-Werror=unused-variable]
  odp_time_t next, wtime;
 ^
cc1: all warnings being treated as errors
Makefile:757: recipe for target 'odp_schedule.lo' failed
___
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp