nixpkgs/pkgs/os-specific/linux/kernel/patches.nix

105 lines
2.6 KiB
Nix

{ stdenv, fetchurl, fetchpatch, pkgs }:
let
makeTuxonicePatch = { version, kernelVersion, sha256,
url ? "http://tuxonice.nigelcunningham.com.au/downloads/all/tuxonice-for-linux-${kernelVersion}-${version}.patch.bz2" }:
{ name = "tuxonice-${kernelVersion}";
patch = stdenv.mkDerivation {
name = "tuxonice-${version}-for-${kernelVersion}.patch";
src = fetchurl {
inherit url sha256;
};
phases = [ "installPhase" ];
installPhase = ''
source $stdenv/setup
bunzip2 -c $src > $out
'';
};
};
in
rec {
bridge_stp_helper =
{ name = "bridge-stp-helper";
patch = ./bridge-stp-helper.patch;
};
p9_fixes =
{ name = "p9-fixes";
patch = ./p9-fixes.patch;
};
mips_fpureg_emu =
{ name = "mips-fpureg-emulation";
patch = ./mips-fpureg-emulation.patch;
};
mips_fpu_sigill =
{ name = "mips-fpu-sigill";
patch = ./mips-fpu-sigill.patch;
};
mips_ext3_n32 =
{ name = "mips-ext3-n32";
patch = ./mips-ext3-n32.patch;
};
modinst_arg_list_too_long =
{ name = "modinst-arglist-too-long";
patch = ./modinst-arg-list-too-long.patch;
};
genksyms_fix_segfault =
{ name = "genksyms-fix-segfault";
patch = ./genksyms-fix-segfault.patch;
};
cpu-cgroup-v2 = import ./cpu-cgroup-v2-patches;
tag_hardened = rec {
name = "tag-hardened";
patch = ./tag-hardened.patch;
};
# https://bugzilla.kernel.org/show_bug.cgi?id=197591#c6
iwlwifi_mvm_support_version_7_scan_req_umac_fw_command = rec {
name = "iwlwifi_mvm_support_version_7_scan_req_umac_fw_command";
patch = fetchpatch {
name = name + ".patch";
url = https://bugzilla.kernel.org/attachment.cgi?id=260597;
sha256 = "09096npxpgvlwdz3pb3m9brvxh7vy0xc9z9p8hh85xyczyzcsjhr";
};
};
riscv_modules = {
name = "riscv-modules";
patch = ./riscv-modules.patch;
};
# http://lists.infradead.org/pipermail/linux-riscv/2018-February/000054.html
riscv_irq_busy = {
name = "riscv-irq-busy";
patch = ./riscv-irq-busy.patch;
};
# http://lists.infradead.org/pipermail/linux-riscv/2018-February/000059.html
riscv_install = {
name = "riscv-install";
patch = ./riscv-install.patch;
};
# http://lists.infradead.org/pipermail/linux-riscv/2018-February/000056.html
riscv_initrd = {
name = "riscv-initrd";
patch = ./riscv-initrd.patch;
};
# http://lists.infradead.org/pipermail/linux-riscv/2018-February/000058.html
riscv_initrd_free = {
name = "riscv-initrd-free";
patch = ./riscv-initrd-free.patch;
};
}