From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============8251295833027247925==" MIME-Version: 1.0 From: Dave Jiang To: kbuild-all@lists.01.org Subject: Re: [PATCH v6 3/5] dmaengine: idxd: Add shared workqueue support Date: Thu, 24 Sep 2020 13:47:17 -0700 Message-ID: <387d66da-e6db-dc29-3a29-5dba0aee9058@intel.com> In-Reply-To: <202009250318.dHeQdbWA%lkp@intel.com> List-Id: --===============8251295833027247925== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable On 9/24/2020 1:03 PM, kernel test robot wrote: > Hi Dave, > = > I love your patch! Yet something to improve: > = > [auto build test ERROR on vkoul-dmaengine/next] > [also build test ERROR on linus/master v5.9-rc6] > [cannot apply to tip/x86/core tip/master next-20200924] > [If your patch is applied to the wrong git tree, kindly drop us a note. Hi 0-day team. This is a tricky one. The code is based on vkou-dmaengine/ne= xt, = however, it's missing the patch series from the tip tree branch x86/pasid: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/log/?h=3Dx86/pa= sid This is where the compile error comes from. We are missing the ENQCMD = enumeration support from the tip tree. Essentially if you merge in the tip = branch it should address this issue. If there's a better solution for the f= uture = please let me know. > And when submitting patch, we suggest to use '--base' as documented in > https://git-scm.com/docs/git-format-patch] > = > url: https://github.com/0day-ci/linux/commits/Dave-Jiang/Add-shared-wo= rkqueue-support-for-idxd-driver/20200925-020242 > base: https://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine.g= it next > config: x86_64-allyesconfig (attached as .config) > compiler: gcc-9 (Debian 9.3.0-15) 9.3.0 > reproduce (this is a W=3D1 build): > # save the attached .config to linux build tree > make W=3D1 ARCH=3Dx86_64 > = > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot > = > All errors (new ones prefixed by >>): > = > In file included from arch/x86/include/asm/tsc.h:9, > from arch/x86/include/asm/timex.h:6, > from include/linux/timex.h:65, > from include/linux/time32.h:13, > from include/linux/time.h:73, > from include/linux/stat.h:19, > from include/linux/module.h:13, > from drivers/dma/idxd/init.c:5: > drivers/dma/idxd/init.c: In function 'idxd_init_module': >>> drivers/dma/idxd/init.c:525:20: error: 'X86_FEATURE_ENQCMD' undeclared = (first use in this function); did you mean 'X86_FEATURE_PCID'? > 525 | if (!boot_cpu_has(X86_FEATURE_ENQCMD)) > | ^~~~~~~~~~~~~~~~~~ > arch/x86/include/asm/cpufeature.h:118:24: note: in definition of macr= o 'cpu_has' > 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1= : \ > | ^~~ > drivers/dma/idxd/init.c:525:7: note: in expansion of macro 'boot_cpu_= has' > 525 | if (!boot_cpu_has(X86_FEATURE_ENQCMD)) > | ^~~~~~~~~~~~ > drivers/dma/idxd/init.c:525:20: note: each undeclared identifier is r= eported only once for each function it appears in > 525 | if (!boot_cpu_has(X86_FEATURE_ENQCMD)) > | ^~~~~~~~~~~~~~~~~~ > arch/x86/include/asm/cpufeature.h:118:24: note: in definition of macr= o 'cpu_has' > 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1= : \ > | ^~~ > drivers/dma/idxd/init.c:525:7: note: in expansion of macro 'boot_cpu_= has' > 525 | if (!boot_cpu_has(X86_FEATURE_ENQCMD)) > | ^~~~~~~~~~~~ > = > # https://github.com/0day-ci/linux/commit/8c78721a970a316ba914bdaaea606e1= 52462fe94 > git remote add linux-review https://github.com/0day-ci/linux > git fetch --no-tags linux-review Dave-Jiang/Add-shared-workqueue-support-= for-idxd-driver/20200925-020242 > git checkout 8c78721a970a316ba914bdaaea606e152462fe94 > vim +525 drivers/dma/idxd/init.c > = > 511 = > 512 static int __init idxd_init_module(void) > 513 { > 514 int err, i; > 515 = > 516 /* > 517 * If the CPU does not support MOVDIR64B or ENQCMDS, there's no = point in > 518 * enumerating the device. We can not utilize it. > 519 */ > 520 if (!boot_cpu_has(X86_FEATURE_MOVDIR64B)) { > 521 pr_warn("idxd driver failed to load without MOVDIR64B.\n"); > 522 return -ENODEV; > 523 } > 524 = > > 525 if (!boot_cpu_has(X86_FEATURE_ENQCMD)) > 526 pr_warn("Platform does not have ENQCMD(S) support.\n"); > 527 else > 528 support_enqcmd =3D true; > 529 = > 530 mutex_init(&idxd_idr_lock); > 531 for (i =3D 0; i < IDXD_TYPE_MAX; i++) > 532 idr_init(&idxd_idrs[i]); > 533 = > 534 err =3D idxd_register_bus_type(); > 535 if (err < 0) > 536 return err; > 537 = > 538 err =3D idxd_register_driver(); > 539 if (err < 0) > 540 goto err_idxd_driver_register; > 541 = > 542 err =3D idxd_cdev_register(); > 543 if (err) > 544 goto err_cdev_register; > 545 = > 546 err =3D pci_register_driver(&idxd_pci_driver); > 547 if (err) > 548 goto err_pci_register; > 549 = > 550 return 0; > 551 = > 552 err_pci_register: > 553 idxd_cdev_remove(); > 554 err_cdev_register: > 555 idxd_unregister_driver(); > 556 err_idxd_driver_register: > 557 idxd_unregister_bus_type(); > 558 return err; > 559 } > 560 module_init(idxd_init_module); > 561 = > = > --- > 0-DAY CI Kernel Test Service, Intel Corporation > https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org >=20 --===============8251295833027247925==--