From patchwork Fri Sep 17 11:42:17 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Michael Tremer X-Patchwork-Id: 4705 Return-Path: Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384 client-signature ECDSA (P-384) client-digest SHA384) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4H9sWn71ksz3xWK for ; Fri, 17 Sep 2021 11:42:45 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail02.haj.ipfire.org", Issuer "R3" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4H9sWh6JNjz6kl; Fri, 17 Sep 2021 11:42:40 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4H9sWh0kVwz32KJ; Fri, 17 Sep 2021 11:42:40 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4H9sWf64Stz2xR4 for ; Fri, 17 Sep 2021 11:42:38 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4H9sWf0gjSzsf; Fri, 17 Sep 2021 11:42:38 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1631878958; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=F9REJrabopOmnE6iKIgVT4A0wcTkPSsCweWMDZBw3YU=; b=b6jl6Nss0p53WakeZmsMB/qH0mhNkqR4/KduWJFNDz9ZpFYUwBSMTc8F+W+0b3ZJDHQjLJ LdgpOLS52s+ijBAg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1631878958; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=F9REJrabopOmnE6iKIgVT4A0wcTkPSsCweWMDZBw3YU=; b=rvTKONKJBO++/BggETheIKksQqD12H+kLQ5iJ1AS+LL59qc+gu/JNy+ggNHWHKXkcbz9wC e950jUtEUuwD12s0CCua8tzVL6cFWvw0b2eJWeF0xqpl8zEojXNXnsWX7IpsjWZORTwWCc EXRvEhAH4rLdscksyJb9dQ2BZOeltx0jxJ1qEgb2wkaJWYDLRt/UCXe61D9NjfB6JT67BV ZYqQqYpda/dXGGhU5vOsbmRNaObNNN3ERXIcsSLt+4QHtbmS0OxRmST6UsrS/8wlddgyFn iKrETAitZekzG9a1ZvD7BrBBe6Ib6K5kNVW9qQWDGIJV5jQq3lJM2K7CtF1nMQ== From: Michael Tremer To: development@lists.ipfire.org Subject: [PATCH 01/13] kernel: Change timer tick to 1000Hz Date: Fri, 17 Sep 2021 11:42:17 +0000 Message-Id: <20210917114229.10704-1-michael.tremer@ipfire.org> MIME-Version: 1.0 X-BeenThere: development@lists.ipfire.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: IPFire development talk List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Michael Tremer Errors-To: development-bounces@lists.ipfire.org Sender: "Development" This change is required to make the system respond faster to any realtime events (sending or receiving data packets). It will wake up at least one core 1000 times a second which will result in finer timer granularity and make scheduling smoother. HTB for example sends large packet bursts on each timer even to keep up data rates which is not helpful for most applications. The change might increase resource consumption and overhead slightly on some systems, but since we are running in an idle-dyntick configuration, we should not keep awake any cores that have not been awake before. Signed-off-by: Michael Tremer Acked-by: Peter Müller --- config/kernel/kernel.config.aarch64-ipfire | 6 +++--- config/kernel/kernel.config.armv6l-ipfire | 6 +++--- config/kernel/kernel.config.i586-ipfire | 6 +++--- config/kernel/kernel.config.x86_64-ipfire | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/config/kernel/kernel.config.aarch64-ipfire b/config/kernel/kernel.config.aarch64-ipfire index 450835d8b..54cd7c084 100644 --- a/config/kernel/kernel.config.aarch64-ipfire +++ b/config/kernel/kernel.config.aarch64-ipfire @@ -370,11 +370,11 @@ CONFIG_NR_CPUS=8 CONFIG_HOTPLUG_CPU=y # CONFIG_NUMA is not set CONFIG_HOLES_IN_ZONE=y -CONFIG_HZ_100=y +# CONFIG_HZ_100 is not set # CONFIG_HZ_250 is not set # CONFIG_HZ_300 is not set -# CONFIG_HZ_1000 is not set -CONFIG_HZ=100 +CONFIG_HZ_1000=y +CONFIG_HZ=1000 CONFIG_SCHED_HRTICK=y CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y CONFIG_ARCH_SPARSEMEM_ENABLE=y diff --git a/config/kernel/kernel.config.armv6l-ipfire b/config/kernel/kernel.config.armv6l-ipfire index b1af6555c..6fe17954d 100644 --- a/config/kernel/kernel.config.armv6l-ipfire +++ b/config/kernel/kernel.config.armv6l-ipfire @@ -588,13 +588,13 @@ CONFIG_HOTPLUG_CPU=y CONFIG_ARM_PSCI=y CONFIG_ARCH_NR_GPIO=512 CONFIG_HZ_FIXED=0 -CONFIG_HZ_100=y +# CONFIG_HZ_100 is not set # CONFIG_HZ_200 is not set # CONFIG_HZ_250 is not set # CONFIG_HZ_300 is not set # CONFIG_HZ_500 is not set -# CONFIG_HZ_1000 is not set -CONFIG_HZ=100 +CONFIG_HZ_1000=y +CONFIG_HZ=1000 CONFIG_SCHED_HRTICK=y CONFIG_ARM_PATCH_IDIV=y CONFIG_AEABI=y diff --git a/config/kernel/kernel.config.i586-ipfire b/config/kernel/kernel.config.i586-ipfire index 5f5a496a8..a915682e4 100644 --- a/config/kernel/kernel.config.i586-ipfire +++ b/config/kernel/kernel.config.i586-ipfire @@ -438,11 +438,11 @@ CONFIG_X86_INTEL_TSX_MODE_OFF=y # CONFIG_X86_INTEL_TSX_MODE_AUTO is not set CONFIG_EFI=y CONFIG_EFI_STUB=y -CONFIG_HZ_100=y +# CONFIG_HZ_100 is not set # CONFIG_HZ_250 is not set # CONFIG_HZ_300 is not set -# CONFIG_HZ_1000 is not set -CONFIG_HZ=100 +CONFIG_HZ_1000=y +CONFIG_HZ=1000 CONFIG_SCHED_HRTICK=y # CONFIG_KEXEC is not set CONFIG_CRASH_DUMP=y diff --git a/config/kernel/kernel.config.x86_64-ipfire b/config/kernel/kernel.config.x86_64-ipfire index f8289aeb8..730e0791e 100644 --- a/config/kernel/kernel.config.x86_64-ipfire +++ b/config/kernel/kernel.config.x86_64-ipfire @@ -430,11 +430,11 @@ CONFIG_X86_INTEL_TSX_MODE_OFF=y CONFIG_EFI=y CONFIG_EFI_STUB=y CONFIG_EFI_MIXED=y -CONFIG_HZ_100=y +# CONFIG_HZ_100 is not set # CONFIG_HZ_250 is not set # CONFIG_HZ_300 is not set -# CONFIG_HZ_1000 is not set -CONFIG_HZ=100 +CONFIG_HZ_1000=y +CONFIG_HZ=1000 CONFIG_SCHED_HRTICK=y # CONFIG_KEXEC is not set # CONFIG_KEXEC_FILE is not set