Skip to content
Snippets Groups Projects
  • Alexis Berlemont's avatar
    3b1f8311
    perf probe: Add sdt probes arguments into the uprobe cmd string · 3b1f8311
    Alexis Berlemont authored
    
    An sdt probe can be associated with arguments but they were not passed
    to the user probe tracing interface (uprobe_events); this patch adapts
    the sdt argument descriptors according to the uprobe input format.
    
    As the uprobe parser does not support scaled address mode, perf will
    skip arguments which cannot be adapted to the uprobe format.
    
    Here are the results:
    
      $ perf buildid-cache -v --add test_sdt
      $ perf probe -x test_sdt sdt_libfoo:table_frob
      $ perf probe -x test_sdt sdt_libfoo:table_diddle
      $ perf record -e sdt_libfoo:table_frob -e sdt_libfoo:table_diddle test_sdt
      $ perf script
      test_sdt  ...   666.255678:   sdt_libfoo:table_frob: (4004d7) arg0=0 arg1=0
      test_sdt  ...   666.255683: sdt_libfoo:table_diddle: (40051a) arg0=0 arg1=0
      test_sdt  ...   666.255686:   sdt_libfoo:table_frob: (4004d7) arg0=1 arg1=2
      test_sdt  ...   666.255689: sdt_libfoo:table_diddle: (40051a) arg0=3 arg1=4
      test_sdt  ...   666.255692:   sdt_libfoo:table_frob: (4004d7) arg0=2 arg1=4
      test_sdt  ...   666.255694: sdt_libfoo:table_diddle: (40051a) arg0=6 arg1=8
    
    Signed-off-by: default avatarAlexis Berlemont <alexis.berlemont@gmail.com>
    Acked-by: default avatarMasami Hiramatsu <mhiramat@kernel.org>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Hemant Kumar <hemant@linux.vnet.ibm.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Ravi Bangoria <ravi.bangoria@linux.vnet.ibm.com>
    Link: http://lkml.kernel.org/r/20161214000732.1710-3-alexis.berlemont@gmail.com
    
    
    Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    3b1f8311
    History
    perf probe: Add sdt probes arguments into the uprobe cmd string
    Alexis Berlemont authored
    
    An sdt probe can be associated with arguments but they were not passed
    to the user probe tracing interface (uprobe_events); this patch adapts
    the sdt argument descriptors according to the uprobe input format.
    
    As the uprobe parser does not support scaled address mode, perf will
    skip arguments which cannot be adapted to the uprobe format.
    
    Here are the results:
    
      $ perf buildid-cache -v --add test_sdt
      $ perf probe -x test_sdt sdt_libfoo:table_frob
      $ perf probe -x test_sdt sdt_libfoo:table_diddle
      $ perf record -e sdt_libfoo:table_frob -e sdt_libfoo:table_diddle test_sdt
      $ perf script
      test_sdt  ...   666.255678:   sdt_libfoo:table_frob: (4004d7) arg0=0 arg1=0
      test_sdt  ...   666.255683: sdt_libfoo:table_diddle: (40051a) arg0=0 arg1=0
      test_sdt  ...   666.255686:   sdt_libfoo:table_frob: (4004d7) arg0=1 arg1=2
      test_sdt  ...   666.255689: sdt_libfoo:table_diddle: (40051a) arg0=3 arg1=4
      test_sdt  ...   666.255692:   sdt_libfoo:table_frob: (4004d7) arg0=2 arg1=4
      test_sdt  ...   666.255694: sdt_libfoo:table_diddle: (40051a) arg0=6 arg1=8
    
    Signed-off-by: default avatarAlexis Berlemont <alexis.berlemont@gmail.com>
    Acked-by: default avatarMasami Hiramatsu <mhiramat@kernel.org>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Hemant Kumar <hemant@linux.vnet.ibm.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Ravi Bangoria <ravi.bangoria@linux.vnet.ibm.com>
    Link: http://lkml.kernel.org/r/20161214000732.1710-3-alexis.berlemont@gmail.com
    
    
    Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>