This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

DS-5: Install gator.ko error: unknown symbol

Note: This was originally posted on 29th August 2013 at http://forums.arm.com

Hi all,

I tried to install gator.ko compiled from the latest version of DS-5 v5.15 on galaxy tab 10.1, but it failed. My host machine runs win8 and the target device is galaxy tab 10.1 wifi with cm 10.1. (which I compiled following the instructions listed here http://wiki.cyanogen...uild_for_p4wifi ) However, when I tried to install gator.ko on galaxy tab 10.1 using "insmod gator.ko", the following error appears:

the following error: init_module '/sdcard/gator.ko' failed (No such file or directory)

Then I entered dmesg command in the terminal and the error message is as follows:

gator: Unknown symbol perf_event_release_kernel (err 0)
gator: Unknown symbol perf_event_create_kernel_counter (err 0)

But as I read the kernel code of galaxy tab 10.1 (p4wifi), I could find the corresponding definition of these two functions and they have already been exported by macros such as EXPORT_SYMBOL_GPL. Could anyone help me? Thank you! :)
Parents
  • Note: This was originally posted on 3rd September 2013 at forums.arm.com


    Thank you SO MUCH, Drew!!! The problem is solved. :)I edited cyanogenmod_samsung_p4wifi-jb_defconfig and added CONFIG_HW_PERF_EVENT in it. Then built the kernel again and the problem is gone! Actually I still do not quite get where went wrong, as CONFIG_PERF_EVENTS should be the macro responsible for functions like perf_event_release_kernel, but it have already been enabled in cyanogenmod_samsung_p4wifi-jb_defconfig before.Anyway, the problem is fixed. Thank you once again, Drew!Best regards,
    Xiaowan

    I am glad that this problem is fixed. To help fix the problem for future users, will you please answer a followup question - when I remove CONFIG_HW_PERF_EVENT from my config I get this error

    > make -C ~/linux-linaro-tracking M=`pwd` ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules
    make: Entering directory `~/linux-linaro-tracking'
    CHK gator_events.h
    CC [M] ~/gator/driver/gator_main.o
    ~/gator/driver/gator_main.c:55:2: error: #error gator requires the kernel to have CONFIG_HW_PERF_EVENTS defined to support pmu hardware counters
    make[1]: *** [~/gator/driver/gator_main.o] Error 1
    make: *** [_module_/~/gator/driver] Error 2
    make: Leaving directory `~/linux-linaro-tracking'

    The lines that create the error are as follows in the gator sources distributed with DS5 v5.15:

    driver/gator.h:18:#define GATOR_PERF_PMU_SUPPORT GATOR_PERF_SUPPORT && defined(CONFIG_PERF_EVENTS) && (!(defined(__arm__) || defined(__aarch64__)) || defined(CONFIG_HW_PERF_EVENTS))

    driver/gator_main.c:51:#if (GATOR_PERF_SUPPORT) && (!(GATOR_PERF_PMU_SUPPORT))
    driver/gator_main.c:52:#ifndef CONFIG_PERF_EVENTS
    driver/gator_main.c:53:#error gator requires the kernel to have CONFIG_PERF_EVENTS defined to support pmu hardware counters
    driver/gator_main.c:54:#elif !defined CONFIG_HW_PERF_EVENTS
    driver/gator_main.c:55:#error gator requires the kernel to have CONFIG_HW_PERF_EVENTS defined to support pmu hardware counters
    driver/gator_main.c:56:#endif
    driver/gator_main.c:57:#endif

    What does your gator.ko source code look like?

Reply
  • Note: This was originally posted on 3rd September 2013 at forums.arm.com


    Thank you SO MUCH, Drew!!! The problem is solved. :)I edited cyanogenmod_samsung_p4wifi-jb_defconfig and added CONFIG_HW_PERF_EVENT in it. Then built the kernel again and the problem is gone! Actually I still do not quite get where went wrong, as CONFIG_PERF_EVENTS should be the macro responsible for functions like perf_event_release_kernel, but it have already been enabled in cyanogenmod_samsung_p4wifi-jb_defconfig before.Anyway, the problem is fixed. Thank you once again, Drew!Best regards,
    Xiaowan

    I am glad that this problem is fixed. To help fix the problem for future users, will you please answer a followup question - when I remove CONFIG_HW_PERF_EVENT from my config I get this error

    > make -C ~/linux-linaro-tracking M=`pwd` ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules
    make: Entering directory `~/linux-linaro-tracking'
    CHK gator_events.h
    CC [M] ~/gator/driver/gator_main.o
    ~/gator/driver/gator_main.c:55:2: error: #error gator requires the kernel to have CONFIG_HW_PERF_EVENTS defined to support pmu hardware counters
    make[1]: *** [~/gator/driver/gator_main.o] Error 1
    make: *** [_module_/~/gator/driver] Error 2
    make: Leaving directory `~/linux-linaro-tracking'

    The lines that create the error are as follows in the gator sources distributed with DS5 v5.15:

    driver/gator.h:18:#define GATOR_PERF_PMU_SUPPORT GATOR_PERF_SUPPORT && defined(CONFIG_PERF_EVENTS) && (!(defined(__arm__) || defined(__aarch64__)) || defined(CONFIG_HW_PERF_EVENTS))

    driver/gator_main.c:51:#if (GATOR_PERF_SUPPORT) && (!(GATOR_PERF_PMU_SUPPORT))
    driver/gator_main.c:52:#ifndef CONFIG_PERF_EVENTS
    driver/gator_main.c:53:#error gator requires the kernel to have CONFIG_PERF_EVENTS defined to support pmu hardware counters
    driver/gator_main.c:54:#elif !defined CONFIG_HW_PERF_EVENTS
    driver/gator_main.c:55:#error gator requires the kernel to have CONFIG_HW_PERF_EVENTS defined to support pmu hardware counters
    driver/gator_main.c:56:#endif
    driver/gator_main.c:57:#endif

    What does your gator.ko source code look like?

Children
No data