Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Io forward pt2 #831

Merged
merged 24 commits into from
Sep 20, 2024
Merged

Io forward pt2 #831

merged 24 commits into from
Sep 20, 2024

Commits on Sep 20, 2024

  1. Introduce ocf_forward_write_zeros()

    This is meant to be used in atomic mode to avoid allocating huge buffers
    for zeroing data on drive.
    
    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    cd544e8 View commit details
    Browse the repository at this point in the history
  2. composite: Add forward_write_zeros support

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    17144e5 View commit details
    Browse the repository at this point in the history
  3. Introduce ocf_forward_metadata()

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    5859e43 View commit details
    Browse the repository at this point in the history
  4. composite: Add forward_metadata support

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    07abdf5 View commit details
    Browse the repository at this point in the history
  5. Introduce ocf_req_forward_volume_*()

    Those are meant to be used in context where no cache nor queue is
    available (typically at very early stage of initialization). We reuse
    cache_forward* callback and counter, because they will not be used
    in this context anyway.
    
    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    54f75ba View commit details
    Browse the repository at this point in the history
  6. Introduce ocf_forward_get_data()

    Skip the ocf_io abstraction and get the data directly from the request.
    
    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    6aa141c View commit details
    Browse the repository at this point in the history
  7. Replace ocf_forward_get_io() with more specific ops

    struct ocf_io is going to be removed soon (consolidated with ocf_request).
    
    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    2d303e8 View commit details
    Browse the repository at this point in the history
  8. composite: Add forward_io_simple support

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    1f26ceb View commit details
    Browse the repository at this point in the history
  9. Introduce forward_io_simple

    It's intended to be used in a context, where cache is not initialized
    and the io_queue is not available yet.
    
    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    1c2d5bb View commit details
    Browse the repository at this point in the history
  10. Replace submit with forward in mngt

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    8347868 View commit details
    Browse the repository at this point in the history
  11. Replace submit with forward in cleaner

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    322ae26 View commit details
    Browse the repository at this point in the history
  12. Replace submit with forward in standby

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    29ca8fb View commit details
    Browse the repository at this point in the history
  13. Replace submit with forward in metadata_io

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    af3b379 View commit details
    Browse the repository at this point in the history
  14. Replace submit with forward in metadata_raw_atomic

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    9404716 View commit details
    Browse the repository at this point in the history
  15. Replace submit with forward in ocf_metadata_read_sb()

    This one is quite special, because it can be called before cache is
    instantiated, which means we can not allocate the request using
    ocf_req_new_mngt() due to absence of mngt_queue. For that reason we
    simply allocate request using env_zalloc() and then release it with
    env_free(). The lifecycle of the request is very straightforward and
    the only used fields are forward counter and callback.
    
    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    39d566c View commit details
    Browse the repository at this point in the history
  16. Drop support for submit_* ops in backend volumes

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    7fb6b62 View commit details
    Browse the repository at this point in the history
  17. Bind ocf_io to ocf_request

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    c5741df View commit details
    Browse the repository at this point in the history
  18. pyocf: Update tests after the API changes

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    be0ad8f View commit details
    Browse the repository at this point in the history
  19. Redirect ocf_volume_submit_* operations to forward

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    ff5c20b View commit details
    Browse the repository at this point in the history
  20. Remove struct ocf_io

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    f72b922 View commit details
    Browse the repository at this point in the history
  21. example: simple: Update after removing struct ocf_io

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    6392cce View commit details
    Browse the repository at this point in the history
  22. pyocf: Update after removing struct ocf_io

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    9b7f476 View commit details
    Browse the repository at this point in the history
  23. tests: pyocf: Remove legacy submit_* ops implementation from volumes

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    d8d7504 View commit details
    Browse the repository at this point in the history
  24. Consolidate ocf_request_io and ocf_request - io properties

    Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
    Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
    robertbaldyga authored and mmichal10 committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    3fbb757 View commit details
    Browse the repository at this point in the history