cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

kprobe_args_string.tc (938B)


      1#!/bin/sh
      2# SPDX-License-Identifier: GPL-2.0
      3# description: Kprobe event string type argument
      4# requires: kprobe_events
      5
      6case `uname -m` in
      7x86_64)
      8  ARG1=%di
      9;;
     10i[3456]86)
     11  ARG1=%ax
     12;;
     13aarch64)
     14  ARG1=%x0
     15;;
     16arm*)
     17  ARG1=%r0
     18;;
     19ppc64*)
     20  ARG1=%r3
     21;;
     22ppc*)
     23  ARG1=%r3
     24;;
     25s390*)
     26  ARG1=%r2
     27;;
     28mips*)
     29  ARG1=%r4
     30;;
     31*)
     32  echo "Please implement other architecture here"
     33  exit_untested
     34esac
     35
     36: "Test get argument (1)"
     37echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string" > kprobe_events
     38echo 1 > events/kprobes/testprobe/enable
     39echo "p:test $FUNCTION_FORK" >> kprobe_events
     40grep -qe "testprobe.* arg1=\"test\"" trace
     41
     42echo 0 > events/kprobes/testprobe/enable
     43: "Test get argument (2)"
     44echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string arg2=+0(${ARG1}):string" > kprobe_events
     45echo 1 > events/kprobes/testprobe/enable
     46echo "p:test $FUNCTION_FORK" >> kprobe_events
     47grep -qe "testprobe.* arg1=\"test\" arg2=\"test\"" trace
     48