Skip to content
Snippets Groups Projects
  1. Sep 07, 2023
  2. Sep 06, 2023
  3. Aug 31, 2023
  4. Aug 02, 2023
  5. Jul 12, 2023
  6. Jul 10, 2023
  7. Jul 08, 2023
  8. Jul 06, 2023
  9. Jul 03, 2023
  10. Jun 30, 2023
  11. Jun 28, 2023
  12. Jun 27, 2023
  13. Jun 25, 2023
  14. Jun 22, 2023
  15. Jun 13, 2023
  16. Jun 08, 2023
  17. Jun 06, 2023
  18. Jun 05, 2023
  19. Jun 01, 2023
    • Stefan Hajnoczi's avatar
      block: add blk_io_plug_call() API · 41abca8c
      Stefan Hajnoczi authored
      
      Introduce a new API for thread-local blk_io_plug() that does not
      traverse the block graph. The goal is to make blk_io_plug() multi-queue
      friendly.
      
      Instead of having block drivers track whether or not we're in a plugged
      section, provide an API that allows them to defer a function call until
      we're unplugged: blk_io_plug_call(fn, opaque). If blk_io_plug_call() is
      called multiple times with the same fn/opaque pair, then fn() is only
      called once at the end of the function - resulting in batching.
      
      This patch introduces the API and changes blk_io_plug()/blk_io_unplug().
      blk_io_plug()/blk_io_unplug() no longer require a BlockBackend argument
      because the plug state is now thread-local.
      
      Later patches convert block drivers to blk_io_plug_call() and then we
      can finally remove .bdrv_co_io_plug() once all block drivers have been
      converted.
      
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Reviewed-by: default avatarEric Blake <eblake@redhat.com>
      Reviewed-by: default avatarStefano Garzarella <sgarzare@redhat.com>
      Acked-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-id: 20230530180959.1108766-2-stefanha@redhat.com
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      41abca8c
  20. May 26, 2023
  21. May 24, 2023
  22. May 23, 2023
  23. May 18, 2023
  24. May 15, 2023
  25. May 12, 2023
  26. May 08, 2023
Loading