Loading drivers/oprofile/buffer_sync.c +19 −20 Original line number Diff line number Diff line Loading @@ -392,11 +392,29 @@ static void add_sample_entry(unsigned long offset, unsigned long event) } static int add_us_sample(struct mm_struct *mm, struct op_sample *s) /* * Add a sample to the global event buffer. If possible the * sample is converted into a persistent dentry/offset pair * for later lookup from userspace. Return 0 on failure. */ static int add_sample(struct mm_struct *mm, struct op_sample *s, int in_kernel) { unsigned long cookie; off_t offset; if (in_kernel) { add_sample_entry(s->eip, s->event); return 1; } /* add userspace sample */ if (!mm) { atomic_inc(&oprofile_stats.sample_lost_no_mm); return 0; } cookie = lookup_dcookie(mm, s->eip, &offset); if (cookie == INVALID_COOKIE) { Loading @@ -415,25 +433,6 @@ static int add_us_sample(struct mm_struct *mm, struct op_sample *s) } /* Add a sample to the global event buffer. If possible the * sample is converted into a persistent dentry/offset pair * for later lookup from userspace. */ static int add_sample(struct mm_struct *mm, struct op_sample *s, int in_kernel) { if (in_kernel) { add_sample_entry(s->eip, s->event); return 1; } else if (mm) { return add_us_sample(mm, s); } else { atomic_inc(&oprofile_stats.sample_lost_no_mm); } return 0; } static void release_mm(struct mm_struct *mm) { if (!mm) Loading Loading
drivers/oprofile/buffer_sync.c +19 −20 Original line number Diff line number Diff line Loading @@ -392,11 +392,29 @@ static void add_sample_entry(unsigned long offset, unsigned long event) } static int add_us_sample(struct mm_struct *mm, struct op_sample *s) /* * Add a sample to the global event buffer. If possible the * sample is converted into a persistent dentry/offset pair * for later lookup from userspace. Return 0 on failure. */ static int add_sample(struct mm_struct *mm, struct op_sample *s, int in_kernel) { unsigned long cookie; off_t offset; if (in_kernel) { add_sample_entry(s->eip, s->event); return 1; } /* add userspace sample */ if (!mm) { atomic_inc(&oprofile_stats.sample_lost_no_mm); return 0; } cookie = lookup_dcookie(mm, s->eip, &offset); if (cookie == INVALID_COOKIE) { Loading @@ -415,25 +433,6 @@ static int add_us_sample(struct mm_struct *mm, struct op_sample *s) } /* Add a sample to the global event buffer. If possible the * sample is converted into a persistent dentry/offset pair * for later lookup from userspace. */ static int add_sample(struct mm_struct *mm, struct op_sample *s, int in_kernel) { if (in_kernel) { add_sample_entry(s->eip, s->event); return 1; } else if (mm) { return add_us_sample(mm, s); } else { atomic_inc(&oprofile_stats.sample_lost_no_mm); } return 0; } static void release_mm(struct mm_struct *mm) { if (!mm) Loading