[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 11/14] migration/multifd: Replace multifd_send_state->page
From: |
Peter Xu |
Subject: |
Re: [PATCH v3 11/14] migration/multifd: Replace multifd_send_state->pages with client data |
Date: |
Thu, 22 Aug 2024 11:59:14 -0400 |
On Thu, Aug 01, 2024 at 09:35:13AM -0300, Fabiano Rosas wrote:
> Multifd currently has a simple scheduling mechanism that distributes
> work to the various channels by keeping storage space within each
> channel and an extra space that is given to the client. Each time the
> client fills the space with data and calls into multifd, that space is
> given to the next idle channel and a free storage space is taken from
> the channel and given to client for the next iteration.
>
> This means we always need (#multifd_channels + 1) memory slots to
> operate multifd.
>
> This is fine, except that the presence of this one extra memory slot
> doesn't allow different types of payloads to be processed at the same
> time in different channels, i.e. the data type of
> multifd_send_state->pages needs to be the same as p->pages.
>
> For each new data type different from MultiFDPage_t that is to be
> handled, this logic would need to be duplicated by adding new fields
> to multifd_send_state, to the channels and to multifd_send_pages().
>
> Fix this situation by moving the extra slot into the client and using
> only the generic type MultiFDSendData in the multifd core.
>
> Signed-off-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: Peter Xu <peterx@redhat.com>
--
Peter Xu
- [PATCH v3 09/14] migration/multifd: Isolate ram pages packet data, (continued)
[PATCH v3 01/14] migration/multifd: Reduce access to p->pages, Fabiano Rosas, 2024/08/01
[PATCH v3 04/14] migration/multifd: Pass in MultiFDPages_t to file_write_ramblock_iov, Fabiano Rosas, 2024/08/01
[PATCH v3 07/14] migration/multifd: Replace p->pages with an union pointer, Fabiano Rosas, 2024/08/01
[PATCH v3 11/14] migration/multifd: Replace multifd_send_state->pages with client data, Fabiano Rosas, 2024/08/01
- Re: [PATCH v3 11/14] migration/multifd: Replace multifd_send_state->pages with client data,
Peter Xu <=
[PATCH v3 12/14] migration/multifd: Allow multifd sync without flush, Fabiano Rosas, 2024/08/01
- Re: [PATCH v3 12/14] migration/multifd: Allow multifd sync without flush, Peter Xu, 2024/08/22
- Re: [PATCH v3 12/14] migration/multifd: Allow multifd sync without flush, Peter Xu, 2024/08/22
- Re: [PATCH v3 12/14] migration/multifd: Allow multifd sync without flush, Fabiano Rosas, 2024/08/22
- Re: [PATCH v3 12/14] migration/multifd: Allow multifd sync without flush, Peter Xu, 2024/08/22
- Re: [PATCH v3 12/14] migration/multifd: Allow multifd sync without flush, Fabiano Rosas, 2024/08/22
- Re: [PATCH v3 12/14] migration/multifd: Allow multifd sync without flush, Peter Xu, 2024/08/22
[PATCH v3 13/14] migration/multifd: Register nocomp ops dynamically, Fabiano Rosas, 2024/08/01