Hi Diana, I love your patch! Yet something to improve: [auto build test ERROR on vfio/next] [also build test ERROR on linus/master v5.7-rc4 next-20200508] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Diana-Craciun/vfio-fsl-mc-VFIO-support-for-FSL-MC-devices/20200509-034845 base: https://github.com/awilliam/linux-vfio.git next config: i386-allyesconfig (attached as .config) compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0 reproduce: # save the attached .config to linux build tree make ARCH=i386 If you fix the issue, kindly add following tag as appropriate Reported-by: kbuild test robot All errors (new ones prefixed by >>): drivers/vfio/fsl-mc/vfio_fsl_mc.c: In function 'vfio_fsl_mc_release': >> drivers/vfio/fsl-mc/vfio_fsl_mc.c:164:9: error: implicit declaration of function 'dprc_reset_container'; did you mean 'resource_contains'? [-Werror=implicit-function-declaration] ret = dprc_reset_container(mc_cont->mc_io, 0, ^~~~~~~~~~~~~~~~~~~~ resource_contains >> drivers/vfio/fsl-mc/vfio_fsl_mc.c:167:6: error: 'DPRC_RESET_OPTION_NON_RECURSIVE' undeclared (first use in this function) DPRC_RESET_OPTION_NON_RECURSIVE); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/vfio/fsl-mc/vfio_fsl_mc.c:167:6: note: each undeclared identifier is reported only once for each function it appears in >> drivers/vfio/fsl-mc/vfio_fsl_mc.c:171:3: error: implicit declaration of function 'fsl_mc_cleanup_irq_pool'; did you mean 'fsl_mc_free_irqs'? [-Werror=implicit-function-declaration] fsl_mc_cleanup_irq_pool(mc_cont); ^~~~~~~~~~~~~~~~~~~~~~~ fsl_mc_free_irqs drivers/vfio/fsl-mc/vfio_fsl_mc.c: In function 'vfio_fsl_mc_bus_notifier': drivers/vfio/fsl-mc/vfio_fsl_mc.c:399:9: error: 'struct fsl_mc_device' has no member named 'driver_override' mc_dev->driver_override = kasprintf(GFP_KERNEL, "%s", ^~ drivers/vfio/fsl-mc/vfio_fsl_mc.c: In function 'vfio_fsl_mc_init_device': drivers/vfio/fsl-mc/vfio_fsl_mc.c:437:8: error: implicit declaration of function 'dprc_setup'; did you mean 'x2apic_setup'? [-Werror=implicit-function-declaration] ret = dprc_setup(mc_dev); ^~~~~~~~~~ x2apic_setup drivers/vfio/fsl-mc/vfio_fsl_mc.c:444:8: error: implicit declaration of function 'dprc_scan_container'; did you mean 'init_section_contains'? [-Werror=implicit-function-declaration] ret = dprc_scan_container(mc_dev, false); ^~~~~~~~~~~~~~~~~~~ init_section_contains drivers/vfio/fsl-mc/vfio_fsl_mc.c:448:3: error: implicit declaration of function 'dprc_cleanup'; did you mean 'pud_clear'? [-Werror=implicit-function-declaration] dprc_cleanup(mc_dev); ^~~~~~~~~~~~ pud_clear drivers/vfio/fsl-mc/vfio_fsl_mc.c: In function 'vfio_fsl_mc_device_remove': drivers/vfio/fsl-mc/vfio_fsl_mc.c:507:14: error: 'struct fsl_mc_device' has no member named 'driver_override' kfree(mc_dev->driver_override); ^~ drivers/vfio/fsl-mc/vfio_fsl_mc.c:508:8: error: 'struct fsl_mc_device' has no member named 'driver_override' mc_dev->driver_override = NULL; ^~ cc1: some warnings being treated as errors -- drivers/vfio/fsl-mc/vfio_fsl_mc_intr.c: In function 'vfio_fsl_mc_set_irq_trigger': >> drivers/vfio/fsl-mc/vfio_fsl_mc_intr.c:137:8: error: implicit declaration of function 'fsl_mc_populate_irq_pool'; did you mean 'fsl_mc_allocate_irqs'? [-Werror=implicit-function-declaration] ret = fsl_mc_populate_irq_pool(mc_cont, ^~~~~~~~~~~~~~~~~~~~~~~~ fsl_mc_allocate_irqs >> drivers/vfio/fsl-mc/vfio_fsl_mc_intr.c:138:4: error: 'FSL_MC_IRQ_POOL_MAX_TOTAL_IRQS' undeclared (first use in this function); did you mean 'FSL_MC_NUM_POOL_TYPES'? FSL_MC_IRQ_POOL_MAX_TOTAL_IRQS); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ FSL_MC_NUM_POOL_TYPES drivers/vfio/fsl-mc/vfio_fsl_mc_intr.c:138:4: note: each undeclared identifier is reported only once for each function it appears in cc1: some warnings being treated as errors vim +164 drivers/vfio/fsl-mc/vfio_fsl_mc.c 148 149 static void vfio_fsl_mc_release(void *device_data) 150 { 151 struct vfio_fsl_mc_device *vdev = device_data; 152 int ret; 153 154 mutex_lock(&vdev->reflck->lock); 155 156 if (!(--vdev->refcnt)) { 157 struct fsl_mc_device *mc_dev = vdev->mc_dev; 158 struct device *cont_dev = fsl_mc_cont_dev(&mc_dev->dev); 159 struct fsl_mc_device *mc_cont = to_fsl_mc_device(cont_dev); 160 161 vfio_fsl_mc_regions_cleanup(vdev); 162 163 /* reset the device before cleaning up the interrupts */ > 164 ret = dprc_reset_container(mc_cont->mc_io, 0, 165 mc_cont->mc_handle, 166 mc_cont->obj_desc.id, > 167 DPRC_RESET_OPTION_NON_RECURSIVE); 168 169 vfio_fsl_mc_irqs_cleanup(vdev); 170 > 171 fsl_mc_cleanup_irq_pool(mc_cont); 172 } 173 174 mutex_unlock(&vdev->reflck->lock); 175 176 module_put(THIS_MODULE); 177 } 178 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org