Re: [kvm-unit-tests PATCH v1] configure: arm64: Add support for dirty-ring in migration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Oct 26, 2023 at 04:44:26PM +0800, Shaoqin Huang wrote:
> Hi drew,
> 
> On 10/26/23 15:40, Andrew Jones wrote:
> > On Thu, Oct 26, 2023 at 01:54:55PM +0800, Shaoqin Huang wrote:
> > > 
> > > 
> > > On 10/26/23 13:12, Thomas Huth wrote:
> > > > On 26/10/2023 05.40, Shaoqin Huang wrote:
> > > > > Add a new configure option "--dirty-ring-size" to support dirty-ring
> > > > > migration on arm64. By default, the dirty-ring is disabled, we can
> > > > > enable it by:
> > > > > 
> > > > >     # ./configure --dirty-ring-size=65536
> > > > > 
> > > > > This will generate one more entry in config.mak, it will look like:
> > > > > 
> > > > >     # cat config.mak
> > > > >       :
> > > > >     ACCEL=kvm,dirty-ring-size=65536
> > > > > 
> > > > > With this configure option, user can easy enable dirty-ring and specify
> > > > > dirty-ring-size to test the dirty-ring in migration.
> > > > 
> > > > Do we really need a separate configure switch for this? If it is just
> > > > about setting a value in the ACCEL variable, you can also run the tests
> > > > like this:
> > > > 
> > > > ACCEL=kvm,dirty-ring-size=65536 ./run_tests.sh
> > > > 
> > > >    Thomas
> > > > 
> > > 
> > > Hi Thomas,
> > > 
> > > You're right. We can do it by simply set the ACCEL when execute
> > > ./run_tests.sh. I think maybe add a configure can make auto test to set the
> > > dirty-ring easier? but I'm not 100% sure it will benefit to them.
> > > 
> > 
> > For unit tests that require specific configurations, those configurations
> > should be added to the unittests.cfg file. As we don't currently support
> > adding accel properties, we should add a new parameter and extend the
> > parsing.
> 
> So you mean we add the accel properties into the unittests.cfg like:
> 
> accel = kvm,dirty-ring-size=65536
> 
> Then let the `for_each_unittest` to parse the parameter?
> In this way, should we copy the migration config to dirty-ring migration?
> Just like:
> 
> [its-migration]
> file = gic.flat
> smp = $MAX_SMP
> extra_params = -machine gic-version=3 -append 'its-migration'
> groups = its migration
> arch = arm64
> 
> [its-migration-dirty-ring]
> file = gic.flat
> smp = $MAX_SMP
> extra_params = -machine gic-version=3 -append 'its-migration'
> groups = its migration
> arch = arm64
> accel = kvm,dirty-ring-size=65536
> 
> So it will test both dirty bitmap and dirty ring.

Yup, either like you've outlined above with modifying the definition of
'accel' to take an optional [,params...] or by creating another parameter,
e.g. 'accel_props' and then doing

 accel = kvm
 accel_props = dirty-ring-size=65536

Which of the two approaches to choose depends on how intrusive the
modification of 'accel' would be and how well it would preserve its
current behavior.

Thanks,
drew



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux