On Tue, Mar 10, 2020 at 3:56 PM David Hildenbrand <david@xxxxxxxxxx> wrote: > > On 10.03.20 11:22, David Hildenbrand wrote: > > On 10.03.20 03:19, Alexander Duyck wrote: > >> On Sun, Mar 8, 2020 at 7:54 PM kbuild test robot <lkp@xxxxxxxxx> wrote: > >>> > >>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master > >>> head: b86a6a241b7c60ca7a6ca4fb3c0d2aedbbf2c1b6 > >>> commit: 120359931943d2b801ce51a1a045dcc0a5d1a55b [7003/7050] Merge branch 'akpm-current/current' > >>> config: riscv-randconfig-a001-20200308 (attached as .config) > >>> compiler: riscv64-linux-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 > >>> git checkout 120359931943d2b801ce51a1a045dcc0a5d1a55b > >>> # save the attached .config to linux build tree > >>> GCC_VERSION=7.5.0 make.cross ARCH=riscv > >>> > >>> If you fix the issue, kindly add following tag > >>> Reported-by: kbuild test robot <lkp@xxxxxxxxx> > >>> > >>> All errors (new ones prefixed by >>): > >>> > >>> drivers/virtio/virtio_balloon.o: In function `leak_balloon': > >>> drivers/virtio/virtio_balloon.c:281: undefined reference to `balloon_page_dequeue' > >>> drivers/virtio/virtio_balloon.o: In function `__virtio_test_bit': > >>>>> include/linux/virtio_config.h:113: undefined reference to `page_reporting_unregister' > >>> drivers/virtio/virtio_balloon.o: In function `virtio_cread32': > >>> include/linux/virtio_config.h:423: undefined reference to `balloon_page_alloc' > >>> drivers/virtio/virtio_balloon.o: In function `fill_balloon': > >>>>> drivers/virtio/virtio_balloon.c:233: undefined reference to `balloon_page_enqueue' > >>> drivers/virtio/virtio_balloon.o: In function `__virtio_test_bit': > >>>>> include/linux/virtio_config.h:113: undefined reference to `page_reporting_register' > >>> drivers/gpu/drm/virtio/virtgpu_drv.o: In function `virtio_gpu_remove': > >>> drivers/gpu/drm/virtio/virtgpu_drv.c:139: undefined reference to `drm_dev_unplug' > >>> drivers/gpu/drm/virtio/virtgpu_drv.c:140: undefined reference to `drm_atomic_helper_shutdown' > >>> drivers/gpu/drm/virtio/virtgpu_drv.c:141: undefined reference to `drm_dev_put' > >>> drivers/gpu/drm/virtio/virtgpu_drv.o: In function `virtio_gpu_probe': > >> > >> It looks like somehow the config has CONFIG_VIRTIO_BALLOON enabled, > >> but didn't select CONFIG_MEMORY_BALLOON nor CONFIG_PAGE_REPORTING That > >> shouldn't be possible since in drivers/virtio/Kconfig we have the > >> following: > >> config VIRTIO_BALLOON > >> tristate "Virtio balloon driver" > >> depends on VIRTIO > >> select MEMORY_BALLOON > >> select PAGE_REPORTING > > > > IMHO that's perfectly valid. You might want to have ballooning without > > page compaction (MEMORY_BALLOON). Same with PAGE_REPORTING. > > > > AFAIK, "select" will still allow you to disable these things - which > > used to work fine with MEMORY_BALLOON (did that myself when debugging a > > compaction issue). > > > > Correction: I disabled BALLOON_COMPACTION back then ... so ignore my > comment regarding that :) > > But we should be able to build VIRTIO_BALLOON without PAGE_REPORTING > somehow IMHO. I have moved all VIRTIO driver selection to defconfigs for RISC-V which was the case before. Here's the patch: https://patchwork.kernel.org/patch/11429217/ Thanks, Anup