From fe143bac5b8dbdbdc9332abc3f2acdf839652c9e Mon Sep 17 00:00:00 2001 From: Malte Brandy Date: Mon, 21 Oct 2019 22:36:27 +0200 Subject: [PATCH] nixos/redis: Disable hugepages for redis via sysctl and not via a systemd-oneshot --- nixos/modules/services/databases/redis.nix | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/nixos/modules/services/databases/redis.nix b/nixos/modules/services/databases/redis.nix index 9c389d80a6df..5861323e5ea0 100644 --- a/nixos/modules/services/databases/redis.nix +++ b/nixos/modules/services/databases/redis.nix @@ -186,9 +186,9 @@ in config = mkIf config.services.redis.enable { - boot.kernel.sysctl = mkIf cfg.vmOverCommit { - "vm.overcommit_memory" = "1"; - }; + boot.kernel.sysctl = { + "vm.nr_hugepages" = "0"; + } // mkIf cfg.vmOverCommit { "vm.overcommit_memory" = "1"; }; networking.firewall = mkIf cfg.openFirewall { allowedTCPPorts = [ cfg.port ]; @@ -198,14 +198,6 @@ in environment.systemPackages = [ cfg.package ]; - systemd.services.disable-transparent-huge-pages = { - description = "Disable Transparent Huge Pages (required by Redis)"; - before = [ "redis.service" ]; - wantedBy = [ "redis.service" ]; - script = "echo never > /sys/kernel/mm/transparent_hugepage/enabled"; - serviceConfig.Type = "oneshot"; - }; - systemd.services.redis = { description = "Redis Server";