Skip to content
Snippets Groups Projects
  1. Jun 20, 2023
  2. Mar 22, 2023
  3. Mar 07, 2023
  4. Feb 02, 2023
  5. Oct 06, 2022
  6. Oct 04, 2022
  7. Sep 01, 2022
  8. May 11, 2022
  9. Mar 07, 2022
  10. Feb 21, 2022
  11. Feb 09, 2022
  12. 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
  13. Nov 29, 2021
  14. Oct 12, 2021
  15. Oct 05, 2021
  16. Sep 02, 2021
  17. Jul 23, 2021
  18. Jul 21, 2021
  19. Jul 14, 2021
  20. Jun 25, 2021
  21. Jun 21, 2021
  22. Jun 19, 2021
  23. May 26, 2021
  24. May 02, 2021
  25. Mar 17, 2021
  26. Feb 18, 2021
  27. 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
  28. Dec 15, 2020
Loading