[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 28/29] migration: Add direct-io parameter
|
From: |
Markus Armbruster |
|
Subject: |
Re: [PATCH v2 28/29] migration: Add direct-io parameter |
|
Date: |
Wed, 25 Oct 2023 08:23:03 +0200 |
|
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Fabiano Rosas <farosas@suse.de> writes:
> Markus Armbruster <armbru@redhat.com> writes:
>
>> Fabiano Rosas <farosas@suse.de> writes:
>>
>>> Add the direct-io migration parameter that tells the migration code to
>>> use O_DIRECT when opening the migration stream file whenever possible.
>>>
>>> This is currently only used for the secondary channels of fixed-ram
>>> migration, which can guarantee that writes are page aligned.
>>>
>>> However the parameter could be made to affect other types of
>>> file-based migrations in the future.
>>>
>>> Signed-off-by: Fabiano Rosas <farosas@suse.de>
>>
>> When would you want to enable @direct-io, and when would you want to
>> leave it disabled?
>
> That depends on a performance analysis. You'd generally leave it
> disabled unless there's some indication that the operating system is
> having trouble draining the page cache.
>
> However I don't think QEMU should attempt any kind of prescription in
> that regard.
>
> From the migration implementation perspective, we need to provide
> alignment guarantees on the stream before allowing direct IO to be
> enabled. In this series we're just enabling it for the secondary multifd
> channels which do page-aligned reads/writes.
I'm asking because QEMU provides too many configuration options with too
little guidance on how to use them.
"You'd generally leave it disabled unless there's some indication that
the operating system is having trouble draining the page cache" is
guidance. It'll be a lot more useful in documentation than in the
mailing list archive ;)
>> What happens when you enable @direct-io with a migration that cannot use
>> O_DIRECT?
>
> In this version of the series Daniel suggested that we fail migration in
> case there's no support for direct IO or the migration doesn't support
> it.
Makes sense.
- Re: [PATCH v2 22/29] io: Add a pwritev/preadv version that takes a discontiguous iovec, (continued)
- [PATCH v2 23/29] migration/ram: Add a wrapper for fixed-ram shadow bitmap, Fabiano Rosas, 2023/10/23
- [PATCH v2 25/29] migration/multifd: Support outgoing fixed-ram stream format, Fabiano Rosas, 2023/10/23
- [PATCH v2 26/29] migration/multifd: Support incoming fixed-ram stream format, Fabiano Rosas, 2023/10/23
- [PATCH v2 27/29] tests/qtest: Add a multifd + fixed-ram migration test, Fabiano Rosas, 2023/10/23
- [PATCH v2 28/29] migration: Add direct-io parameter, Fabiano Rosas, 2023/10/23
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Markus Armbruster, 2023/10/24
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Fabiano Rosas, 2023/10/24
- Re: [PATCH v2 28/29] migration: Add direct-io parameter,
Markus Armbruster <=
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Daniel P . Berrangé, 2023/10/25
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Fabiano Rosas, 2023/10/25
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Daniel P . Berrangé, 2023/10/25
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Fabiano Rosas, 2023/10/25
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Daniel P . Berrangé, 2023/10/25
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Fabiano Rosas, 2023/10/25
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Fabiano Rosas, 2023/10/30
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Daniel P . Berrangé, 2023/10/31
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Fabiano Rosas, 2023/10/31
- Re: [PATCH v2 28/29] migration: Add direct-io parameter, Daniel P . Berrangé, 2023/10/31