Build error on 2.6.40 kernel

  • Hubbitus

    Hello, Oliver.

    Its me again.

    Today git branch checkout does not built on 2.6.40 kernel:
    # LANG=C dkms install -m tiacx -v 0-12.git20110821 -k

    Kernel preparation unnecessary for this kernel.  Skipping…

    Building module:
    cleaning build area….
    make KERNELRELEASE= -C /lib/modules/ M=/var/lib/dkms/tiacx/0-12.git20110821/build CONFIG_ACX_MAC80211=m CONFIG_ACX_MAC80211_PCI=y CONFIG_ACX_MAC80211_USB=n CONFIG_ACX_MAC80211_MEM=n EXTRA_CFLAGS=' -DCONFIG_ACX_MAC80211=1 -DCONFIG_ACX_MAC80211_PCI=1'…..(bad exit status: 2)
    Error! Bad return status for module build on kernel: (i686)
    Consult /var/lib/dkms/tiacx/0-12.git20110821/build/make.log for more information.

    # cat /var/lib/dkms/tiacx/0-12.git20110821/build/make.log
    DKMS make.log for tiacx-0-12.git20110821 for kernel (i686)
    Sun Aug 21 14:59:43 MSK 2011
    make: Entering directory `/usr/src/kernels/'
      LD      /var/lib/dkms/tiacx/0-12.git20110821/build/built-in.o
      CC   /var/lib/dkms/tiacx/0-12.git20110821/build/common.o
    /var/lib/dkms/tiacx/0-12.git20110821/build/common.c: In function 'acx_process_rxbuf':
    /var/lib/dkms/tiacx/0-12.git20110821/build/common.c:5023:3: warning: type defaults to 'int' in declaration of 'DEFINE_RATELIMIT_STATE'
    /var/lib/dkms/tiacx/0-12.git20110821/build/common.c:5023:3: warning: parameter names (without types) in function declaration
    /var/lib/dkms/tiacx/0-12.git20110821/build/common.c:5023:3: error: invalid storage class for function 'DEFINE_RATELIMIT_STATE'
    /var/lib/dkms/tiacx/0-12.git20110821/build/common.c:5023:3: error: implicit declaration of function '__ratelimit'
    /var/lib/dkms/tiacx/0-12.git20110821/build/common.c:5023:3: error: '_rs' undeclared (first use in this function)
    /var/lib/dkms/tiacx/0-12.git20110821/build/common.c:5023:3: note: each undeclared identifier is reported only once for each function it appears in
    cc1: some warnings being treated as errors

    make: ***  Error 1
    make: ***  Error 2
    make: Leaving directory `/usr/src/kernels/'

    Please help.

  • Oliver Winker
    Oliver Winker

    Hi Hubbitus,

    This seem to be the build changes for the 3.0.0 kernel. Actually they are already in, but it seems Fedora is working with "2.6.40" as a kernel version number - probably still a question of transition - and we are handling on a kernel version number "3.0.0". But it can be adapted to handle both. 

    Can you try to change in the file below the  "KERNEL_VERSION(3, 0, 0)" part into "KERNEL_VERSION(2, 6, 40)" and see if it compiles ?

    #include <linux/ratelimit.h>

    BR, Oliver

  • Oliver Winker
    Oliver Winker

    Ok - perfect ;). Thanks for notifying! I'll update the 3.0.0 changes to also handle the 2.6.40 version number accordingly.

    BR, Oliver