mbox series

[V2,00/11] privatize migration.h

Message ID 1710179338-294359-1-git-send-email-steven.sistare@oracle.com (mailing list archive)
Headers show
Series privatize migration.h | expand

Message

Steven Sistare March 11, 2024, 5:48 p.m. UTC
migration/migration.h is the private interface for code in the migration
sub-directory, but many other clients include it because they need accessors
that are not exported by the publc interface in include/migration/misc.h.
Fix that by refactoring accessors and defining new ones as needed.

After these fixes, no code outside of migration includes migration.h,
and no code outside of migration uses MigrationState.

This series depends on the following:
  * singleton patch "migration: export fewer options"

Changes in V2:
  * rebase to migration-next, add RB
  * split last patch

Steve Sistare (11):
  migration: remove migration.h references
  migration: export migration_is_setup_or_active
  migration: export migration_is_active
  migration: export migration_is_running
  migration: export vcpu_dirty_limit_period
  migration: migration_thread_is_self
  migration: migration_is_device
  migration: migration_file_set_error
  migration: privatize colo interfaces
  migration: delete unused accessors
  migration: purge MigrationState from public interface

 hw/vfio/common.c                   | 17 +++-------
 hw/vfio/container.c                |  1 -
 hw/vfio/migration.c                | 11 ++-----
 hw/virtio/vhost-user.c             |  1 -
 hw/virtio/virtio-balloon.c         |  1 -
 include/migration/client-options.h |  1 +
 include/migration/misc.h           | 17 +++++-----
 migration/colo.c                   | 17 ++++++----
 migration/migration.c              | 67 ++++++++++++++++++++++++--------------
 migration/migration.h              |  7 ++--
 migration/options.c                | 11 +++++--
 migration/ram.c                    |  5 ++-
 migration/savevm.c                 |  2 +-
 net/colo-compare.c                 |  3 +-
 net/vhost-vdpa.c                   |  3 +-
 stubs/colo.c                       |  1 -
 system/dirtylimit.c                | 12 +++----
 system/qdev-monitor.c              |  1 -
 target/loongarch/kvm/kvm.c         |  1 -
 target/riscv/kvm/kvm-cpu.c         |  4 +--
 tests/unit/test-vmstate.c          |  1 -
 21 files changed, 96 insertions(+), 88 deletions(-)

Comments

Peter Xu March 11, 2024, 7:30 p.m. UTC | #1
Steve,

On Mon, Mar 11, 2024 at 10:48:47AM -0700, Steve Sistare wrote:
> Changes in V2:
>   * rebase to migration-next, add RB

Not apply even to master branch.  Note that there're >=1 PULLs sent and
merged since my last reply..  Perhaps you rebased to the "old" next?
Steven Sistare March 11, 2024, 7:45 p.m. UTC | #2
On 3/11/2024 3:30 PM, Peter Xu wrote:
> Steve,
> 
> On Mon, Mar 11, 2024 at 10:48:47AM -0700, Steve Sistare wrote:
>> Changes in V2:
>>    * rebase to migration-next, add RB
> 
> Not apply even to master branch.  Note that there're >=1 PULLs sent and
> merged since my last reply..  Perhaps you rebased to the "old" next?

I pulled from branch migration-next in https://gitlab.com/peterx/qemu a 
few hours ago, but I must have screwed up somewhere.  I'll figure it out
and post a V4.

- Steve
Steven Sistare March 11, 2024, 8:24 p.m. UTC | #3
On 3/11/2024 3:45 PM, Steven Sistare wrote:
> On 3/11/2024 3:30 PM, Peter Xu wrote:
>> Steve,
>>
>> On Mon, Mar 11, 2024 at 10:48:47AM -0700, Steve Sistare wrote:
>>> Changes in V2:
>>>    * rebase to migration-next, add RB
>>
>> Not apply even to master branch.  Note that there're >=1 PULLs sent and
>> merged since my last reply..  Perhaps you rebased to the "old" next?
> 
> I pulled from branch migration-next in https://gitlab.com/peterx/qemu a 
> few hours ago, but I must have screwed up somewhere.  I'll figure it out
> and post a V4.

My pull was a fiew hours old, but my patches still apply cleanly to the
most recent tip:
   a1bb5dd169f4 ("migration: Fix format in error message")

I can sent that as V3, but ...
Note that you must apply "migration: export fewer options" before
"privatize migration.h".  If that does not help, I will send V3.

- Steve
Peter Xu March 11, 2024, 8:28 p.m. UTC | #4
On Mon, Mar 11, 2024 at 04:24:14PM -0400, Steven Sistare wrote:
> On 3/11/2024 3:45 PM, Steven Sistare wrote:
> > On 3/11/2024 3:30 PM, Peter Xu wrote:
> > > Steve,
> > > 
> > > On Mon, Mar 11, 2024 at 10:48:47AM -0700, Steve Sistare wrote:
> > > > Changes in V2:
> > > >    * rebase to migration-next, add RB
> > > 
> > > Not apply even to master branch.  Note that there're >=1 PULLs sent and
> > > merged since my last reply..  Perhaps you rebased to the "old" next?
> > 
> > I pulled from branch migration-next in https://gitlab.com/peterx/qemu a
> > few hours ago, but I must have screwed up somewhere.  I'll figure it out
> > and post a V4.
> 
> My pull was a fiew hours old, but my patches still apply cleanly to the
> most recent tip:
>   a1bb5dd169f4 ("migration: Fix format in error message")
> 
> I can sent that as V3, but ...
> Note that you must apply "migration: export fewer options" before
> "privatize migration.h".  If that does not help, I will send V3.

Ouch, I forgot that dependency... Sorry.

Yeah it works now.  No need to resend for now.
Steven Sistare March 11, 2024, 8:34 p.m. UTC | #5
On 3/11/2024 4:28 PM, Peter Xu wrote:
> On Mon, Mar 11, 2024 at 04:24:14PM -0400, Steven Sistare wrote:
>> On 3/11/2024 3:45 PM, Steven Sistare wrote:
>>> On 3/11/2024 3:30 PM, Peter Xu wrote:
>>>> Steve,
>>>>
>>>> On Mon, Mar 11, 2024 at 10:48:47AM -0700, Steve Sistare wrote:
>>>>> Changes in V2:
>>>>>     * rebase to migration-next, add RB
>>>>
>>>> Not apply even to master branch.  Note that there're >=1 PULLs sent and
>>>> merged since my last reply..  Perhaps you rebased to the "old" next?
>>>
>>> I pulled from branch migration-next in https://gitlab.com/peterx/qemu a
>>> few hours ago, but I must have screwed up somewhere.  I'll figure it out
>>> and post a V4.
>>
>> My pull was a fiew hours old, but my patches still apply cleanly to the
>> most recent tip:
>>    a1bb5dd169f4 ("migration: Fix format in error message")
>>
>> I can sent that as V3, but ...
>> Note that you must apply "migration: export fewer options" before
>> "privatize migration.h".  If that does not help, I will send V3.
> 
> Ouch, I forgot that dependency... Sorry.
> 
> Yeah it works now.  No need to resend for now.

Great! - steve