Aside from the deprecation question, for this series:

Reviewed-and-tested-by: Bill Fischofer <bill.fischo...@linaro.org>

Also, Parts 9 and 11 are fine but both cause checkpatch to hiccup:

bill@Ubuntu64:~/linaro/hubodp$ ./scripts/checkpatch.pl
0009-linux-gen-time-use-hw-time-counter-when-available.patch
Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/\((?^x:
(?^x:
(?:(?^:(?:(?^x:
const|
__percpu|
__nocast|
__safe|
__bitwise__|
__packed__|
__packed2__|
__naked|
__maybe_unused|
__always_unused|
__noreturn|
__used|
__cold|
__pure|
__noclone|
__deprecated|
__read_mostly|
__kprobes|
(?^:(?^:(?^:__(?:mem|cpu|dev|net_|))(?:initdata\b))|(?^:(?^:__(?:mem|cpu|dev|net_|))(?:initconst\b))|(?^:(?^:__(?:mem|cpu|dev|net_|))(?:init\b)))|
____cacheline_aligned|
____cacheline_aligned_in_smp|
____cacheline_internodealigned_in_smp|
__weak
 )|(?^x:
__user|
__kernel|
__force|
__iomem|
__must_check|
__init_refok|
__kprobes|
__ref|
__rcu
)|(?x:
(?^:fastcall)
)))\s+|const\s+)*
(?:
(?:typeof|__typeof__)\s*\([^\)]*\)|
(?:(?^:(?x:
u_(?:char|short|int|long) |          # bsd
u(?:nchar|short|int|long)            # sysv
))\b)|
(?:(?^:(?x:
(?:__)?(?:u|s|be|le)(?:8|16|32|64)|
atomic_t
))\b)|
(?:(?x:
(?^:void)|
  (?^:(?:(?:un)?signed\s+)?char)|
  (?^:(?:(?:un)?signed\s+)?short\s+int)|
  (?^:(?:(?:un)?signed\s+)?short)|
  (?^:(?:(?:un)?signed\s+)?int)|
  (?^:(?:(?:un)?signed\s+)?long\s+int)|
  (?^:(?:(?:un)?signed\s+)?long\s+long\s+int)|
  (?^:(?:(?:un)?signed\s+)?long\s+long)|
  (?^:(?:(?:un)?signed\s+)?long)|
  (?^:(?:un)?signed)|
  (?^:float)|
  (?^:double)|
  (?^:bool)|
  (?^:struct\s+(?^x:
[A-Za-z_][A-Za-z\d_]*
(?:\s*\#\#\s*[A-Za-z_][A-Za-z\d_]*)*
))|
  (?^:union\s+(?^x:
[A-Za-z_][A-Za-z\d_]*
(?:\s*\#\#\s*[A-Za-z_][A-Za-z\d_]*)*
))|
  (?^:enum\s+(?^x:
[A-Za-z_][A-Za-z\d_]*
(?:\s*\#\#\s*[A-Za-z_][A-Za-z\d_]*)*
))|
  (?^:(?^x:
[A-Za-z_][A-Za-z\d_]*
(?:\s*\#\#\s*[A-Za-z_][A-Za-z\d_]*)*
)_t)|
  (?^:(?^x:
[A-Za-z_][A-Za-z\d_]*
(?:\s*\#\#\s*[A-Za-z_][A-Za-z\d_]*)*
)_handler)|
  (?^:(?^x:
[A-Za-z_][A-Za-z\d_]*
(?:\s*\#\#\s*[A-Za-z_][A-Za-z\d_]*)*
)_handler_fn)|
  (?^:char\s+(?:un)?signed)|
  (?^:int\s+(?:(?:un)?signed\s+)?short\s)|
  (?^:int\s+short(?:\s+(?:un)?signed))|
  (?^:short\s+int(?:\s+(?:un)?signed))|
  (?^:(?:un)?signed\s+int\s+short)|
  (?^:short\s+(?:un)?signed)|
  (?^:long\s+int\s+(?:un)?signed)|
  (?^:int\s+long\s+(?:un)?signed)|
  (?^:long\s+(?:un)?signed\s+int)|
  (?^:int\s+(?:un)?signed\s+long)|
  (?^:int\s+(?:un)?signed)|
  (?^:int\s+long\s+long\s+(?:un)?signed)|
  (?^:long\s+long\s+int\s+(?:un)?signed)|
  (?^:long\s+long\s+(?:un)?signed\s+int)|
  (?^:long\s+long\s+(?:un)?signed)|
  (?^:long\s+(?:un)?signed)
)\b)
)
(?:\s+(?^:(?:(?^x:
const|
__percpu|
__nocast|
__safe|
__bitwise__|
__packed__|
__packed2__|
__naked|
__maybe_unused|
__always_unused|
__noreturn|
__used|
__cold|
__pure|
__noclone|
__deprecated|
__read_mostly|
__kprobes|
(?^:(?^:(?^:__(?:mem|cpu|dev|net_|))(?:initdata\b))|(?^:(?^:__(?:mem|cpu|dev|net_|))(?:initconst\b))|(?^:(?^:__(?:mem|cpu|dev|net_|))(?:init\b)))|
____cacheline_aligned|
____cacheline_aligned_in_smp|
____cacheline_internodealigned_in_smp|
__weak
 )|(?^x:
__user|
__kernel|
__force|
__iomem|
__must_check|
__init_refok|
__kprobes|
__ref|
__rcu
)|(?x:
(?^:fastcall)
)))|\s+const)*
 )
(?:(?:\s|\*|\[\])+\s*const|(?:\s|\*\s*(?:const\s*)?|\[\])+|(?:\s*\[\s*\])+)?
(?:\s+(?^:inline|__always_inline|noinline|__inline|__inline__)|\s+(?^:(?:(?^x:
const|
__percpu|
__nocast|
__safe|
__bitwise__|
__packed__|
__packed2__|
__naked|
__maybe_unused|
__always_unused|
__noreturn|
__used|
__cold|
__pure|
__noclone|
__deprecated|
__read_mostly|
__kprobes|
(?^:(?^:(?^:__(?:mem|cpu|dev|net_|))(?:initdata\b))|(?^:(?^:__(?:mem|cpu|dev|net_|))(?:initconst\b))|(?^:(?^:__(?:mem|cpu|dev|net_|))(?:init\b)))|
____cacheline_aligned|
____cacheline_aligned_in_smp|
____cacheline_internodealigned_in_smp|
__weak
 )|(?^x:
__user|
__kernel|
__force|
__iomem|
__must_check|
__init_refok|
__kprobes|
__ref|
__rcu
)|(?x:
(?^:fastcall)
))))*
 )\){ <-- HERE / at ./scripts/checkpatch.pl line 3926.
total: 0 errors, 0 warnings, 0 checks, 645 lines checked

NOTE: Ignored message types: BIT_MACRO COMPARISON_TO_NULL
DEPRECATED_VARIABLE NEW_TYPEDEFS SPLIT_STRING SSCANF_TO_KSTRTO

0009-linux-gen-time-use-hw-time-counter-when-available.patch has no obvious
style problems and is ready for submission.
bill@Ubuntu64:~/linaro/hubodp$


On Fri, Apr 28, 2017 at 2:28 PM, Maxim Uvarov <maxim.uva...@linaro.org>
wrote:

> On 04/28/17 22:09, Bill Fischofer wrote:
> > I agree that the validation test for odp_time_to_u64() is suspect and
> > should be fixed, but why remove this API? We've established that various
> > abstract types have odp_xxx_to_u64() routines designed for debugging use
> > and this makes odp_time_t an exception to that rule.
> >
> > Also, shouldn't we deprecate it if we want to remove it? What's the point
> > of having the deprecation framework in place if we're not going to bother
> > with it?
> >
>
> I think odp_x_to_u64() makes sense only for handles which somehow
> related to odp event. I.e. it's reasonable to have it for timer, but not
> for time. odp_time_t is more data structure then handle of something.
>
> Maxim.
>
>
>
> > On Fri, Apr 28, 2017 at 7:09 AM, Petri Savolainen <
> > petri.savolai...@linaro.org> wrote:
> >
> >> Debug function that converts odp_time_t to u64 is unnecessary
> >> since odp_time_to_ns() returns time as a u64 (nsec) value.
> >> Application can always use that as the 64 bit representation
> >> of an odp_time_t value. Also validation tests for odp_time_to_u64()
> >> were erroneous since those compared returned u64 values and
> >> expected greater/lesser than relation.
> >>
> >> Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org>
> >> ---
> >>  include/odp/api/spec/time.h                 | 13 ----------
> >>  platform/linux-generic/odp_time.c           | 15 ------------
> >>  test/common_plat/validation/api/time/time.c | 37
> >> -----------------------------
> >>  test/common_plat/validation/api/time/time.h |  2 --
> >>  4 files changed, 67 deletions(-)
> >>
> >> diff --git a/include/odp/api/spec/time.h b/include/odp/api/spec/time.h
> >> index fcc94c98..29175eb5 100644
> >> --- a/include/odp/api/spec/time.h
> >> +++ b/include/odp/api/spec/time.h
> >> @@ -158,19 +158,6 @@ void odp_time_wait_until(odp_time_t time);
> >>  void odp_time_wait_ns(uint64_t ns);
> >>
> >>  /**
> >> - * Get printable value for an odp_time_t
> >> - *
> >> - * @param time time to be printed
> >> - *
> >> - * @return uint64_t value that can be used to print/display this time
> >> - *
> >> - * @note This routine is intended to be used for diagnostic purposes
> >> - * to enable applications to generate a printable value that represents
> >> - * an odp_time_t time.
> >> - */
> >> -uint64_t odp_time_to_u64(odp_time_t time);
> >> -
> >> -/**
> >>   * @}
> >>   */
> >>
> >> diff --git a/platform/linux-generic/odp_time.c
> >> b/platform/linux-generic/odp_time.c
> >> index 81e05224..0e5966c0 100644
> >> --- a/platform/linux-generic/odp_time.c
> >> +++ b/platform/linux-generic/odp_time.c
> >> @@ -176,21 +176,6 @@ void odp_time_wait_until(odp_time_t time)
> >>         return time_wait_until(time);
> >>  }
> >>
> >> -uint64_t odp_time_to_u64(odp_time_t time)
> >> -{
> >> -       int ret;
> >> -       struct timespec tres;
> >> -       uint64_t resolution;
> >> -
> >> -       ret = clock_getres(CLOCK_MONOTONIC_RAW, &tres);
> >> -       if (odp_unlikely(ret != 0))
> >> -               ODP_ABORT("clock_getres failed\n");
> >> -
> >> -       resolution = (uint64_t)tres.tv_nsec;
> >> -
> >> -       return time_to_ns(time) / resolution;
> >> -}
> >> -
> >>  int odp_time_init_global(void)
> >>  {
> >>         int ret;
> >> diff --git a/test/common_plat/validation/api/time/time.c
> >> b/test/common_plat/validation/api/time/time.c
> >> index 530d5c07..df65c719 100644
> >> --- a/test/common_plat/validation/api/time/time.c
> >> +++ b/test/common_plat/validation/api/time/time.c
> >> @@ -398,41 +398,6 @@ void time_test_wait_ns(void)
> >>         }
> >>  }
> >>
> >> -static void time_test_to_u64(time_cb time)
> >> -{
> >> -       volatile int count = 0;
> >> -       uint64_t val1, val2;
> >> -       odp_time_t t1, t2;
> >> -
> >> -       t1 = time();
> >> -
> >> -       val1 = odp_time_to_u64(t1);
> >> -       CU_ASSERT(val1 > 0);
> >> -
> >> -       while (count < BUSY_LOOP_CNT) {
> >> -               count++;
> >> -       };
> >> -
> >> -       t2 = time();
> >> -       val2 = odp_time_to_u64(t2);
> >> -       CU_ASSERT(val2 > 0);
> >> -
> >> -       CU_ASSERT(val2 > val1);
> >> -
> >> -       val1 = odp_time_to_u64(ODP_TIME_NULL);
> >> -       CU_ASSERT(val1 == 0);
> >> -}
> >> -
> >> -void time_test_local_to_u64(void)
> >> -{
> >> -       time_test_to_u64(odp_time_local);
> >> -}
> >> -
> >> -void time_test_global_to_u64(void)
> >> -{
> >> -       time_test_to_u64(odp_time_global);
> >> -}
> >> -
> >>  odp_testinfo_t time_suite_time[] = {
> >>         ODP_TEST_INFO(time_test_constants),
> >>         ODP_TEST_INFO(time_test_local_res),
> >> @@ -443,14 +408,12 @@ odp_testinfo_t time_suite_time[] = {
> >>         ODP_TEST_INFO(time_test_local_sum),
> >>         ODP_TEST_INFO(time_test_local_wait_until),
> >>         ODP_TEST_INFO(time_test_wait_ns),
> >> -       ODP_TEST_INFO(time_test_local_to_u64),
> >>         ODP_TEST_INFO(time_test_global_res),
> >>         ODP_TEST_INFO(time_test_global_conversion),
> >>         ODP_TEST_INFO(time_test_global_cmp),
> >>         ODP_TEST_INFO(time_test_global_diff),
> >>         ODP_TEST_INFO(time_test_global_sum),
> >>         ODP_TEST_INFO(time_test_global_wait_until),
> >> -       ODP_TEST_INFO(time_test_global_to_u64),
> >>         ODP_TEST_INFO_NULL
> >>  };
> >>
> >> diff --git a/test/common_plat/validation/api/time/time.h
> >> b/test/common_plat/validation/api/time/time.h
> >> index e5132a49..10956294 100644
> >> --- a/test/common_plat/validation/api/time/time.h
> >> +++ b/test/common_plat/validation/api/time/time.h
> >> @@ -24,8 +24,6 @@ void time_test_global_sum(void);
> >>  void time_test_local_wait_until(void);
> >>  void time_test_global_wait_until(void);
> >>  void time_test_wait_ns(void);
> >> -void time_test_local_to_u64(void);
> >> -void time_test_global_to_u64(void);
> >>  void time_test_monotony(void);
> >>
> >>  /* test arrays: */
> >> --
> >> 2.11.0
> >>
> >>
>
>

Reply via email to