That sounds like a good suggestion, and you can actually submit product suggestions to our R&D department through this website. I'll submit one as well!
That case actually was raised by me before which fixed the freeze issue on SMP kernel 2.6.16 running on Dell PowerEdge 2850, but the Dell PowerEdge 2850 is now discontinued, so we are now using the PowerEdge 2950, but could not runing 2.6.16, we have to run kernel 2.6.19, it seems there are some differences between 2.6.16 and 2.6.19 on mutex, I am still trying to resolve the problem, now I can build the driver, but there are still a few warnings, like below:
make -C /lib/modules/18.104.22.168-rt15/build SUBDIRS=/usr/local/nivxi/src KBUILD_VERBOSE=0 modules
make: Entering directory `/usr/src/linux-2.6.19'
CC [M] /usr/local/nivxi/src/vxi.o
/usr/local/nivxi/src/vxi.c: In function `vxi_install_interrupt_handler':
/usr/local/nivxi/src/vxi.c:112: warning: passing arg 2 of `request_irq' from incompatible pointer type
CC [M] /usr/local/nivxi/src/vxi_kernel.o
CC [M] /usr/local/nivxi/src/pci_io.o
CC [M] /usr/local/nivxi/src/mutex.o
CC [M] /usr/local/nivxi/src/vxiTimer.o
LD [M] /usr/local/nivxi/src/vximod.o
Building modules, stage 2.
MODPOST 1 modules
WARNING: "mutex_acquire" [/usr/local/nivxi/src/vximod.ko] undefined!
WARNING: "mutex_release" [/usr/local/nivxi/src/vximod.ko] undefined!
LD [M] /usr/local/nivxi/src/vximod.ko
make: Leaving directory `/usr/src/linux-2.6.19'
Kernel module built successfully and placed in ../sys/
Use /usr/local/nivxi/src/../sys/load_vxi to load it.