1. 12 10月, 2019 1 次提交
  2. 17 5月, 2019 1 次提交
    • R
      tools lib traceevent: Fix missing equality check for strcmp · 7d4d8683
      Rikard Falkeborn 提交于
      [ Upstream commit f32c2877bcb068a718bb70094cd59ccc29d4d082 ]
      
      There was a missing comparison with 0 when checking if type is "s64" or
      "u64". Therefore, the body of the if-statement was entered if "type" was
      "u64" or not "s64", which made the first strcmp() redundant since if
      type is "u64", it's not "s64".
      
      If type is "s64", the body of the if-statement is not entered but since
      the remainder of the function consists of if-statements which will not
      be entered if type is "s64", we will just return "val", which is
      correct, albeit at the cost of a few more calls to strcmp(), i.e., it
      will behave just as if the if-statement was entered.
      
      If type is neither "s64" or "u64", the body of the if-statement will be
      entered incorrectly and "val" returned. This means that any type that is
      checked after "s64" and "u64" is handled the same way as "s64" and
      "u64", i.e., the limiting of "val" to fit in for example "s8" is never
      reached.
      
      This was introduced in the kernel tree when the sources were copied from
      trace-cmd in commit f7d82350 ("tools/events: Add files to create
      libtraceevent.a"), and in the trace-cmd repo in 1cdbae6035cei
      ("Implement typecasting in parser") when the function was introduced,
      i.e., it has always behaved the wrong way.
      
      Detected by cppcheck.
      Signed-off-by: NRikard Falkeborn <rikard.falkeborn@gmail.com>
      Reviewed-by: NSteven Rostedt (VMware) <rostedt@goodmis.org>
      Cc: Tzvetomir Stoyanov <tstoyanov@vmware.com>
      Fixes: f7d82350 ("tools/events: Add files to create libtraceevent.a")
      Link: http://lkml.kernel.org/r/20190409091529.2686-1-rikard.falkeborn@gmail.comSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      Signed-off-by: NSasha Levin <sashal@kernel.org>
      7d4d8683
  3. 06 4月, 2019 1 次提交
  4. 10 1月, 2019 1 次提交
  5. 20 8月, 2018 1 次提交
  6. 14 8月, 2018 20 次提交
  7. 11 8月, 2018 1 次提交
  8. 17 1月, 2018 6 次提交
  9. 17 2月, 2017 1 次提交
  10. 26 1月, 2017 1 次提交
  11. 23 11月, 2016 2 次提交
  12. 14 7月, 2016 1 次提交
    • A
      tools lib traceevent: Add correct header for ipv6 definitions · ca575ad2
      Arnaldo Carvalho de Melo 提交于
      We need to include netinet/in.h to get the in6_addr struct definition, needed to
      build it on the Android NDK:
      
        In file included from event-parse.c:36:0:
        /home/acme/android/android-ndk-r12/platforms/android-24/arch-arm/usr/include/netinet/ip6.h:82:18: error: field 'ip6_src' has incomplete type
          struct in6_addr ip6_src; /* source address */
      
      And it is the canonical way of getting IPv6 definitions, as described,
      for instance, in Linux's 'man ipv6'
      
      Doing that uncovers another problem: this source file uses PRIu64 but
      doesn't include it, depending on it being included by chance via the now
      replaced header (netinet/ip6.h), fix it.
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Chris Phlipot <cphlipot0@gmail.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Wang Nan <wangnan0@huawei.com>
      Link: http://lkml.kernel.org/n/tip-tilr31n3yaba1whsd47qlwa3@git.kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      ca575ad2
  13. 13 7月, 2016 1 次提交
  14. 24 3月, 2016 1 次提交
  15. 11 3月, 2016 1 次提交