[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <79ae7e16-5131-b517-96fd-0d477fdbf3b5@huawei.com>
Date: Fri, 8 Nov 2024 14:41:02 +0800
From: liulongfang <liulongfang@...wei.com>
To: kernel test robot <lkp@...el.com>, <alex.williamson@...hat.com>,
<jgg@...dia.com>, <shameerali.kolothum.thodi@...wei.com>,
<jonathan.cameron@...wei.com>
CC: <oe-kbuild-all@...ts.linux.dev>, <kvm@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <linuxarm@...neuler.org>
Subject: Re: [PATCH v13 3/4] hisi_acc_vfio_pci: register debugfs for hisilicon
migration driver
On 2024/11/7 0:50, kernel test robot wrote:
> Hi Longfang,
>
> kernel test robot noticed the following build errors:
>
> [auto build test ERROR on awilliam-vfio/next]
> [also build test ERROR on awilliam-vfio/for-linus linus/master v6.12-rc6 next-20241106]
> [If your patch is applied to the wrong git tree, kindly drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://git-scm.com/docs/git-format-patch#_base_tree_information]
>
> url: https://github.com/intel-lab-lkp/linux/commits/Longfang-Liu/hisi_acc_vfio_pci-extract-public-functions-for-container_of/20241106-182913
> base: https://github.com/awilliam/linux-vfio.git next
> patch link: https://lore.kernel.org/r/20241106100343.21593-4-liulongfang%40huawei.com
> patch subject: [PATCH v13 3/4] hisi_acc_vfio_pci: register debugfs for hisilicon migration driver
> config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20241107/202411070027.p1xVCxxs-lkp@intel.com/config)
> compiler: loongarch64-linux-gcc (GCC) 14.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241107/202411070027.p1xVCxxs-lkp@intel.com/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@...el.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202411070027.p1xVCxxs-lkp@intel.com/
>
> All errors (new ones prefixed by >>):
>
> drivers/vfio/pci/hisilicon/hisi_acc_vfio_pci.c: In function 'hisi_acc_vf_dev_read':
>>> drivers/vfio/pci/hisilicon/hisi_acc_vfio_pci.c:1397:9: error: too many arguments to function 'seq_puts'
> 1397 | seq_puts(seq,
> | ^~~~~~~~
> In file included from include/linux/debugfs.h:16,
> from include/linux/hisi_acc_qm.h:7,
> from drivers/vfio/pci/hisilicon/hisi_acc_vfio_pci.c:9:
> include/linux/seq_file.h:122:29: note: declared here
> 122 | static __always_inline void seq_puts(struct seq_file *m, const char *s)
> | ^~~~~~~~
> drivers/vfio/pci/hisilicon/hisi_acc_vfio_pci.c: In function 'hisi_acc_vf_migf_read':
> drivers/vfio/pci/hisilicon/hisi_acc_vfio_pci.c:1429:9: error: too many arguments to function 'seq_puts'
> 1429 | seq_puts(seq, "migrate data length: %lu\n", debug_migf->total_length);
> | ^~~~~~~~
> include/linux/seq_file.h:122:29: note: declared here
> 122 | static __always_inline void seq_puts(struct seq_file *m, const char *s)
> | ^~~~~~~~
>
>
> vim +/seq_puts +1397 drivers/vfio/pci/hisilicon/hisi_acc_vfio_pci.c
>
> 1364
> 1365 static int hisi_acc_vf_dev_read(struct seq_file *seq, void *data)
> 1366 {
> 1367 struct device *vf_dev = seq->private;
> 1368 struct vfio_pci_core_device *core_device = dev_get_drvdata(vf_dev);
> 1369 struct vfio_device *vdev = &core_device->vdev;
> 1370 struct hisi_acc_vf_core_device *hisi_acc_vdev = hisi_acc_get_vf_dev(vdev);
> 1371 size_t vf_data_sz = offsetofend(struct acc_vf_data, padding);
> 1372 struct acc_vf_data *vf_data;
> 1373 int ret;
> 1374
> 1375 mutex_lock(&hisi_acc_vdev->open_mutex);
> 1376 ret = hisi_acc_vf_debug_check(seq, vdev);
> 1377 if (ret) {
> 1378 mutex_unlock(&hisi_acc_vdev->open_mutex);
> 1379 return ret;
> 1380 }
> 1381
> 1382 mutex_lock(&hisi_acc_vdev->state_mutex);
> 1383 vf_data = kzalloc(sizeof(*vf_data), GFP_KERNEL);
> 1384 if (!vf_data) {
> 1385 ret = -ENOMEM;
> 1386 goto mutex_release;
> 1387 }
> 1388
> 1389 vf_data->vf_qm_state = hisi_acc_vdev->vf_qm_state;
> 1390 ret = vf_qm_read_data(&hisi_acc_vdev->vf_qm, vf_data);
> 1391 if (ret)
> 1392 goto migf_err;
> 1393
> 1394 seq_hex_dump(seq, "Dev Data:", DUMP_PREFIX_OFFSET, 16, 1,
> 1395 (const void *)vf_data, vf_data_sz, false);
> 1396
>> 1397 seq_puts(seq,
> 1398 "guest driver load: %u\n"
> 1399 "data size: %lu\n",
> 1400 hisi_acc_vdev->vf_qm_state,
> 1401 sizeof(struct acc_vf_data));
> 1402
> 1403 migf_err:
> 1404 kfree(vf_data);
> 1405 mutex_release:
> 1406 mutex_unlock(&hisi_acc_vdev->state_mutex);
> 1407 mutex_unlock(&hisi_acc_vdev->open_mutex);
> 1408
> 1409 return ret;
> 1410 }
> 1411
>
OK, I will fix it using seq_printf() in the next version
Thanks,
Longfang.
Powered by blists - more mailing lists