How can I compile kernel modules in pve 4.2.2.1 enterprise?

cdukes

Renowned Member
Sep 11, 2015
89
6
73
Raleigh, NC
www.logzilla.net
I have two drivers I need to compile support for. An iodrive2 and an external raid array which uses rocketraid (rr62x)
When I try to compile for the external raid array, I get:

Code:
~#make install
grep: /lib/modules/4.2.2-1-pve/build/include/linux/version.h: No such file or directory
expr: syntax error
../../../inc/linux/Makefile.def:85: *** Only kernel 2.4/2.6 is supported but you use 2..  Stop.
 
this is from my rocketraid driver install guide for proxmox :
Code:
apt-get update
aptitude search pve-headers
apt-get install <right header package>
apt-get install build-essential


cd /link/to/driver/
e.g. /home/rr64xl-linux-src-v1.3.11/product/rr64xl/linux
Code:
make
make install 
update-pciids
check if it is listed.
Code:
lspci

hope that helps you.
 
:(
I was hoping it would, but:

Code:
~#apt-get install pve-headers-4.2.2-1-pve
Reading package lists... Done
Building dependency tree
Reading state information... Done
pve-headers-4.2.2-1-pve is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
~# apt-get install build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.

Code:
cd rr62x-linuxla-src-v1.0/product/rr62x/linuxla
~/rr62x-linuxla-src-v1.0/product/rr62x/linuxla# make
grep: /lib/modules/4.2.2-1-pve/build/include/linux/version.h: No such file or directory
expr: syntax error
../../../inc/linux/Makefile.def:85: *** Only kernel 2.4/2.6 is supported but you use 2..  Stop.

Any ideas?
 
That looks like your driver only supports kernel 2.4/2.6
proxmox 3 uses afaik kernel 3.x
proxmox 4 uses kernel 4.x

can you post the exact description of your iodrive ?

In case of my Rocketraid 640L i had to contact Highpoint and ask for updated drivers (took 1 work day).
they will most likely send you an up-to-date version of their opensource drivers.
I do not know why they do not just update them on their website :P


anyways
http://www.highpoint-tech.com/websupport/
create an account there, add your device and open a support ticket.
basically ask em for drivers for "Debian Kernel 4.x"
 


FusionIo got bought by SanDisk. SanDisk is about to be bought by Western Digital.
Afaik support for that drive is done by San Disk now. If so, then https://link.sandisk.com/commercialsupport.html is your choice (need to register an account).

They might have up to date drivers there.

If not, you need to find out what controller they use (you said rr62x) and nag their support for updated drivers.

If that too failed, you might wanna look around the web for " ioDrive2". It seems to be a while label product and i have found versions from cisco, dell and Hp so far. Edit3: and Supermicro

edit: the driver seems to be called "iomemory-vsl" , a quick web-search revealed fujitsu drivers for at lest kernel 3.6
 
Last edited:
Bummer....
Any idea how to fix this?

Output from dpkg-buildpackage




Code:
scripts/Makefile.build:258: recipe for target '/root/iomemory-vsl-3.2.9.1461/driver_source/kfio.o' failed
make[3]: *** [/root/iomemory-vsl-3.2.9.1461/driver_source/kfio.o] Error 1
/root/iomemory-vsl-3.2.9.1461/driver_source/kmem.c: In function ‘kfio_vmalloc’:
/root/iomemory-vsl-3.2.9.1461/driver_source/kmem.c:645:5: error: implicit declaration of function ‘vmalloc’ [-Werror=implicit-function-declaration]
     return vmalloc(size);
     ^
/root/iomemory-vsl-3.2.9.1461/driver_source/kmem.c:645:5: warning: return makes pointer from integer without a cast
/root/iomemory-vsl-3.2.9.1461/driver_source/kmem.c: In function ‘kfio_vfree’:
/root/iomemory-vsl-3.2.9.1461/driver_source/kmem.c:661:5: error: implicit declaration of function ‘vfree’ [-Werror=implicit-function-declaration]
     vfree(ptr);
     ^
cc1: some warnings being treated as errors
scripts/Makefile.build:258: recipe for target '/root/iomemory-vsl-3.2.9.1461/driver_source/kmem.o' failed
make[3]: *** [/root/iomemory-vsl-3.2.9.1461/driver_source/kmem.o] Error 1
Makefile:1398: recipe for target '_module_/root/iomemory-vsl-3.2.9.1461/driver_source' failed
make[2]: *** [_module_/root/iomemory-vsl-3.2.9.1461/driver_source] Error 2
make[2]: Leaving directory '/usr/src/linux-headers-4.2.2-1-pve'
Makefile:82: recipe for target 'modules' failed
make[1]: *** [modules] Error 2
make[1]: Leaving directory '/root/iomemory-vsl-3.2.9.1461/driver_source'
ERROR:
debian/rules:94: recipe for target 'build-arch-stamp' failed
make: *** [build-arch-stamp] Error 1
dpkg-buildpackage: error: debian/rules build gave error exit status 2
 
not sure, but you could try building it from source:

iomemory-vsl-3.2.9.1461/root/usr/src
make
make install

and hope it supports the 4.x kernel.
 
Bummer, exact same error...

I did miss some other errors above that though (there were there last time, I just didn't notice):

Code:
make[1]: Entering directory '/usr/src/linux-headers-4.2.2-1-pve'
printf '#include "linux/module.h"\nMODULE_LICENSE("Proprietary");\n' >/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/license.c
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/main.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/pci.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/sysrq.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/driver_init.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfio.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/errno.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/state.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kcache.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfile.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kmem.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kmisc.o
  CC [M]  /root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kscatter.o
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfile.c: In function ‘kfio_fs_inode’:
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfile.c:54:48: error: ‘struct file’ has no member named ‘f_dentry’
     return (fusion_inode *) ((struct file *)fp)->f_dentry->d_inode;
                                                ^
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfile.c:56:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
scripts/Makefile.build:258: recipe for target '/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfile.o' failed
make[2]: *** [/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfile.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfio.c: In function ‘kfio_bind_kthread_to_node’:
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfio.c:1069:9: error: implicit declaration of function ‘cpus_weight’ [-Werror=implicit-function-declaration]
         if (cpumask && cpus_weight(*cpumask))
         ^
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kmem.c: In function ‘kfio_vmalloc’:
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kmem.c:645:5: error: implicit declaration of function ‘vmalloc’ [-Werror=implicit-function-declaration]
     return vmalloc(size);
     ^
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kmem.c:645:5: warning: return makes pointer from integer without a cast
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kmem.c: In function ‘kfio_vfree’:
/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kmem.c:661:5: error: implicit declaration of function ‘vfree’ [-Werror=implicit-function-declaration]
     vfree(ptr);
     ^
cc1: some warnings being treated as errors
scripts/Makefile.build:258: recipe for target '/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kmem.o' failed
make[2]: *** [/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kmem.o] Error 1
cc1: some warnings being treated as errors
scripts/Makefile.build:258: recipe for target '/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfio.o' failed
make[2]: *** [/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9/kfio.o] Error 1
Makefile:1398: recipe for target '_module_/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9' failed
make[1]: *** [_module_/root/iomemory-vsl-3.2.9.1461/root/usr/src/iomemory-vsl-3.2.9] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.2.2-1-pve'
Makefile:82: recipe for target 'modules' failed
make: *** [modules] Error 2
 
Regarding the raid storage for the other issue:
Code:
[FONT=Helvetica]Dear customer,[/FONT]

[FONT=Helvetica]Your issue (ID:22483) has been updated. [/FONT]
[FONT=Helvetica]The update content is as follows:[/FONT]

[FONT=Helvetica]Dear Customer,[/FONT]
[FONT=Helvetica]There is no new driver update available for this card.[/FONT][FONT=Helvetica]
[/FONT]
[FONT=Helvetica]Regards,[/FONT]
[FONT=Helvetica]Support[/FONT]

Um, they suck?


 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!