depot/third_party/nixpkgs/pkgs/os-specific/linux/lttng-modules/default.nix
Default email b450903751 Project import generated by Copybara.
GitOrigin-RevId: 74a1793c659d09d7cf738005308b1f86c90cb59b
2022-09-09 16:08:57 +02:00

62 lines
2.1 KiB
Nix

{ lib, stdenv, fetchgit, fetchpatch, kernel }:
stdenv.mkDerivation rec {
pname = "lttng-modules-${kernel.version}";
version = "2.13.4";
src = fetchgit {
url = "https://git.lttng.org/lttng-modules.git";
rev = "v${version}";
hash = "sha256-J2Tr1vOiCAilmnf3attF3bz8Irn9IQ2QbapdXJ4MUSg=";
};
patches = [
# fix: mm/page_alloc: fix tracepoint mm_page_alloc_zone_locked() (v5.19)
(fetchpatch {
url = "https://git.lttng.org/?p=lttng-modules.git;a=patch;h=6229bbaa423832f6b7c7a658ad11e1d4242752ff";
hash = "sha256-pqbKxBzjfN20wfsqSeBLXNQ+/U+3qk9RfTiT32OwSIc=";
})
# fix: fs: Remove flags parameter from aops->write_begin (v5.19)
(fetchpatch {
url = "https://git.lttng.org/?p=lttng-modules.git;a=patch;h=5e2f832d59d51589ab69479c7db43c7581fb9346";
hash = "sha256-auoCbvFEVR76sOCLjIe+q/Q+vunQlR3G3gVcjqAGGPk=";
})
# fix: workqueue: Fix type of cpu in trace event (v5.19)
(fetchpatch {
url = "https://git.lttng.org/?p=lttng-modules.git;a=patch;h=c6da9604b1666780ea4725b3b3d1bfa1548f9c89";
hash = "sha256-qoTwy+P32qg1L+JctqM1+70OkeTbnbL3QJ9LwaBq/bw=";
})
# fix: net: skb: introduce kfree_skb_reason() (v5.15.58..v5.16)
(fetchpatch {
url = "https://git.lttng.org/?p=lttng-modules.git;a=patch;h=96c477dabaaf6cd1734bebe0972fef877e5a463b";
hash = "sha256-b7BhrYZ5SZqeRVGEu0Eo9GfbcZdDPrgEnOl2XU3z+ds=";
})
];
nativeBuildInputs = kernel.moduleBuildDependencies;
hardeningDisable = [ "pic" ];
NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
makeFlags = kernel.makeFlags ++ [
"KERNELDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
"INSTALL_MOD_PATH=${placeholder "out"}"
];
installTargets = [ "modules_install" ];
enableParallelBuilding = true;
meta = with lib; {
description = "Linux kernel modules for LTTng tracing";
homepage = "https://lttng.org/";
license = with licenses; [ lgpl21Only gpl2Only mit ];
platforms = platforms.linux;
maintainers = [ maintainers.bjornfor ];
broken = (lib.versions.majorMinor kernel.modDirVersion) == "5.10";
};
}