1. 11 Nov, 2013 10 commits
  2. 09 Nov, 2013 2 commits
    • Oleg Nesterov's avatar
      uprobes: Fix the memory out of bound overwrite in copy_insn() · 2ded0980
      Oleg Nesterov authored
      1. copy_insn() doesn't look very nice, all calculations are
         confusing and it is not immediately clear why do we read
         the 2nd page first.
      
      2. The usage of inode->i_size is wrong on 32-bit machines.
      
      3. "Instruction at end of binary" logic is simply wrong, it
         doesn't handle the case when uprobe->offset > inode->i_size.
      
         In this case "bytes" overflows, and __copy_insn() writes to
         the memory outside of uprobe->arch.insn.
      
         Yes, uprobe_register() checks i_size_read(), but this file
         can be truncated after that. All i_size checks are racy, we
         do this only to catch the obvious mistakes.
      
      Change copy_insn() to call __copy_insn() in a loop, simplify
      and fix the bytes/nbytes calculations.
      
      Note: we do not care if we read extra bytes after inode->i_size
      if we got the valid page. This is fine because the task gets the
      same page after page-fault, and arch_uprobe_analyze_insn() can't
      know how many bytes were actually read anyway.
      Signed-off-by: default avatarOleg Nesterov <oleg@redhat.com>
      2ded0980
    • Oleg Nesterov's avatar
      uprobes: Fix the wrong usage of current->utask in uprobe_copy_process() · 70d7f987
      Oleg Nesterov authored
      Commit aa59c53f "uprobes: Change uprobe_copy_process() to dup
      xol_area" has a stupid typo, we need to setup t->utask->vaddr but
      the code wrongly uses current->utask.
      
      Even with this bug dup_xol_work() works "in practice", but only
      because get_unmapped_area(NULL, TASK_SIZE - PAGE_SIZE) likely
      returns the same address every time.
      Signed-off-by: default avatarOleg Nesterov <oleg@redhat.com>
      70d7f987
  3. 07 Nov, 2013 9 commits
  4. 06 Nov, 2013 16 commits
  5. 05 Nov, 2013 3 commits
    • Arnaldo Carvalho de Melo's avatar
      perf tools: Finish the removal of 'self' arguments · 316c7136
      Arnaldo Carvalho de Melo authored
      They convey no information, perhaps I was bitten by some snake at some
      point, complete the detox by naming the last of those arguments more
      sensibly.
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-u1r0dnjoro08dgztiy2g3t2q@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      316c7136
    • Jiri Olsa's avatar
      perf tools: Check maximum frequency rate for record/top · 714647bd
      Jiri Olsa authored
      Adding the check for maximum allowed frequency rate defined in following
      file:
      
        /proc/sys/kernel/perf_event_max_sample_rate
      
      When we cross the maximum value we fail and display detailed error
      message with advise.
      
        $ perf record -F 3000 ls
        Maximum frequency rate (2000) reached.
        Please use -F freq option with lower value or consider
        tweaking /proc/sys/kernel/perf_event_max_sample_rate.
      
      In case user does not specify the frequency and the default value cross
      the maximum, we display warning and set the frequency value to the
      current maximum.
      
        $ perf record ls
        Lowering default frequency rate to 2000.
        Please consider tweaking /proc/sys/kernel/perf_event_max_sample_rate.
      
      Same messages are used for 'perf top'.
      Signed-off-by: default avatarJiri Olsa <jolsa@redhat.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1383660887-1734-4-git-send-email-jolsa@redhat.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      714647bd
    • Jiri Olsa's avatar
      perf fs: Add procfs support · a9862418
      Jiri Olsa authored
      Adding procfs support into fs class.
      
      The interface function:
        const char *procfs__mountpoint(void);
      
      provides existing mountpoint path for procfs.
      Signed-off-by: default avatarJiri Olsa <jolsa@redhat.com>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1383660887-1734-3-git-send-email-jolsa@redhat.com
      [ Fixup namespace ]
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      a9862418