Problem with compiling SEP kernel driver on CentOS 7

Problem with compiling SEP kernel driver on CentOS 7

Compilation of SEP kernel driver on CentOS 7 (kernel 3.10.0-862.2.3.el7.x86_64) terminates with the errors below. Is there any way to install the driver for this kernel version?

$ ./build-driver

Options in brackets "[ ... ]" indicate default values
that will be used when only the ENTER key is pressed.

C compiler to use: [ /bin/gcc ]

Make command to use: [ /bin/make ]

Kernel source directory: [ /lib/modules/3.10.0-862.2.3.el7.x86_64/build ]
rm -f *.o .*.o.cmd .*.o.d .*.ko.cmd .*.ko.unsigned.cmd *.gcno
rm -f sep4_1.ko sep4_1.ko.unsigned
rm -f sep4_1*x32_64-3.10.0-862.2.3.el7.x86_64smp.ko
rm -f Module.symvers Modules.symvers *.mod.c modules.order Module.markers
rm -rf .tmp_versions
make[1]: Entering directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax'
rm -f *.o .*.o.cmd .*.o.d .*.ko.cmd .*.ko.unsigned.cmd *.gcno
rm -f pax.ko pax.ko.unsigned pax-x32_64-3.10.0-862.2.3.el7.x86_64smp.ko
rm -f Module.symvers Modules.symvers *.mod.c modules.order Module.markers
rm -rf .tmp_versions
make[1]: Leaving directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax'
make[1]: Entering directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src'
rm -f *.o .*.o.cmd .*.o.d .*.ko.cmd .*.ko.unsigned.cmd *.gcno
rm -f socperf2_0.ko socperf2_0.ko.unsigned
rm -f socperf2_0*x32_64-3.10.0-862.2.3.el7.x86_64smp.ko
rm -f Module.symvers Modules.symvers *.mod.c modules.order Module.markers
rm -rf .tmp_versions
make[1]: Leaving directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src'
make[1]: Entering directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp'
rm -f *.o .*.o.cmd .*.o.d .*.ko.cmd .*.ko.unsigned.cmd *.gcno
rm -f Module.symvers Modules.symvers *.mod.c modules.order Module.markers
rm -rf .tmp_versions
rm -f /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/vtss_autoconf.h
rm -f vtsspp.ko vtsspp.ko.unsigned vtsspp-x32_64-3.10.0-862.2.3.el7.x86_64smp.ko
make[1]: Leaving directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp'
make[1]: Entering directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src'
/bin/make -C /lib/modules/3.10.0-862.2.3.el7.x86_64/build M=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src LDDINCDIR=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/../include LDDINCDIR1=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/inc modules PWD=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src -j4
make[2]: Entering directory `/usr/src/kernels/3.10.0-862.2.3.el7.x86_64'
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/socperfdrv.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/control.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/utility.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/pci.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/soc_uncore.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/haswellunc_sa.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/npk_uncore.o
  LD [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/socperf2_0.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/socperf2_0.mod.o
  LD [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src/socperf2_0.ko
make[2]: Leaving directory `/usr/src/kernels/3.10.0-862.2.3.el7.x86_64'
cp socperf2_0.ko socperf2_0-x32_64-3.10.0-862.2.3.el7.x86_64smp.ko
make[1]: Leaving directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/socperf/src'
/bin/make -C /lib/modules/3.10.0-862.2.3.el7.x86_64/build M=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src LDDINCDIR=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/../include LDDINCDIR1=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/inc modules PWD=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src
make[1]: Entering directory `/usr/src/kernels/3.10.0-862.2.3.el7.x86_64'
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/lwpmudrv.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/control.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/cpumon.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/eventmux.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/linuxos.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/output.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pmi.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sys_info.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/utility.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/valleyview_sochap.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/unc_power.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pci.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/chap.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/gmch.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/gfx.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/unc_sa.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/core2.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/perfver4.o
  AS [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sys64.o
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sys64.o: warning: objtool: .text+0x3: return instruction outside of a callable function
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sys64.o: warning: objtool: .text+0x7: return instruction outside of a callable function
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sys64.o: warning: objtool: .text+0x8: return instruction outside of a callable function
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/silvermont.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/apic.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pebs.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/unc_gt.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/unc_mmio.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/unc_msr.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/unc_common.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/unc_pci.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sepdrv_p_state.o
  LD [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sep4_1.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sep4_1.mod.o
  LD [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sep4_1.ko
make[1]: Leaving directory `/usr/src/kernels/3.10.0-862.2.3.el7.x86_64'
cp sep4_1.ko sep4_1-x32_64-3.10.0-862.2.3.el7.x86_64smp.ko
make[1]: Entering directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax'
/bin/make -C /lib/modules/3.10.0-862.2.3.el7.x86_64/build M=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax LDDINCDIR=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax/../../include LDDINCDIR1=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax/../inc modules PWD=/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax
make[2]: Entering directory `/usr/src/kernels/3.10.0-862.2.3.el7.x86_64'
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax/pax.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax/pax.mod.o
  LD [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax/pax.ko
make[2]: Leaving directory `/usr/src/kernels/3.10.0-862.2.3.el7.x86_64'
cp pax.ko pax-x32_64-3.10.0-862.2.3.el7.x86_64smp.ko
make[1]: Leaving directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/pax'
make[1]: Entering directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp'
make[2]: Entering directory `/usr/src/kernels/3.10.0-862.2.3.el7.x86_64'
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/module.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/collector.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/procfs.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/transport.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/record.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/task_map.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/globals.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/cpuevents.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/user_vm.o
  CC [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.o
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.c:299:21: error: variable ‘vtss_stack_ops’ has initializer but incomplete type
 static const struct stacktrace_ops vtss_stack_ops = {
                     ^
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.c:304:5: error: unknown field ‘stack’ specified in initializer
     .stack          = vtss_stack_stack,
     ^
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.c:304:5: error: excess elements in struct initializer [-Werror]
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.c:304:5: error: (near initialization for ‘vtss_stack_ops’) [-Werror]
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.c:306:5: error: unknown field ‘address’ specified in initializer
     .address        = vtss_stack_address,
     ^
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.c:306:5: error: excess elements in struct initializer [-Werror]
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.c:306:5: error: (near initialization for ‘vtss_stack_ops’) [-Werror]
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.c: In function ‘vtss_stack_unwind_kernel’:
/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.c:329:5: error: implicit declaration of function ‘dump_trace’ [-Werror=implicit-function-declaration]
     dump_trace(task, regs_in, NULL, &vtss_stack_ops, &k_stk);
     ^
cc1: all warnings being treated as errors
make[3]: *** [/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp/stack.o] Error 1
make[2]: *** [_module_/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp] Error 2
make[2]: Leaving directory `/usr/src/kernels/3.10.0-862.2.3.el7.x86_64'
make[1]: [all] Error 2 (ignored)
cp -f vtsspp.ko vtsspp-x32_64-3.10.0-862.2.3.el7.x86_64smp.ko
cp: cannot stat ‘vtsspp.ko’: No such file or directory
make[1]: [all] Error 1 (ignored)
make[1]: Leaving directory `/opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/vtsspp'

 

6 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hi,

You have SEP driver built. But driver build script failed on VTSS driver.

  LD [M]  /opt/intel/vtune_amplifier_2018.2.0.551022/sepdk/src/sep4_1.ko
make[1]: Leaving directory `/usr/src/kernels/3.10.0-862.2.3.el7.x86_64'

So try to load the driver with insmod-sep script. Most of analysis will be available.

Right. Thanks for the help.

even though sep is built using this kernel, is there a fix for the error with vtsspp?

The collector vtsspp can't be compiled agaisn't the kernel 3.10.0-862.3.2
Is there any patch ?

Please try installing Intel(R) VTune(TM) Amplifier 2018 Update 3 (2018.3.0.558279) and rebuilding the SEP/VTSSPP drivers.
That solved the issue on my CentOS* 7.5 environment.

Leave a Comment

Please sign in to add a comment. Not a member? Join today