Discussions
Categories
- 17.9K All Categories
- 3.4K Industry Applications
- 3.3K Intelligent Advisor
- 62 Insurance
- 536K On-Premises Infrastructure
- 138.2K Analytics Software
- 38.6K Application Development Software
- 5.7K Cloud Platform
- 109.4K Database Software
- 17.5K Enterprise Manager
- 8.8K Hardware
- 71.1K Infrastructure Software
- 105.2K Integration
- 41.6K Security Software
Where is asm/system.h header file on uek3 kernel version -3.8.13-35.1.2.el6uek.x86_64?

I was trying to compile Clearcase mvfs module on kernel version 3.8.13-35.1.2.el6uek.x86_64(OS is OL6u4) and I'm getting this error:
-----------------
rm -rf *.o *.kobj *.obj *.ko *.mod.? .*.cmd .tmp_versions
/usr/bin/make -C /lib/modules/3.8.13-35.1.2.el6uek.x86_64/build SUBDIRS=`pwd`
make[1]: Entering directory `/usr/src/kernels/3.8.13-35.1.2.el6uek.x86_64'
LD /var/adm/rational/clearcase/mvfs/mvfs_src/built-in.o
CC [M] /var/adm/rational/clearcase/mvfs/mvfs_src/mvfs_vfsops.o
In file included from /var/adm/rational/clearcase/mvfs/mvfs_src/mvfs_mdep_linux.h:69,
from /var/adm/rational/clearcase/mvfs/mvfs_src/mvfs_systm.h:36,
from /var/adm/rational/clearcase/mvfs/mvfs_src/mvfs_vfsops.c:25:
/var/adm/rational/clearcase/mvfs/mvfs_src/vnode_linux.h:56:24: error: asm/system.h: No such file or directory
make[2]: *** [/var/adm/rational/clearcase/mvfs/mvfs_src/mvfs_vfsops.o] Error 1
make[1]: *** [_module_/var/adm/rational/clearcase/mvfs/mvfs_src] Error 2
make[1]: Leaving directory `/usr/src/kernels/3.8.13-35.1.2.el6uek.x86_64'
make: *** [all] Error 2
--------------------
I can't find the header file system.h in both these locations:
[[email protected] asm]# pwd
/usr/include/asm
[[email protected] asm]# ls
a.out.h byteorder.h ioctl.h kvm_para.h msr.h posix_types_32.h ptrace-abi.h shmbuf.h socket.h termbits.h unistd_64.h
auxvec.h debugreg.h ioctls.h ldt.h msr-index.h posix_types_64.h ptrace.h sigcontext32.h sockios.h termios.h unistd.h
bitsperlong.h e820.h ipcbuf.h mce.h mtrr.h posix_types.h resource.h sigcontext.h statfs.h types.h vm86.h
boot.h errno.h ist.h mman.h param.h prctl.h sembuf.h siginfo.h stat.h ucontext.h vsyscall.h
bootparam.h fcntl.h kvm.h msgbuf.h poll.h processor-flags.h setup.h signal.h swab.h unistd_32.h
[[email protected] asm]#
# pwd
/usr/include/asm-generic
[[email protected] asm-generic]# ls
auxvec.h errno.h int-ll64.h ipcbuf.h msgbuf.h posix_types.h setup.h siginfo.h socket.h stat.h termios.h unistd.h
bitsperlong.h fcntl.h ioctl.h mman-common.h param.h resource.h shmbuf.h signal-defs.h sockios.h swab.h types.h
errno-base.h int-l64.h ioctls.h mman.h poll.h sembuf.h shmparam.h signal.h statfs.h termbits.h ucontext.h
Does anyone know what happened to asm/system.h file? Was it removed on 3.8 kernel? Also, I don't see kernel-header packages for this particular kernel here
: http://ca-build32.us.oracle.com/auto-build/UEK3QU2/el6uek.x86_64/3.8.13-35.1.2/
Thanks in advance
Remya Valappil
Best Answer
-
OK, apparenlty system.h is gone in the 3.8 kernel.
I don't know if the information is correct, but according to the Fedora forum:
Missing system.h - FedoraForum.org
asm/switch_to.h is the replacement for asm/system.h in 3.3 + kernels
So the source you are compiling may not be compatible with the kernel version. Perhaps it would work if you create a symbolic like like the following:
# cd /usr/src/kernels/$(uname -r)/include/asm
# ln -s switch_to.h system.h
It may fail on other files too, but perhaps worth a try.
You may have to contact IBM to ask for a newer version of the driver, or use an older version of the kernel. You could for instance install the UEK2 (2.6.39) kernel, which is based on the 3.10 mainstream kernel if I remember correctly and also available.
Answers
-
The kernel header files as of OL 6 are included in the kernel-devel package. Since you use the UEK kernel I suggest you try the following:
# yum install kernel-uek-devel-$(uname -r)
-
Thanks Dude!
I've already installed kernel-devel package on my box and don't this system.h
[[email protected] asm]# rpm -qa|grep kernel-uek-devel-3.8
kernel-uek-devel-3.8.13-35.1.2.el6uek.x86_64
-
OK, apparenlty system.h is gone in the 3.8 kernel.
I don't know if the information is correct, but according to the Fedora forum:
Missing system.h - FedoraForum.org
asm/switch_to.h is the replacement for asm/system.h in 3.3 + kernels
So the source you are compiling may not be compatible with the kernel version. Perhaps it would work if you create a symbolic like like the following:
# cd /usr/src/kernels/$(uname -r)/include/asm
# ln -s switch_to.h system.h
It may fail on other files too, but perhaps worth a try.
You may have to contact IBM to ask for a newer version of the driver, or use an older version of the kernel. You could for instance install the UEK2 (2.6.39) kernel, which is based on the 3.10 mainstream kernel if I remember correctly and also available.
-
Hi Dude,
Thanks!
I can see switch_to.h in 3.8 kernel, however adding softlink and compiling doesn't help!
I tried compiling this module in UEK2 kernel (2.6.39-400.209.2.el6uek.x86_64) and it works (with slight modification done to source that I was compiling).
Thanks for all your help!!
Cheers!
Remya