lol

fusionio: Add iomemory-vsl driver

+53
+13
pkgs/os-specific/linux/fusionio/vsl-fix-file-inode.patch
··· 1 + diff --git a/kfile.c b/kfile.c 2 + index 5014e77..a65d921 100644 3 + --- a/kfile.c 4 + +++ b/kfile.c 5 + @@ -51,7 +51,7 @@ fusion_inode * noinline kfio_fs_inode(fusion_file *fp) 6 + #if KFIOC_STRUCT_FILE_HAS_PATH 7 + return (fusion_inode *) ((struct file *)fp)->f_path.dentry->d_inode; 8 + #else 9 + - return (fusion_inode *) ((struct file *)fp)->f_dentry->d_inode; 10 + + return (fusion_inode *) file_inode((struct file *)fp); 11 + #endif 12 + } 13 +
+38
pkgs/os-specific/linux/fusionio/vsl.nix
··· 1 + { stdenv, fetchurl, kernel }: 2 + 3 + stdenv.mkDerivation rec { 4 + name = "fusionio-iomemory-vsl-3.2.10"; 5 + 6 + src = fetchurl { 7 + name = "${name}.tar.gz"; 8 + url = "https://drive.google.com/uc?export=download&id=0B7U0_ZBLoB2WbXFMbExEMUFCcWM"; 9 + sha256 = "1zm20aa1jmmqcqkb4p9r4jsgbg371zr1abdz32rw02i9687fsgcc"; 10 + }; 11 + 12 + prePatch = '' 13 + cd root/usr/src/iomemory-vsl-* 14 + ''; 15 + 16 + patches = stdenv.lib.optional (stdenv.lib.versionAtLeast kernel.version "3.19") ./vsl-fix-file-inode.patch; 17 + 18 + preBuild = '' 19 + sed -i Makefile kfio_config.sh \ 20 + -e "s,\(KERNELDIR=\"\|KERNEL_SRC =\)[^\"]*,\1${kernel.dev}/lib/modules/${kernel.modDirVersion}/build,g" 21 + export DKMS_KERNEL_VERSION=${kernel.modDirVersion} 22 + export TARGET="x86_64_cc48" 23 + ''; 24 + 25 + installPhase = '' 26 + export INSTALL_ROOT=$out 27 + make modules_install 28 + ''; 29 + 30 + meta = with stdenv.lib; { 31 + homepage = http://fusionio.com; 32 + description = "kernel driver for accessing fusion-io cards"; 33 + license = licenses.unfree; 34 + platforms = [ "x86_64-linux" ]; 35 + broken = stdenv.system != "x86_64-linux"; 36 + maintainers = with maintainers; [ wkennington ]; 37 + }; 38 + }
+2
pkgs/top-level/all-packages.nix
··· 9278 9278 9279 9279 frandom = callPackage ../os-specific/linux/frandom { }; 9280 9280 9281 + fusionio-vsl = callPackage ../os-specific/linux/fusionio/vsl.nix { }; 9282 + 9281 9283 ktap = callPackage ../os-specific/linux/ktap { }; 9282 9284 9283 9285 lttng-modules = callPackage ../os-specific/linux/lttng-modules { };