Skip to content
Snippets Groups Projects
  1. May 11, 2022
  2. Mar 07, 2022
  3. Feb 21, 2022
  4. Feb 09, 2022
  5. Jan 12, 2022
    • Paolo Bonzini's avatar
      configure: simplify creation of plugin symbol list · 37650689
      Paolo Bonzini authored
      
      --dynamic-list is present on all supported ELF (not Windows or Darwin)
      platforms, since it dates back to 2006; -exported_symbols_list is
      likewise present on all supported versions of macOS.  Do not bother
      doing a functional test in configure.
      
      Remove the file creation from configure as well: for Darwin, move the
      the creation of the Darwin-formatted symbols to meson; for ELF, use the
      file in the source path directly and switch from -Wl, to -Xlinker to
      not break weird paths that include a comma.
      
      Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      37650689
  6. Nov 29, 2021
  7. Oct 12, 2021
  8. Oct 05, 2021
  9. Sep 02, 2021
  10. Jul 23, 2021
  11. Jul 21, 2021
  12. Jul 14, 2021
  13. Jun 25, 2021
  14. Jun 21, 2021
  15. Jun 19, 2021
  16. May 26, 2021
  17. May 02, 2021
  18. Mar 17, 2021
  19. Feb 18, 2021
  20. Jan 02, 2021
    • Daniele Buono's avatar
      cfi: Initial support for cfi-icall in QEMU · c905a368
      Daniele Buono authored
      
      LLVM/Clang, supports runtime checks for forward-edge Control-Flow
      Integrity (CFI).
      
      CFI on indirect function calls (cfi-icall) ensures that, in indirect
      function calls, the function called is of the right signature for the
      pointer type defined at compile time.
      
      For this check to work, the code must always respect the function
      signature when using function pointer, the function must be defined
      at compile time, and be compiled with link-time optimization.
      
      This rules out, for example, shared libraries that are dynamically loaded
      (given that functions are not known at compile time), and code that is
      dynamically generated at run-time.
      
      This patch:
      
      1) Introduces the CONFIG_CFI flag to support cfi in QEMU
      
      2) Introduces a decorator to allow the definition of "sensitive"
      functions, where a non-instrumented function may be called at runtime
      through a pointer. The decorator will take care of disabling cfi-icall
      checks on such functions, when cfi is enabled.
      
      3) Marks functions currently in QEMU that exhibit such behavior,
      in particular:
      - The function in TCG that calls pre-compiled TBs
      - The function in TCI that interprets instructions
      - Functions in the plugin infrastructures that jump to callbacks
      - Functions in util that directly call a signal handler
      
      Signed-off-by: default avatarDaniele Buono <dbuono@linux.vnet.ibm.com>
      Acked-by: default avatarAlex Bennée <alex.bennee@linaro.org>
      Message-Id: <20201204230615.2392-3-dbuono@linux.vnet.ibm.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      c905a368
  21. Dec 15, 2020
  22. Oct 13, 2020
  23. Oct 09, 2020
  24. Aug 21, 2020
  25. May 15, 2020
  26. Mar 17, 2020
  27. Feb 25, 2020
  28. Jan 16, 2020
  29. Nov 12, 2019
Loading