kernel 4.2にアップグレードした際に、pt3のlinuxドライバのビルドに失敗しました。
とりあえずkernelをダウングレードして凌いでいたのですが、対処方が記載されたサイトがあったので、情報をまとめておきます。
pt3ドライバのうち、pt3_pci.c/pt3_pci.hのそれぞれに、一行挿入することでmakeできるようになります。具体例は以下の通り。
pt3_pci.c(25行目あたり)
#include "version.h" #include <linux/module.h> #include <linux/kernel.h> #include <linux/errno.h> #include <linux/pci.h> #include <linux/init.h> #include <linux/interrupt.h> #include <linux/version.h> #include <linux/mutex.h> #include <linux/vmalloc.h> (←ここ挿入)
pt3_pci.h (25行目あたり)
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,37) void * pt3_vzalloc(unsigned long size); #else #define pt3_vzalloc vzalloc #include <linux/vmalloc.h> (←ここ挿入) #endif
これでOKです。
あとはいつも通り。PT3ディレクトリでmakeしてください。
make clean && make sudo make install
たぶん成功するはずです。
※2015/10/30追記
kernel 4.2で一般的に見られる現象/解決法のようなので、記事タイトルを修正しました。