• Stephane Eranian's avatar
    perf trace scripting: Fix extern struct definitions · 0f940cb7
    Stephane Eranian authored
    Both python_scripting_ops and perl_scripting_ops have two global definitions.
    One in trace-event-scripting.c and one in their respective scripting-engine
    modules.
    
    The issue is that depending on the linker order one definition or the other
    is chosen. One is uninitialized (bss), while the other is initialized. If
    the uninitialized version is chosen, then perf does not function properly.
    
    This patch fixes this by adding the extern prefix to the definitions in
    trace-event-scripting.c.
    
    Cc: David S. Miller <davem@davemloft.net>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    Cc: Ingo Molnar <mingo@elte.hu>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Robert Richter <robert.richter@amd.com>
    LKML-Reference: <4c97e41a.078fd80a.7a8b.3cc9@mx.google.com>
    Signed-off-by: default avatarStephane Eranian <eranian@google.com>
    Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    0f940cb7
trace-event-scripting.c 4.24 KB