mbox series

[v13,0/4] add debugfs to migration driver

Message ID 20230816094205.37389-1-liulongfang@huawei.com (mailing list archive)
Headers show
Series add debugfs to migration driver | expand

Message

liulongfang Aug. 16, 2023, 9:42 a.m. UTC
Add a debugfs function to the migration driver in VFIO to provide
a step-by-step test function for the migration driver.

When the execution of live migration fails, the user can view the
status and data during the migration process separately from the
source and the destination, which is convenient for users to analyze
and locate problems.

Changes v12 -> v13
	Solve the problem of open and close competition to debugfs.

Changes v11 -> v12
	Update loading conditions of vfio debugfs.

Changes v10 -> v11
	Delete the device restore function in debugfs.

Changes v9 -> v10
	Update the debugfs file of the live migration driver.

Changes v8 -> v9
	Update the debugfs directory structure of vfio.

Changes v7 -> v8
	Add support for platform devices.

Changes v6 -> v7
	Fix some code style issues.

Changes v5 -> v6
	Control the creation of debugfs through the CONFIG_DEBUG_FS.

Changes v4 -> v5
	Remove the newly added vfio_migration_ops and use seq_printf
	to optimize the implementation of debugfs.

Changes v3 -> v4
	Change the migration_debug_operate interface to debug_root file.

Changes v2 -> v3
	Extend the debugfs function from hisilicon device to vfio.

Changes v1 -> v2
	Change the registration method of root_debugfs to register
	with module initialization.

Longfang Liu (4):
  vfio/migration: Add debugfs to live migration driver
  hisi_acc_vfio_pci: extract public functions for container_of
  hisi_acc_vfio_pci: register debugfs for hisilicon migration driver
  Documentation: add debugfs description for vfio

 .../ABI/testing/debugfs-hisi-migration        |  36 +++
 Documentation/ABI/testing/debugfs-vfio        |  25 ++
 MAINTAINERS                                   |   2 +
 drivers/vfio/Makefile                         |   1 +
 .../vfio/pci/hisilicon/hisi_acc_vfio_pci.c    | 215 +++++++++++++++++-
 .../vfio/pci/hisilicon/hisi_acc_vfio_pci.h    |   3 +
 drivers/vfio/vfio.h                           |  14 ++
 drivers/vfio/vfio_debugfs.c                   |  80 +++++++
 drivers/vfio/vfio_main.c                      |   5 +-
 include/linux/vfio.h                          |   7 +
 10 files changed, 377 insertions(+), 11 deletions(-)
 create mode 100644 Documentation/ABI/testing/debugfs-hisi-migration
 create mode 100644 Documentation/ABI/testing/debugfs-vfio
 create mode 100644 drivers/vfio/vfio_debugfs.c

Comments

Alex Williamson Aug. 17, 2023, 10:48 p.m. UTC | #1
On Wed, 16 Aug 2023 17:42:01 +0800
liulongfang <liulongfang@huawei.com> wrote:

> Add a debugfs function to the migration driver in VFIO to provide
> a step-by-step test function for the migration driver.
> 
> When the execution of live migration fails, the user can view the
> status and data during the migration process separately from the
> source and the destination, which is convenient for users to analyze
> and locate problems.
> 
> Changes v12 -> v13
> 	Solve the problem of open and close competition to debugfs.

Hi,

I'm not sure if the new To: list is a mistake or if this is an appeal
to a different set of maintainers for a more favorable response than
previous postings[1], but kvm@vger.kernel.org remains the list for this
driver, which is under the perview of vfio [adding the correct list and
co-maintainer].

I believe there is still a concern whether this is a valid and
worthwhile debugfs interface.  It has been suggested that much of what
this provides could be done through userspace drivers to exercise the
migration interfaces and/or userspace debugging techniques to examine
the device migration data.  I haven't seen a satisfactory conclusion
for these comments yet.

I think we have general consensus that the first couple patches are ok
and useful, exposing the migration state generically and supporting a
minor cleanup within the hisi_acc driver.  However, the new approach to
try to lock the device with igate is certainly not the correct (igate
is used for serializing interrupt configuration) and the proposed
hisi_acc specific debugfs interfaces themselves are not settled.
Thanks,

Alex

[1]https://lore.kernel.org/all/20230728072104.64834-1-liulongfang@huawei.com/
liulongfang Aug. 26, 2023, 7:15 a.m. UTC | #2
On 2023/8/18 6:48, Alex Williamson wrote:
> On Wed, 16 Aug 2023 17:42:01 +0800
> liulongfang <liulongfang@huawei.com> wrote:
> 
>> Add a debugfs function to the migration driver in VFIO to provide
>> a step-by-step test function for the migration driver.
>>
>> When the execution of live migration fails, the user can view the
>> status and data during the migration process separately from the
>> source and the destination, which is convenient for users to analyze
>> and locate problems.
>>
>> Changes v12 -> v13
>> 	Solve the problem of open and close competition to debugfs.
> 
> Hi,
> 
> I'm not sure if the new To: list is a mistake or if this is an appeal
> to a different set of maintainers for a more favorable response than
> previous postings[1], but kvm@vger.kernel.org remains the list for this
> driver, which is under the perview of vfio [adding the correct list and
> co-maintainer].
>

You are right, the patchset was sent to the wrong email address.

> I believe there is still a concern whether this is a valid and
> worthwhile debugfs interface.  It has been suggested that much of what
> this provides could be done through userspace drivers to exercise the
> migration interfaces and/or userspace debugging techniques to examine
> the device migration data.  I haven't seen a satisfactory conclusion
> for these comments yet.
>

It is reasonable to test live migrations via userspace drivers.
This user-space operation is an unsolicited test.
However, the current operations in this patchset only retain the
function of reading status data. There is no test function,
and this part of the function is no different from the debugfs
function of other IO device drivers.
It should be possible to use debugfs here.

In addition, the debugfs in the driver does not need to rely on
the userspace driver tool. It will be more convenient to use.

> I think we have general consensus that the first couple patches are ok> and useful, exposing the migration state generically and supporting a
> minor cleanup within the hisi_acc driver.  However, the new approach to
> try to lock the device with igate is certainly not the correct (igate
> is used for serializing interrupt configuration) and the proposed
> hisi_acc specific debugfs interfaces themselves are not settled.
> Thanks,
>

Then I will disassemble the patch and send out the front part first.
Thanks,
Longfang.
> Alex
> 
> [1]https://lore.kernel.org/all/20230728072104.64834-1-liulongfang@huawei.com/
> 
> .
>