kprobe string arg does not return proper value

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



hi,
we see a problem on s390x when trying to retrieve string
argument for kprobe, like:

  # perf probe 'do_sys_open filename:string'
  # perf record -e probe:do_sys_open -a find / > /dev/null
  ^C[ perf record: Woken up 3 times to write data ]
  [ perf record: Captured and wrote 0.774 MB perf.data (7382 samples) ]
  # perf script 
     find 22222 [001] 296517.144464: probe:do_sys_open: (34a7c0) filename_string=""
     find 22222 [001] 296517.144536: probe:do_sys_open: (34a7c0) filename_string=""
     find 22222 [001] 296517.144551: probe:do_sys_open: (34a7c0) filename_string=""
     find 22222 [001] 296517.144580: probe:do_sys_open: (34a7c0) filename_string=""
  ...

we see the same error after enabling the same event via tracefs, like:

  # cd /sys/kernel/debug/tracing
  # cat trace
     <...>-18602 [000] d... 288289.847945: do_sys_open: (do_sys_open+0x0/0x238) filename_string=(fault)
     <...>-18602 [000] d... 288289.848586: do_sys_open: (do_sys_open+0x0/0x238) filename_string=(fault)
     <...>-18602 [000] d... 288289.852643: do_sys_open: (do_sys_open+0x0/0x238) filename_string=(fault)
     <...>-18602 [000] d... 288289.853202: do_sys_open: (do_sys_open+0x0/0x238) filename_string=(fault)
  ...

I'm getting this on latest upstream 5.0.0-rc3+

looks like we call strncpy_from_unsafe -> __get_user, which fails
in this case.. any idea if this is perhaps some known issue on s390x?

thanks for any pointer,
jirka



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Kernel Development]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Info]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Linux Media]     [Device Mapper]

  Powered by Linux