Skip to content
  • Roman Bolshakov's avatar
    8c8ed038
    net/colo: Match is-enabled probe to tracepoint · 8c8ed038
    Roman Bolshakov authored
    Build of QEMU with dtrace fails on macOS:
    
      LINK    x86_64-softmmu/qemu-system-x86_64
    error: probe colo_compare_miscompare doesn't exist
    error: Could not register probes
    ld: error creating dtrace DOF section for architecture x86_64
    
    The reason of the error is explained by Adam Leventhal [1]:
    
      Note that is-enabled probes don't have the stability magic so I'm not
      sure how things would work if only is-enabled probes were used.
    
    net/colo code uses is-enabled probes to determine if other probes should
    be used but colo_compare_miscompare itself is not used explicitly.
    Linker doesn't include the symbol and build fails.
    
    The issue can be resolved if is-enabled probe matches the actual trace
    point that is used inside the test. Packet dump toggle is replaced with
    a compile-time conditional definition.
    
    1. http://markmail.org/message/6grq2ygr5nwdwsnb
    
    
    
    Fixes: f4b61836 ("colo-compare: add TCP, UDP, ICMP packet comparison")
    Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
    Cc: Cameron Esfahani <dirty@apple.com>
    Signed-off-by: default avatarRoman Bolshakov <r.bolshakov@yadro.com>
    Reviewed-by: default avatarZhang Chen <chen.zhang@intel.com>
    Message-id: 20200717093517.73397-5-r.bolshakov@yadro.com
    Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
    8c8ed038
    net/colo: Match is-enabled probe to tracepoint
    Roman Bolshakov authored
    Build of QEMU with dtrace fails on macOS:
    
      LINK    x86_64-softmmu/qemu-system-x86_64
    error: probe colo_compare_miscompare doesn't exist
    error: Could not register probes
    ld: error creating dtrace DOF section for architecture x86_64
    
    The reason of the error is explained by Adam Leventhal [1]:
    
      Note that is-enabled probes don't have the stability magic so I'm not
      sure how things would work if only is-enabled probes were used.
    
    net/colo code uses is-enabled probes to determine if other probes should
    be used but colo_compare_miscompare itself is not used explicitly.
    Linker doesn't include the symbol and build fails.
    
    The issue can be resolved if is-enabled probe matches the actual trace
    point that is used inside the test. Packet dump toggle is replaced with
    a compile-time conditional definition.
    
    1. http://markmail.org/message/6grq2ygr5nwdwsnb
    
    
    
    Fixes: f4b61836 ("colo-compare: add TCP, UDP, ICMP packet comparison")
    Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
    Cc: Cameron Esfahani <dirty@apple.com>
    Signed-off-by: default avatarRoman Bolshakov <r.bolshakov@yadro.com>
    Reviewed-by: default avatarZhang Chen <chen.zhang@intel.com>
    Message-id: 20200717093517.73397-5-r.bolshakov@yadro.com
    Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
Loading