0

I'm trying to cross compile the Linux kernel 4.10.8 for arm, but get this error:

      CC [M]  drivers/vhost/vhost.o
In file included from ./include/uapi/linux/stddef.h:1:0,
                 from ./include/linux/stddef.h:4,
                 from ./include/uapi/linux/posix_types.h:4,
                 from ./include/uapi/linux/types.h:13,
                 from ./include/linux/types.h:5,
                 from ./include/uapi/asm-generic/fcntl.h:4,
                 from ./arch/arm/include/uapi/asm/fcntl.h:9,
                 from ./include/uapi/linux/fcntl.h:4,
                 from ./include/linux/fcntl.h:4,
                 from ./include/linux/eventfd.h:11,
                 from drivers/vhost/vhost.c:14:
drivers/vhost/vhost.c: In function ‘vhost_vring_ioctl’:
./include/linux/compiler.h:518:38: error: call to ‘__compiletime_assert_1357’ declared with attribute error: BUILD_BUG_ON failed: __alignof__ *vq->avail > VRING_AVAIL_ALIGN_SIZE
  _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)enter 

Any idea how to solve this? I dont know what this module is used for, so I dont know if I actually need to compile it, but I cant find where in menuconfig to disable this module?

artless noise
  • 21,212
  • 6
  • 68
  • 105
Mr Zach
  • 495
  • 4
  • 18
  • Instructions on how to build is done with a [`Makefile`](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/vhost/Makefile). You can see the symbol is **CONFIG_VHOST** and it will be found (usually) in a [`Kconfig`](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/vhost/Kconfig) in the same directory. You can use '?' in `make menuconfig` to find the location of the symbol. You have one of **VHOST_NET**, **VHOST_SCSI** or **VHOST_VSOCK** defined. It maybe selected by yet some other features. '?' will give this info as well. – artless noise Apr 11 '17 at 12:45

1 Answers1

0

This module (CONFIG_VHOST) usually requires when you need virtualization support. If you don't require it disable it in the make menuconfig.

If you don't need virtualization, you can ignore it and proceed your build.