Skip to content

Instantly share code, notes, and snippets.

@larytet
Created July 6, 2017 17:50
Show Gist options
  • Save larytet/fc147587e9dfecfe99ab6bac2ba4aaa0 to your computer and use it in GitHub Desktop.
Save larytet/fc147587e9dfecfe99ab6bac2ba4aaa0 to your computer and use it in GitHub Desktop.
stap -D MAXSKIPPED=0 -D MAXTRYLOCK=1000000 -D TRYLOCKDELAY=1 -g -e 'global ar%; function w_ar() {ar[tid()]=tid();} %{long long counter;u8 shm[256];static void* w_shm(void);static void* w_shm() {memset(shm, 0, sizeof(shm));return shm;} %} probe syscall.close{w_ar();%{ {counter++;w_shm();} %}} probe syscall.close.return {w_ar();%{ {counter++;w_shm();} %}} probe syscall.open{w_ar();%{ {counter++;w_shm();} %}} probe syscall.open.return{w_ar();%{ {counter++;w_shm();} %}} probe syscall.dup2.return{w_ar();%{ {counter++;w_shm();} %}} probe syscall.dup2.return{w_ar();%{ {counter++;w_shm();} %}} probe syscall.read.return{w_ar();%{ {counter++;w_shm();} %}} probe syscall.read{w_ar();%{ {counter++;w_shm();} %}} probe end { %{ {printk("\n%lli\n", counter);} %}}'
stap -D MAXSKIPPED=0 -D MAXTRYLOCK=1000000 -D TRYLOCKDELAY=1 -g -e '%{long long counter;u8 shm[256];static void* w_shm(void);static void* w_shm() {memset(shm, 0, sizeof(shm));return shm;} %} probe syscall.close{%{ {counter++;w_shm();} %}} probe syscall.close.return {%{ {counter++;w_shm();} %}} probe syscall.open{%{ {counter++;w_shm();} %}} probe syscall.open.return{%{ {counter++;w_shm();} %}} probe syscall.dup2.return{%{ {counter++;w_shm();} %}} probe syscall.dup2.return{%{ {counter++;w_shm();} %}} probe syscall.read.return{%{ {counter++;w_shm();} %}} probe syscall.read{%{ {counter++;w_shm();} %}} probe end { %{ {printk("\n%lli\n", counter);} %}}'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment