trouble in kernel header inclusion in ./ioctls_gen.sh

Masatake YAMATO yamato at redhat.com
Tue Mar 3 21:40:29 UTC 2015


When I run ioctls_gen.sh by hand, I got some errors:

    $ ./ioctls_gen.sh ~/var/linux/include ~/var/linux/arch/x86/include
    ...
    /home/yamato/var/linux/include/uapi/linux/am437x-vpfe.h:122:12: error: ‘BASE_VIDIOC_PRIVATE’ undeclared (first use in this function)
      _IOW('V', BASE_VIDIOC_PRIVATE + 1, void *)
		^
    /tmp/ioctls_sym.sh.DPfTZI/asm/ioctl.h:3:43: note: in definition of macro ‘_IOC’
     #define _IOC(dir,type,nr,size) dir, type, nr, size
    ...

BASE_VIDIOC_PRIVATE is defined in linux/videodev2.h.

With a following patch, ioctls_gen.sh works well without above error.

    diff --git a/include/uapi/linux/am437x-vpfe.h b/include/uapi/linux/am437x-vpfe.h
    index 9b03033f..c28b4e4 100644
    --- a/include/uapi/linux/am437x-vpfe.h
    +++ b/include/uapi/linux/am437x-vpfe.h
    @@ -20,6 +20,7 @@

     #ifndef AM437X_VPFE_USER_H
     #define AM437X_VPFE_USER_H
    +#include <linux/videodev2.h>

     enum vpfe_ccdc_data_size {
	    VPFE_CCDC_DATA_16BITS = 0,

Do you think I should report this to LKML?

Masatake YAMATO



More information about the Strace-devel mailing list