perf/core: Export AUX buffer helpers to modules

Perf PMU drivers using AUX buffers cannot be built as modules unless
the AUX helpers are exported.

This patch exports perf_aux_output_{begin,end,skip} and perf_get_aux to
modules.

Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
This commit is contained in:
Will Deacon 2016-08-16 16:53:15 +01:00
parent 5ffeb0501c
commit bc1d202023
1 changed files with 4 additions and 0 deletions

View File

@ -411,6 +411,7 @@ void *perf_aux_output_begin(struct perf_output_handle *handle,
return NULL; return NULL;
} }
EXPORT_SYMBOL_GPL(perf_aux_output_begin);
static bool __always_inline rb_need_aux_wakeup(struct ring_buffer *rb) static bool __always_inline rb_need_aux_wakeup(struct ring_buffer *rb)
{ {
@ -480,6 +481,7 @@ void perf_aux_output_end(struct perf_output_handle *handle, unsigned long size)
rb_free_aux(rb); rb_free_aux(rb);
ring_buffer_put(rb); ring_buffer_put(rb);
} }
EXPORT_SYMBOL_GPL(perf_aux_output_end);
/* /*
* Skip over a given number of bytes in the AUX buffer, due to, for example, * Skip over a given number of bytes in the AUX buffer, due to, for example,
@ -505,6 +507,7 @@ int perf_aux_output_skip(struct perf_output_handle *handle, unsigned long size)
return 0; return 0;
} }
EXPORT_SYMBOL_GPL(perf_aux_output_skip);
void *perf_get_aux(struct perf_output_handle *handle) void *perf_get_aux(struct perf_output_handle *handle)
{ {
@ -514,6 +517,7 @@ void *perf_get_aux(struct perf_output_handle *handle)
return handle->rb->aux_priv; return handle->rb->aux_priv;
} }
EXPORT_SYMBOL_GPL(perf_get_aux);
#define PERF_AUX_GFP (GFP_KERNEL | __GFP_ZERO | __GFP_NOWARN | __GFP_NORETRY) #define PERF_AUX_GFP (GFP_KERNEL | __GFP_ZERO | __GFP_NOWARN | __GFP_NORETRY)