Hi Chris, Thank you for the patch! Yet something to improve: [auto build test ERROR on drm-intel/for-linux-next] [also build test ERROR on drm-tip/drm-tip drm-exynos/exynos-drm-next linus/master next-20200203] [cannot apply to tegra-drm/drm/tegra/for-next drm/drm-next v5.5] [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/Chris-Wilson/drm-Remove-PageReserved-manipulation-from-drm_pci_alloc/20200203-201707 base: git://anongit.freedesktop.org/drm-intel for-linux-next config: arm-multi_v7_defconfig (attached as .config) compiler: arm-linux-gnueabi-gcc (GCC) 7.5.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree GCC_VERSION=7.5.0 make.cross ARCH=arm If you fix the issue, kindly add following tag Reported-by: kbuild test robot All errors (new ones prefixed by >>): drivers/gpu/drm/drm_dma.c: In function 'drm_legacy_dma_takedown': >> drivers/gpu/drm/drm_dma.c:103:6: error: implicit declaration of function 'drm_pci_free'; did you mean 'arm_dma_free'? [-Werror=implicit-function-declaration] drm_pci_free(dev, dma->bufs[i].seglist[j]); ^~~~~~~~~~~~ arm_dma_free cc1: some warnings being treated as errors vim +103 drivers/gpu/drm/drm_dma.c ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 72 ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 73 /** ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 74 * Cleanup the DMA resources. ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 75 * ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 76 * \param dev DRM device. ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 77 * ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 78 * Free all pages associated with DMA buffers, the buffers and pages lists, and 59c51591a0ac75 drivers/char/drm/drm_dma.c Michael Opdenacker 2007-05-09 79 * finally the drm_device::dma structure itself. ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 80 */ e2e99a8206bcce drivers/gpu/drm/drm_dma.c Daniel Vetter 2013-08-08 81 void drm_legacy_dma_takedown(struct drm_device *dev) ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 82 { cdd55a294c13f8 drivers/char/drm/drm_dma.c Dave Airlie 2007-07-11 83 struct drm_device_dma *dma = dev->dma; ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 84 int i, j; ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 85 e2e99a8206bcce drivers/gpu/drm/drm_dma.c Daniel Vetter 2013-08-08 86 if (!drm_core_check_feature(dev, DRIVER_HAVE_DMA) || fa5386459f06dc drivers/gpu/drm/drm_dma.c Daniel Vetter 2016-08-03 87 !drm_core_check_feature(dev, DRIVER_LEGACY)) e2e99a8206bcce drivers/gpu/drm/drm_dma.c Daniel Vetter 2013-08-08 88 return; e2e99a8206bcce drivers/gpu/drm/drm_dma.c Daniel Vetter 2013-08-08 89 b5e89ed53ed8d2 drivers/char/drm/drm_dma.c Dave Airlie 2005-09-25 90 if (!dma) b5e89ed53ed8d2 drivers/char/drm/drm_dma.c Dave Airlie 2005-09-25 91 return; ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 92 ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 93 /* Clear dma buffers */ ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 94 for (i = 0; i <= DRM_MAX_ORDER; i++) { ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 95 if (dma->bufs[i].seg_count) { ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 96 DRM_DEBUG("order %d: buf_count = %d," ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 97 " seg_count = %d\n", ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 98 i, ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 99 dma->bufs[i].buf_count, ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 100 dma->bufs[i].seg_count); ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 101 for (j = 0; j < dma->bufs[i].seg_count; j++) { ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 102 if (dma->bufs[i].seglist[j]) { ddf19b973be5a9 drivers/char/drm/drm_dma.c Dave Airlie 2006-03-19 @103 drm_pci_free(dev, dma->bufs[i].seglist[j]); ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 104 } ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 105 } 9a298b2acd771d drivers/gpu/drm/drm_dma.c Eric Anholt 2009-03-24 106 kfree(dma->bufs[i].seglist); ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 107 } ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 108 if (dma->bufs[i].buf_count) { ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 109 for (j = 0; j < dma->bufs[i].buf_count; j++) { 9a298b2acd771d drivers/gpu/drm/drm_dma.c Eric Anholt 2009-03-24 110 kfree(dma->bufs[i].buflist[j].dev_private); ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 111 } 9a298b2acd771d drivers/gpu/drm/drm_dma.c Eric Anholt 2009-03-24 112 kfree(dma->bufs[i].buflist); ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 113 } ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 114 } ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 115 9a298b2acd771d drivers/gpu/drm/drm_dma.c Eric Anholt 2009-03-24 116 kfree(dma->buflist); 9a298b2acd771d drivers/gpu/drm/drm_dma.c Eric Anholt 2009-03-24 117 kfree(dma->pagelist); 9a298b2acd771d drivers/gpu/drm/drm_dma.c Eric Anholt 2009-03-24 118 kfree(dev->dma); ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 119 dev->dma = NULL; ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 120 } ^1da177e4c3f41 drivers/char/drm/drm_dma.c Linus Torvalds 2005-04-16 121 :::::: The code at line 103 was first introduced by commit :::::: ddf19b973be5a96d77c8467f657fe5bd7d126e0f drm: fixup PCI DMA support :::::: TO: Dave Airlie :::::: CC: Dave Airlie --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation