From: Orit Wasserman <owasserm@redhat.com>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 17/23] migration: make sure we always have a migration state
Date: Thu, 06 Oct 2011 11:09:55 +0200 [thread overview]
Message-ID: <4E8D7063.7090404@redhat.com> (raw)
In-Reply-To: <m3aa9f6va5.fsf@trasno.mitica>
[-- Attachment #1: Type: text/plain, Size: 2098 bytes --]
On 10/05/2011 10:25 PM, Juan Quintela wrote:
> Anthony Liguori<anthony@codemonkey.ws> wrote:
>> On 10/04/2011 09:49 AM, Juan Quintela wrote:
>>> Anthony Liguori<anthony@codemonkey.ws> wrote:
>>>> On 09/23/2011 07:57 AM, Juan Quintela wrote:
> [ much more stuff ]
>
>>> It avoids s==NULL checks,
>> In favor of s->state == MIG_STATE_NONE.
>>
>>> and it also avoids having to have new
>>> variables (max_throotle) just because we don't have a migration state
>>> handy.
>> The intention of the global variable is to set a default for new
>> sessions. I can imagine a world where if you had parallel migrations,
>> you could either toggle the default (the global variable) or the
>> specific parameter within a single migration session.
>>
>> But it's not about features. It's a general reluctances to heavily
>> modify the code to rely on a global instead of passing the state
>> around. Here's a pretty good short write up of why this is a Bad
>> Thing.
>>
>> http://stackoverflow.com/questions/1392315/problems-with-singleton-pattern
>>
>> Ultimately, MIG_STATE_NONE shouldn't be needed because we should not
>> be relying on a singleton accessor to get the MigrationState. A
>> better cleanup would be to further pass MigrationState between
>> functions and eliminate the need for a global at all.
> I understand the singleton problem, but the reason to put STATE_NONE is
> not for that O:-) (it just happens that we only have a migration now).
>
> Why I want it?
>
> Just now, the only thing that we are "setting" for a migration before it
> starts is the "bandwidth". I see the future when migration becomes
> something like:
>
> migration_set_speed ....
> migration_set_target ....
> migration_set_<whatever else>
> migrate
>
> as you can see, we are "preparing" migration, and we don't have a
> "STATE" now that describes this state, migration not started, but we
> want to prepare it.
>
> Perhaps a better name that STATE_NONE is in order. I got NONE in the
> sense that "migration" has not been attemted yet.
How about STATE_SETUP or STATE_PREPARE ?
Cheers,
Orit
> Later, Juan.
>
[-- Attachment #2: Type: text/html, Size: 3305 bytes --]
next prev parent reply other threads:[~2011-10-06 9:10 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-23 12:56 [Qemu-devel] [PATCH v3 00/23] Refactor and cleanup migration code Juan Quintela
2011-09-23 12:56 ` [Qemu-devel] [PATCH 01/23] migration: Make *start_outgoing_migration return FdMigrationState Juan Quintela
2011-09-23 12:56 ` [Qemu-devel] [PATCH 02/23] migration: Use FdMigrationState instead of MigrationState when possible Juan Quintela
2011-09-23 12:56 ` [Qemu-devel] [PATCH 03/23] migration: Fold MigrationState into FdMigrationState Juan Quintela
2011-09-23 12:56 ` [Qemu-devel] [PATCH 04/23] migration: Rename FdMigrationState MigrationState Juan Quintela
2011-09-23 12:56 ` [Qemu-devel] [PATCH 05/23] migration: Refactor MigrationState creation Juan Quintela
2011-10-04 14:23 ` Anthony Liguori
2011-10-04 14:44 ` Juan Quintela
2011-10-04 14:55 ` Anthony Liguori
2011-09-23 12:56 ` [Qemu-devel] [PATCH 06/23] migration: Make all posible migration functions static Juan Quintela
2011-09-23 12:56 ` [Qemu-devel] [PATCH 07/23] migration: move migrate_create_state to do_migrate Juan Quintela
2011-09-23 12:56 ` [Qemu-devel] [PATCH 08/23] migration: Introduce MIG_STATE_NONE Juan Quintela
2011-09-23 12:56 ` [Qemu-devel] [PATCH 09/23] migration: Refactor and simplify error checking in migrate_fd_put_ready Juan Quintela
2011-09-23 12:56 ` [Qemu-devel] [PATCH 10/23] migration: Introduce migrate_fd_completed() for consistency Juan Quintela
2011-09-23 12:57 ` [Qemu-devel] [PATCH 11/23] migration: Our release callback was just free Juan Quintela
2011-09-23 12:57 ` [Qemu-devel] [PATCH 12/23] migration: Remove get_status() accessor Juan Quintela
2011-09-23 12:57 ` [Qemu-devel] [PATCH 13/23] migration: Remove migration cancel() callback Juan Quintela
2011-09-23 12:57 ` [Qemu-devel] [PATCH 14/23] migration: Move exported functions to the end of the file Juan Quintela
2011-10-04 14:24 ` Anthony Liguori
2011-09-23 12:57 ` [Qemu-devel] [PATCH 15/23] migration: use global variable directly Juan Quintela
2011-10-04 14:27 ` Anthony Liguori
2011-10-04 14:46 ` Juan Quintela
2011-09-23 12:57 ` [Qemu-devel] [PATCH 16/23] migration: another case of global variable assigned to local one Juan Quintela
2011-09-23 12:57 ` [Qemu-devel] [PATCH 17/23] migration: make sure we always have a migration state Juan Quintela
2011-10-04 14:29 ` Anthony Liguori
2011-10-04 14:49 ` Juan Quintela
2011-10-05 20:02 ` Anthony Liguori
2011-10-05 20:25 ` Juan Quintela
2011-10-06 9:09 ` Orit Wasserman [this message]
2011-09-23 12:57 ` [Qemu-devel] [PATCH 18/23] migration: Use bandwidth_limit directly Juan Quintela
2011-10-04 14:29 ` Anthony Liguori
2011-09-23 12:57 ` [Qemu-devel] [PATCH 19/23] migration: Export a function that tells if the migration has finished correctly Juan Quintela
2011-10-04 14:31 ` Anthony Liguori
2011-10-05 12:24 ` Juan Quintela
2011-10-05 14:58 ` Anthony Liguori
2011-09-23 12:57 ` [Qemu-devel] [PATCH 20/23] migration: Make state definitions local Juan Quintela
2011-09-23 12:57 ` [Qemu-devel] [PATCH 21/23] migration: Don't use callback on file defining it Juan Quintela
2011-10-04 14:32 ` Anthony Liguori
2011-10-04 23:50 ` Juan Quintela
2011-09-23 12:57 ` [Qemu-devel] [PATCH 22/23] migration: propagate error correctly Juan Quintela
2011-10-04 14:33 ` Anthony Liguori
2011-09-23 12:57 ` [Qemu-devel] [PATCH 23/23] migration: make migration-{tcp, unix} consistent Juan Quintela
2011-10-04 14:34 ` Anthony Liguori
2011-10-04 14:36 ` [Qemu-devel] [PATCH v3 00/23] Refactor and cleanup migration code Anthony Liguori
-- strict thread matches above, loose matches on Subject: below --
2011-09-20 14:19 Juan Quintela
2011-09-20 14:19 ` [Qemu-devel] [PATCH 17/23] migration: make sure we always have a migration state Juan Quintela
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E8D7063.7090404@redhat.com \
--to=owasserm@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.