There's no need for each arch to invoke it directly, and there's no need
for having a stub either. With the present placement of the calls to
init_constructors() it can easily be a constructor itself.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Julien Grall <jgrall@amazon.com>
heap_init_late();
- init_trace_bufs();
-
init_constructors();
console_endboot();
heap_init_late();
- init_trace_bufs();
-
init_constructors();
console_endboot();
* This function is called at start of day in order to initialize the per-cpu
* trace buffers. The trace buffers are then available for debugging use, via
* the %TRACE_xD macros exported in <xen/trace.h>.
+ *
+ * TODO: Try and make this a presmp_initcall() to improve alloc_trace_bufs().
*/
-void __init init_trace_bufs(void)
+static void __init __constructor init_trace_bufs(void)
{
cpumask_setall(&tb_cpu_mask);
register_cpu_notifier(&cpu_nfb);
extern bool tb_init_done;
-/* Used to initialise trace buffer functionality */
-void init_trace_bufs(void);
-
/* used to retrieve the physical address of the trace buffers */
int tb_control(struct xen_sysctl_tbuf_op *tbc);
#define tb_init_done false
-static inline void init_trace_bufs(void) {}
static inline int tb_control(struct xen_sysctl_tbuf_op *tbc)
{
return -ENOSYS;