Peter Zijlstra writes:
> On Fri, Jul 24, 2015 at 02:45:56PM +0300, Alexander Shishkin wrote:
>> +static void perf_error_report_site(struct perf_event_attr *attr,
>> + const struct perf_err_site *site)
>> +{
>> +void *buffer;
>> +
>> +if (!site || !extended_re
On Fri, Jul 24, 2015 at 02:45:56PM +0300, Alexander Shishkin wrote:
> @@ -3890,7 +3958,7 @@ perf_read(struct file *file, char __user *buf, size_t
> count, loff_t *ppos)
> ret = perf_read_hw(event, buf, count);
> perf_event_ctx_unlock(event, ctx);
>
> - return ret;
> + return
On Fri, Jul 24, 2015 at 02:45:56PM +0300, Alexander Shishkin wrote:
> +static void perf_error_report_site(struct perf_event_attr *attr,
> +const struct perf_err_site *site)
> +{
> + void *buffer;
> +
> + if (!site || !extended_reporting_enabled(attr))
> +
On Fri, Jul 24, 2015 at 02:45:56PM +0300, Alexander Shishkin wrote:
> +#define __perf_err(__e, __c, __m) ({ \
> + static struct perf_err_site \
> + __attribute__ ((unused,__section__("__perf_err"))) \
> + __err_site = {
On Fri, Jul 24, 2015 at 02:45:56PM +0300, Alexander Shishkin wrote:
> +/*
> + * Use part of the [-1, -MAX_ERRNO] errno range for perf's extended error
> + * reporting. Anything within [-PERF_ERRNO, -MAX_ERRNO] is an index of a
> + * perf_err_site structure within __perf_err section. 3.5k should be
Alexander Shishkin writes:
> +static inline int perf_errno(const struct perf_err_site *site)
> +{
> + unsigned long err = site - __start___perf_err;
> +
> + trace_printk("[%ld] %s:%d, %d\n", err, site->file, site->line,
> site->code);
I should mention that this trace_printk() was uninten
6 matches
Mail list logo