diff options
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch | 30 | ||||
-rw-r--r-- | 0002-HID-apple-Properly-handle-function-keys-on-Keychron-.patch | 107 | ||||
-rw-r--r-- | 0002-drm-i915-psr-Use-full-update-In-case-of-area-calcula.patch | 65 | ||||
-rw-r--r-- | 0003-drm-i915-Ensure-damage-clip-area-is-within-pipe-area.patch | 105 | ||||
-rw-r--r-- | 0004-mm-vmscan-fix-extreme-overreclaim-and-swap-floods.patch | 131 | ||||
-rw-r--r-- | 0005-soundwire-intel-use-pm_runtime_resume-on-component-p.patch | 82 | ||||
-rw-r--r-- | PKGBUILD | 24 | ||||
-rw-r--r-- | config | 322 |
9 files changed, 633 insertions, 261 deletions
@@ -1,5 +1,5 @@ pkgbase = linux-rc - pkgver = 5.18.13rc1 + pkgver = 5.19.8rc1 pkgrel = 1 url = https://www.kernel.org/ arch = x86_64 @@ -12,24 +12,30 @@ pkgbase = linux-rc makedepends = tar makedepends = xz options = !strip - source = https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.13-rc1.xz - source = https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.13-rc1.sign - source = https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.18.12.tar.xz - source = https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.18.12.tar.sign + source = https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.19.8-rc1.xz + source = https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.19.8-rc1.sign + source = https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.19.7.tar.xz + source = https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.19.7.tar.sign source = config source = 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch - source = 0002-HID-apple-Properly-handle-function-keys-on-Keychron-.patch + source = 0002-drm-i915-psr-Use-full-update-In-case-of-area-calcula.patch + source = 0003-drm-i915-Ensure-damage-clip-area-is-within-pipe-area.patch + source = 0004-mm-vmscan-fix-extreme-overreclaim-and-swap-floods.patch + source = 0005-soundwire-intel-use-pm_runtime_resume-on-component-p.patch validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886 validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E validpgpkeys = A2FF3A36AAA56654109064AB19802F8B0D70FC30 validpgpkeys = C7E7849466FE2358343588377258734B41C31549 - b2sums = cc22236a1dca4a41b2ad4be072555b3618d308e12d13badb541346ad37aa3e880d45cadb1169bdc475003479900fe046a7bd5e5b5fd6f326418d505d0a74acbc + b2sums = 755416aee62b7e737ad29a3f552ba462dd4e6f1b8cc6b61c4961ea2ff8a06b68eb69f9d671e8146cfcedc7edff2e184c71bd2bd00e214e4f374b3252719c2975 b2sums = SKIP - b2sums = 000df730f6651173292a43745edd615b501d959f4d963a11df600a6bcb378db0750023c9025c8d63091658d7540693cc0e486f3bae3b49610135ca34f0b8edd4 + b2sums = 9fd934cf511ded0800a387beda79e1d4c7523926c69cae0f4eee62cfbc0fab4b97e666c9a0b79130aff9e17dfc4c222a04a6037776182954b1edc0af9b8517c6 b2sums = SKIP - b2sums = aeffb500a9cf0f1265fc62fa9260bdddac8ba47bf01e3b2732d961ea7d58ae4886563bc7076fe920d4fca3ad19588bfe8f9368e77fdc61336c894488bab41638 - b2sums = e226fb1f498a739a9a65cf8bb542978b0573ba7630e82516d2393dcdcdd42910adc7107d6174eed349a513643092a737acf552c19d27f896f4f771de3d1e00f1 - b2sums = 35e8ef4806040797f2844d076c92728ad55adb0c29e906399afe6155e2657a2784ffea61e49ef6a9910ed392b621663a180fa0d7750e92a01afd5446bce46a5a + b2sums = 28b82cdb5faac7f93368bbd5c4a9106f729dd39624abbd7a0acc4909599175af0a987c91bb6c0e348ae1ab2180f5e85c3a04ce6ba03e03b0dee45fe3b81d3847 + b2sums = 601a38549c139dee5511075133fca55fd6d11821df0d6c94807e9182fd8b09572d59cdf9ae14ff79cd38c8db15feb1d80373cfed938627fac1f05ac7169c9b22 + b2sums = 0a2fb7535f65e402b1b24e5e86f48dddd004d2ca2feff4a6066e221e55e34d6343eb1e515b62ee03c2ccb19692921593ae5a17ff63fba46c6df6b74bfe37897c + b2sums = e53054446bb25fea9ba1de582c57da637112219c308255dd4003c040b61bb8d26fcd5bd61515884df91f81611a762edf2fe83493567354c164cf55afbc6e4fa8 + b2sums = b6a3342e9993383e714eeabeb1e2ab6e9f9062af4d0c8551522c3554cc84b93ed3bf4ce22e8e74e1e73f3fd668c334ca2e3e358bd6e75c9d75eb487983ee8bd5 + b2sums = 5efabcfc95f308af6f22015e6a15b170393773c214711460aaf9d455c4ea74ad258fb3d392f8c0383fb7b10f97c1f237b332544345ff98ba69c4c176728bea60 pkgname = linux-rc pkgdesc = The release candidate kernel and modules diff --git a/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch b/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch index d51b6ee6e6c3..79059cf3c57f 100644 --- a/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch +++ b/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch @@ -1,7 +1,7 @@ -From 0d08f6e05307e6184dd245d6ad5b1964758dfd7e Mon Sep 17 00:00:00 2001 +From 365311308e94c32ce860cb1c7aeefb40e9ec91cf Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> Date: Mon, 16 Sep 2019 04:53:20 +0200 -Subject: [PATCH 1/9] ZEN: Add sysctl and CONFIG to disallow unprivileged +Subject: [PATCH 1/6] ZEN: Add sysctl and CONFIG to disallow unprivileged CLONE_NEWUSER Our default behavior continues to match the vanilla kernel. @@ -36,10 +36,10 @@ index 33a4240e6a6f..82213f9c4c17 100644 { return &init_user_ns; diff --git a/init/Kconfig b/init/Kconfig -index e9119bf54b1f..a1a5a68aea07 100644 +index c7900e8975f1..ca4e43b7f31f 100644 --- a/init/Kconfig +++ b/init/Kconfig -@@ -1231,6 +1231,22 @@ config USER_NS +@@ -1235,6 +1235,22 @@ config USER_NS If unsure, say N. @@ -63,12 +63,12 @@ index e9119bf54b1f..a1a5a68aea07 100644 bool "PID Namespaces" default y diff --git a/kernel/fork.c b/kernel/fork.c -index f1e89007f228..49144b49a3d1 100644 +index 9d44f2d46c69..e5ba00a7e3b2 100644 --- a/kernel/fork.c +++ b/kernel/fork.c -@@ -98,6 +98,10 @@ - #include <linux/io_uring.h> +@@ -99,6 +99,10 @@ #include <linux/bpf.h> + #include <linux/sched/mm.h> +#ifdef CONFIG_USER_NS +#include <linux/user_namespace.h> @@ -77,7 +77,7 @@ index f1e89007f228..49144b49a3d1 100644 #include <asm/pgalloc.h> #include <linux/uaccess.h> #include <asm/mmu_context.h> -@@ -1922,6 +1926,10 @@ static __latent_entropy struct task_struct *copy_process( +@@ -1995,6 +1999,10 @@ static __latent_entropy struct task_struct *copy_process( if ((clone_flags & (CLONE_NEWUSER|CLONE_FS)) == (CLONE_NEWUSER|CLONE_FS)) return ERR_PTR(-EINVAL); @@ -88,7 +88,7 @@ index f1e89007f228..49144b49a3d1 100644 /* * Thread groups must share signals as well, and detached threads * can only be started up within the thread group. -@@ -3036,6 +3044,12 @@ int ksys_unshare(unsigned long unshare_flags) +@@ -3143,6 +3151,12 @@ int ksys_unshare(unsigned long unshare_flags) if (unshare_flags & CLONE_NEWNS) unshare_flags |= CLONE_FS; @@ -102,12 +102,12 @@ index f1e89007f228..49144b49a3d1 100644 if (err) goto bad_unshare_out; diff --git a/kernel/sysctl.c b/kernel/sysctl.c -index 730ab56d9e92..6cf4e5c36ec9 100644 +index 35d034219513..8e2c7326f0e8 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c -@@ -91,6 +91,9 @@ - #if defined(CONFIG_PROVE_LOCKING) || defined(CONFIG_LOCK_STAT) - #include <linux/lockdep.h> +@@ -81,6 +81,9 @@ + #ifdef CONFIG_RT_MUTEXES + #include <linux/rtmutex.h> #endif +#ifdef CONFIG_USER_NS +#include <linux/user_namespace.h> @@ -115,7 +115,7 @@ index 730ab56d9e92..6cf4e5c36ec9 100644 #if defined(CONFIG_SYSCTL) -@@ -1814,6 +1817,15 @@ static struct ctl_table kern_table[] = { +@@ -1608,6 +1611,15 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = proc_dointvec, }, @@ -150,5 +150,5 @@ index 5481ba44a8d6..423ab2563ad7 100644 static DEFINE_MUTEX(userns_state_mutex); -- -2.36.0 +2.37.3 diff --git a/0002-HID-apple-Properly-handle-function-keys-on-Keychron-.patch b/0002-HID-apple-Properly-handle-function-keys-on-Keychron-.patch deleted file mode 100644 index 3fa5fe6ec37b..000000000000 --- a/0002-HID-apple-Properly-handle-function-keys-on-Keychron-.patch +++ /dev/null @@ -1,107 +0,0 @@ -From 759410cbc43568775113a7d1c6bff1286a0d2a91 Mon Sep 17 00:00:00 2001 -From: Bryan Cain <bryancain3@gmail.com> -Date: Thu, 5 May 2022 13:12:21 -0600 -Subject: [PATCH 2/3] HID: apple: Properly handle function keys on Keychron - keyboards -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Keychron's C-series and K-series of keyboards copy the vendor and -product IDs of an Apple keyboard, but only behave like that device when -set to "Mac" mode. In "Windows" mode, the Fn key doesn't generate a -scancode, so it's impossible to use the F1-F12 keys when fnmode is set -to its default value of 1. - -To fix this, make fnmode default to the new value of 3, which behaves -like fnmode=2 for Keychron keyboards and like fnmode=1 for actual Apple -keyboards. This way, Keychron devices are fully usable in both "Windows" -and "Mac" modes, while behavior is unchanged for everything else. - -Signed-off-by: Bryan Cain <bryancain3@gmail.com> -Reviewed-by: Hans de Goede <hdegoede@redhat.com> -Tested-by: José Expósito <jose.exposito89@gmail.com> -Signed-off-by: Jiri Kosina <jkosina@suse.cz> ---- - drivers/hid/hid-apple.c | 22 ++++++++++++++++++---- - 1 file changed, 18 insertions(+), 4 deletions(-) - -diff --git a/drivers/hid/hid-apple.c b/drivers/hid/hid-apple.c -index 0cf35caee9fa..42a568902f49 100644 ---- a/drivers/hid/hid-apple.c -+++ b/drivers/hid/hid-apple.c -@@ -21,6 +21,7 @@ - #include <linux/module.h> - #include <linux/slab.h> - #include <linux/timer.h> -+#include <linux/string.h> - - #include "hid-ids.h" - -@@ -35,16 +36,17 @@ - #define APPLE_NUMLOCK_EMULATION BIT(8) - #define APPLE_RDESC_BATTERY BIT(9) - #define APPLE_BACKLIGHT_CTL BIT(10) -+#define APPLE_IS_KEYCHRON BIT(11) - - #define APPLE_FLAG_FKEY 0x01 - - #define HID_COUNTRY_INTERNATIONAL_ISO 13 - #define APPLE_BATTERY_TIMEOUT_MS 60000 - --static unsigned int fnmode = 1; -+static unsigned int fnmode = 3; - module_param(fnmode, uint, 0644); - MODULE_PARM_DESC(fnmode, "Mode of fn key on Apple keyboards (0 = disabled, " -- "[1] = fkeyslast, 2 = fkeysfirst)"); -+ "1 = fkeyslast, 2 = fkeysfirst, [3] = auto)"); - - static int iso_layout = -1; - module_param(iso_layout, int, 0644); -@@ -349,6 +351,7 @@ static int hidinput_apple_event(struct hid_device *hid, struct input_dev *input, - const struct apple_key_translation *trans, *table; - bool do_translate; - u16 code = 0; -+ unsigned int real_fnmode; - - u16 fn_keycode = (swap_fn_leftctrl) ? (KEY_LEFTCTRL) : (KEY_FN); - -@@ -359,7 +362,13 @@ static int hidinput_apple_event(struct hid_device *hid, struct input_dev *input, - return 1; - } - -- if (fnmode) { -+ if (fnmode == 3) { -+ real_fnmode = (asc->quirks & APPLE_IS_KEYCHRON) ? 2 : 1; -+ } else { -+ real_fnmode = fnmode; -+ } -+ -+ if (real_fnmode) { - if (hid->product == USB_DEVICE_ID_APPLE_ALU_WIRELESS_ANSI || - hid->product == USB_DEVICE_ID_APPLE_ALU_WIRELESS_ISO || - hid->product == USB_DEVICE_ID_APPLE_ALU_WIRELESS_JIS || -@@ -406,7 +415,7 @@ static int hidinput_apple_event(struct hid_device *hid, struct input_dev *input, - - if (!code) { - if (trans->flags & APPLE_FLAG_FKEY) { -- switch (fnmode) { -+ switch (real_fnmode) { - case 1: - do_translate = !asc->fn_on; - break; -@@ -660,6 +669,11 @@ static int apple_input_configured(struct hid_device *hdev, - asc->quirks &= ~APPLE_HAS_FN; - } - -+ if (strncmp(hdev->name, "Keychron", 8) == 0) { -+ hid_info(hdev, "Keychron keyboard detected; function keys will default to fnmode=2 behavior\n"); -+ asc->quirks |= APPLE_IS_KEYCHRON; -+ } -+ - return 0; - } - --- -2.36.1 - diff --git a/0002-drm-i915-psr-Use-full-update-In-case-of-area-calcula.patch b/0002-drm-i915-psr-Use-full-update-In-case-of-area-calcula.patch new file mode 100644 index 000000000000..a5070c07674b --- /dev/null +++ b/0002-drm-i915-psr-Use-full-update-In-case-of-area-calcula.patch @@ -0,0 +1,65 @@ +From 51928058df4cebd8749d269a20dafa3e52122bfc Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jouni=20H=C3=B6gander?= <jouni.hogander@intel.com> +Date: Fri, 13 May 2022 17:28:10 +0300 +Subject: [PATCH 2/6] drm/i915/psr: Use full update In case of area calculation + fails +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Currently we have some corner cases where area calculation fails. For +these sel fetch area calculation ends up having update area as y1 = 0, +y2 = 4. Instead of these values safer option is full update. + +One of such for example is big fb with offset. We don't have usable +offset in psr2_sel_fetch_update. Currently it's open what is the +proper way to fix this corner case. Use full update for now. + +v2: Commit message modified +v3: Print out debug info once when area calculation fails +v4: Use drm_info_once +v5: pipeA -> "pipe %c", pipe_name(crtc-pipe) + +Cc: José Roberto de Souza <jose.souza@intel.com> +Cc: Mika Kahola <mika.kahola@intel.com> +Signed-off-by: Jouni Högander <jouni.hogander@intel.com> +Reviewed-by: José Roberto de Souza <jose.souza@intel.com> +--- + drivers/gpu/drm/i915/display/intel_psr.c | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c +index 06db407e2749..fecdaaeac39e 100644 +--- a/drivers/gpu/drm/i915/display/intel_psr.c ++++ b/drivers/gpu/drm/i915/display/intel_psr.c +@@ -1685,6 +1685,7 @@ static bool psr2_sel_fetch_pipe_state_supported(const struct intel_crtc_state *c + int intel_psr2_sel_fetch_update(struct intel_atomic_state *state, + struct intel_crtc *crtc) + { ++ struct drm_i915_private *dev_priv = to_i915(state->base.dev); + struct intel_crtc_state *crtc_state = intel_atomic_get_new_crtc_state(state, crtc); + struct drm_rect pipe_clip = { .x1 = 0, .y1 = -1, .x2 = INT_MAX, .y2 = -1 }; + struct intel_plane_state *new_plane_state, *old_plane_state; +@@ -1770,6 +1771,19 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state, + clip_area_update(&pipe_clip, &damaged_area); + } + ++ /* ++ * TODO: For now we are just using full update in case ++ * selective fetch area calculation fails. To optimize this we ++ * should identify cases where this happens and fix the area ++ * calculation for those. ++ */ ++ if (pipe_clip.y1 == -1) { ++ drm_info_once(&dev_priv->drm, ++ "Selective fetch area calculation failed in pipe %c\n", ++ pipe_name(crtc->pipe)); ++ full_update = true; ++ } ++ + if (full_update) + goto skip_sel_fetch_set_loop; + +-- +2.37.3 + diff --git a/0003-drm-i915-Ensure-damage-clip-area-is-within-pipe-area.patch b/0003-drm-i915-Ensure-damage-clip-area-is-within-pipe-area.patch new file mode 100644 index 000000000000..89b1b9fb5bd8 --- /dev/null +++ b/0003-drm-i915-Ensure-damage-clip-area-is-within-pipe-area.patch @@ -0,0 +1,105 @@ +From 568322864d985b26cb125c26940e6512183eb517 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jouni=20H=C3=B6gander?= <jouni.hogander@intel.com> +Date: Fri, 13 May 2022 17:28:11 +0300 +Subject: [PATCH 3/6] drm/i915: Ensure damage clip area is within pipe area +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Current update area calculation is not handling situation where +e.g. cursor plane is fully or partially outside pipe area. + +Fix this by checking damage area against pipe_src area using +drm_rect_intersect. + +v2: Set x1 and x2 in damaged_area initialization +v3: Move drm_rect_intersect into clip_area_update +v4: draw_area -> pipe_src + +Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/5440 +Cc: José Roberto de Souza <jose.souza@intel.com> +Cc: Mika Kahola <mika.kahola@intel.com> + +Reviewed-by: José Roberto de Souza <jose.souza@intel.com> +Signed-off-by: Jouni Högander <jouni.hogander@intel.com> +--- + drivers/gpu/drm/i915/display/intel_psr.c | 23 ++++++++++++++++------- + 1 file changed, 16 insertions(+), 7 deletions(-) + +diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c +index fecdaaeac39e..36356893c7ca 100644 +--- a/drivers/gpu/drm/i915/display/intel_psr.c ++++ b/drivers/gpu/drm/i915/display/intel_psr.c +@@ -1618,8 +1618,12 @@ static void psr2_man_trk_ctl_calc(struct intel_crtc_state *crtc_state, + } + + static void clip_area_update(struct drm_rect *overlap_damage_area, +- struct drm_rect *damage_area) ++ struct drm_rect *damage_area, ++ struct drm_rect *pipe_src) + { ++ if (!drm_rect_intersect(damage_area, pipe_src)) ++ return; ++ + if (overlap_damage_area->y1 == -1) { + overlap_damage_area->y1 = damage_area->y1; + overlap_damage_area->y2 = damage_area->y2; +@@ -1709,7 +1713,8 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state, + */ + for_each_oldnew_intel_plane_in_state(state, plane, old_plane_state, + new_plane_state, i) { +- struct drm_rect src, damaged_area = { .y1 = -1 }; ++ struct drm_rect src, damaged_area = { .x1 = 0, .y1 = -1, ++ .x2 = INT_MAX }; + struct drm_atomic_helper_damage_iter iter; + struct drm_rect clip; + +@@ -1736,20 +1741,23 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state, + if (old_plane_state->uapi.visible) { + damaged_area.y1 = old_plane_state->uapi.dst.y1; + damaged_area.y2 = old_plane_state->uapi.dst.y2; +- clip_area_update(&pipe_clip, &damaged_area); ++ clip_area_update(&pipe_clip, &damaged_area, ++ &crtc_state->pipe_src); + } + + if (new_plane_state->uapi.visible) { + damaged_area.y1 = new_plane_state->uapi.dst.y1; + damaged_area.y2 = new_plane_state->uapi.dst.y2; +- clip_area_update(&pipe_clip, &damaged_area); ++ clip_area_update(&pipe_clip, &damaged_area, ++ &crtc_state->pipe_src); + } + continue; + } else if (new_plane_state->uapi.alpha != old_plane_state->uapi.alpha) { + /* If alpha changed mark the whole plane area as damaged */ + damaged_area.y1 = new_plane_state->uapi.dst.y1; + damaged_area.y2 = new_plane_state->uapi.dst.y2; +- clip_area_update(&pipe_clip, &damaged_area); ++ clip_area_update(&pipe_clip, &damaged_area, ++ &crtc_state->pipe_src); + continue; + } + +@@ -1760,7 +1768,8 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state, + &new_plane_state->uapi); + drm_atomic_for_each_plane_damage(&iter, &clip) { + if (drm_rect_intersect(&clip, &src)) +- clip_area_update(&damaged_area, &clip); ++ clip_area_update(&damaged_area, &clip, ++ &crtc_state->pipe_src); + } + + if (damaged_area.y1 == -1) +@@ -1768,7 +1777,7 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state, + + damaged_area.y1 += new_plane_state->uapi.dst.y1 - src.y1; + damaged_area.y2 += new_plane_state->uapi.dst.y1 - src.y1; +- clip_area_update(&pipe_clip, &damaged_area); ++ clip_area_update(&pipe_clip, &damaged_area, &crtc_state->pipe_src); + } + + /* +-- +2.37.3 + diff --git a/0004-mm-vmscan-fix-extreme-overreclaim-and-swap-floods.patch b/0004-mm-vmscan-fix-extreme-overreclaim-and-swap-floods.patch new file mode 100644 index 000000000000..099d90e419cb --- /dev/null +++ b/0004-mm-vmscan-fix-extreme-overreclaim-and-swap-floods.patch @@ -0,0 +1,131 @@ +From 157e5550caea8a8389e57c68de443a1babd015c3 Mon Sep 17 00:00:00 2001 +From: Johannes Weiner <hannes@cmpxchg.org> +Date: Tue, 2 Aug 2022 12:28:11 -0400 +Subject: [PATCH 4/6] mm: vmscan: fix extreme overreclaim and swap floods + +During proactive reclaim, we sometimes observe severe overreclaim, +with several thousand times more pages reclaimed than requested. + +This trace was obtained from shrink_lruvec() during such an instance: + + prio:0 anon_cost:1141521 file_cost:7767 + nr_reclaimed:4387406 nr_to_reclaim:1047 (or_factor:4190) + nr=[7161123 345 578 1111] + +While he reclaimer requested 4M, vmscan reclaimed close to 16G, most +of it by swapping. These requests take over a minute, during which the +write() to memory.reclaim is unkillably stuck inside the kernel. + +Digging into the source, this is caused by the proportional reclaim +bailout logic. This code tries to resolve a fundamental conflict: to +reclaim roughly what was requested, while also aging all LRUs fairly +and in accordance to their size, swappiness, refault rates etc. The +way it attempts fairness is that once the reclaim goal has been +reached, it stops scanning the LRUs with the smaller remaining scan +targets, and adjusts the remainder of the bigger LRUs according to how +much of the smaller LRUs was scanned. It then finishes scanning that +remainder regardless of the reclaim goal. + +This works fine if priority levels are low and the LRU lists are +comparable in size. However, in this instance, the cgroup that is +targeted by proactive reclaim has almost no files left - they've +already been squeezed out by proactive reclaim earlier - and the +remaining anon pages are hot. Anon rotations cause the priority level +to drop to 0, which results in reclaim targeting all of anon (a lot) +and all of file (almost nothing). By the time reclaim decides to bail, +it has scanned most or all of the file target, and therefor must also +scan most or all of the enormous anon target. This target is thousands +of times larger than the reclaim goal, thus causing the overreclaim. + +The bailout code hasn't changed in years, why is this failing now? +The most likely explanations are two other recent changes in anon +reclaim: + +1. Before the series starting with commit 5df741963d52 ("mm: fix LRU + balancing effect of new transparent huge pages"), the VM was + overall relatively reluctant to swap at all, even if swap was + configured. This means the LRU balancing code didn't come into play + as often as it does now, and mostly in high pressure situations + where pronounced swap activity wouldn't be as surprising. + +2. For historic reasons, shrink_lruvec() loops on the scan targets of + all LRU lists except the active anon one, meaning it would bail if + the only remaining pages to scan were active anon - even if there + were a lot of them. + + Before the series starting with commit ccc5dc67340c ("mm/vmscan: + make active/inactive ratio as 1:1 for anon lru"), most anon pages + would live on the active LRU; the inactive one would contain only a + handful of preselected reclaim candidates. After the series, anon + gets aged similarly to file, and the inactive list is the default + for new anon pages as well, making it often the much bigger list. + + As a result, the VM is now more likely to actually finish large + anon targets than before. + +Change the code such that only one SWAP_CLUSTER_MAX-sized nudge toward +the larger LRU lists is made before bailing out on a met reclaim goal. + +This fixes the extreme overreclaim problem. + +Fairness is more subtle and harder to evaluate. No obvious misbehavior +was observed on the test workload, in any case. Conceptually, fairness +should primarily be a cumulative effect from regular, lower priority +scans. Once the VM is in trouble and needs to escalate scan targets to +make forward progress, fairness needs to take a backseat. This is also +acknowledged by the myriad exceptions in get_scan_count(). This patch +makes fairness decrease gradually, as it keeps fairness work static +over increasing priority levels with growing scan targets. This should +make more sense - although we may have to re-visit the exact values. + +Signed-off-by: Johannes Weiner <hannes@cmpxchg.org> +--- + mm/vmscan.c | 10 ++++------ + 1 file changed, 4 insertions(+), 6 deletions(-) + +diff --git a/mm/vmscan.c b/mm/vmscan.c +index f7d9a683e3a7..1cc0c6666787 100644 +--- a/mm/vmscan.c ++++ b/mm/vmscan.c +@@ -2897,8 +2897,8 @@ static void shrink_lruvec(struct lruvec *lruvec, struct scan_control *sc) + enum lru_list lru; + unsigned long nr_reclaimed = 0; + unsigned long nr_to_reclaim = sc->nr_to_reclaim; ++ bool proportional_reclaim; + struct blk_plug plug; +- bool scan_adjusted; + + get_scan_count(lruvec, sc, nr); + +@@ -2916,8 +2916,8 @@ static void shrink_lruvec(struct lruvec *lruvec, struct scan_control *sc) + * abort proportional reclaim if either the file or anon lru has already + * dropped to zero at the first pass. + */ +- scan_adjusted = (!cgroup_reclaim(sc) && !current_is_kswapd() && +- sc->priority == DEF_PRIORITY); ++ proportional_reclaim = (!cgroup_reclaim(sc) && !current_is_kswapd() && ++ sc->priority == DEF_PRIORITY); + + blk_start_plug(&plug); + while (nr[LRU_INACTIVE_ANON] || nr[LRU_ACTIVE_FILE] || +@@ -2937,7 +2937,7 @@ static void shrink_lruvec(struct lruvec *lruvec, struct scan_control *sc) + + cond_resched(); + +- if (nr_reclaimed < nr_to_reclaim || scan_adjusted) ++ if (nr_reclaimed < nr_to_reclaim || proportional_reclaim) + continue; + + /* +@@ -2988,8 +2988,6 @@ static void shrink_lruvec(struct lruvec *lruvec, struct scan_control *sc) + nr_scanned = targets[lru] - nr[lru]; + nr[lru] = targets[lru] * (100 - percentage) / 100; + nr[lru] -= min(nr[lru], nr_scanned); +- +- scan_adjusted = true; + } + blk_finish_plug(&plug); + sc->nr_reclaimed += nr_reclaimed; +-- +2.37.3 + diff --git a/0005-soundwire-intel-use-pm_runtime_resume-on-component-p.patch b/0005-soundwire-intel-use-pm_runtime_resume-on-component-p.patch new file mode 100644 index 000000000000..260ead1edb61 --- /dev/null +++ b/0005-soundwire-intel-use-pm_runtime_resume-on-component-p.patch @@ -0,0 +1,82 @@ +From 82b1098e107303aefec21455a84c0e8120ea42e3 Mon Sep 17 00:00:00 2001 +From: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> +Date: Tue, 21 Jun 2022 17:56:40 -0500 +Subject: [PATCH 5/6] soundwire: intel: use pm_runtime_resume() on component + probe +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +During the card registration, transactions on the SoundWire bus can be +initiated. If the ALSA card is registered after the bus suspends, +timeouts can be seen while reading/writing codec registers. This is +extremely easy to reproduce in driver bind/unbind tests. + +In an initial experiment, the ASoC soc-component.c code was modified +to initiate a pm_runtime resume on a component probe. The results +showed this was too invasive. Instead this patch suggests resuming the +SoundWire component only. + +Because of the parent-child hierarchy enforced by the pm_runtime +framework, it can be argued that the codec component probe should be +enough to resume all necessary devices, and indeed the same resume +will be applied to SoundWire codecs used on Intel platforms. + +Calling pm_runtime_resume() on both the Intel and codec sides has the +benefit of resuming the bus without assuming any order during the card +registration. The first component on a dailink to be probed will +resume the bus. In addition, if a codec driver did not implement this +transition, the Intel component would still resume the bus and avoid +timeouts on card registration. + +BugLink: https://github.com/thesofproject/linux/issues/3651 +Reviewed-by: Rander Wang <rander.wang@intel.com> +Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> +Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> +Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> +Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> +Link: https://lore.kernel.org/r/20220621225641.221170-4-pierre-louis.bossart@linux.intel.com +Signed-off-by: Vinod Koul <vkoul@kernel.org> +--- + drivers/soundwire/intel.c | 18 ++++++++++++++++++ + 1 file changed, 18 insertions(+) + +diff --git a/drivers/soundwire/intel.c b/drivers/soundwire/intel.c +index 505c5ef061e3..95ce292994cc 100644 +--- a/drivers/soundwire/intel.c ++++ b/drivers/soundwire/intel.c +@@ -1043,6 +1043,23 @@ static int intel_trigger(struct snd_pcm_substream *substream, int cmd, struct sn + return ret; + } + ++static int intel_component_probe(struct snd_soc_component *component) ++{ ++ int ret; ++ ++ /* ++ * make sure the device is pm_runtime_active before initiating ++ * bus transactions during the card registration. ++ * We use pm_runtime_resume() here, without taking a reference ++ * and releasing it immediately. ++ */ ++ ret = pm_runtime_resume(component->dev); ++ if (ret < 0 && ret != -EACCES) ++ return ret; ++ ++ return 0; ++} ++ + static int intel_component_dais_suspend(struct snd_soc_component *component) + { + struct snd_soc_dai *dai; +@@ -1098,6 +1115,7 @@ static const struct snd_soc_dai_ops intel_pcm_dai_ops = { + + static const struct snd_soc_component_driver dai_component = { + .name = "soundwire", ++ .probe = intel_component_probe, + .suspend = intel_component_dais_suspend + }; + +-- +2.37.3 + @@ -3,11 +3,11 @@ pkgbase=linux-rc pkgrel=1 -_srcname=linux-5.18 -_major=5.18 +_srcname=linux-5.19 +_major=5.19 ### on initial release this is null otherwise it is the current stable subversion ### ie 1,2,3 corresponding $_major.1, $_major.3 etc -_minor=12 +_minor=7 _minorc=$((_minor+1)) ### on initial release this is just $_major [[ -z $_minor ]] && _fullver=$_major || _fullver=$_major.$_minor @@ -30,7 +30,10 @@ source=( https://www.kernel.org/pub/linux/kernel/v5.x/linux-$_fullver.tar.{xz,sign} config # the main kernel config file 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch - 0002-HID-apple-Properly-handle-function-keys-on-Keychron-.patch + 0002-drm-i915-psr-Use-full-update-In-case-of-area-calcula.patch + 0003-drm-i915-Ensure-damage-clip-area-is-within-pipe-area.patch + 0004-mm-vmscan-fix-extreme-overreclaim-and-swap-floods.patch + 0005-soundwire-intel-use-pm_runtime_resume-on-component-p.patch ) validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds @@ -38,13 +41,16 @@ validpgpkeys=( 'A2FF3A36AAA56654109064AB19802F8B0D70FC30' # Jan Alexander Steffens (heftig) 'C7E7849466FE2358343588377258734B41C31549' # David Runge <dvzrv@archlinux.org> ) -b2sums=('cc22236a1dca4a41b2ad4be072555b3618d308e12d13badb541346ad37aa3e880d45cadb1169bdc475003479900fe046a7bd5e5b5fd6f326418d505d0a74acbc' +b2sums=('755416aee62b7e737ad29a3f552ba462dd4e6f1b8cc6b61c4961ea2ff8a06b68eb69f9d671e8146cfcedc7edff2e184c71bd2bd00e214e4f374b3252719c2975' 'SKIP' - '000df730f6651173292a43745edd615b501d959f4d963a11df600a6bcb378db0750023c9025c8d63091658d7540693cc0e486f3bae3b49610135ca34f0b8edd4' + '9fd934cf511ded0800a387beda79e1d4c7523926c69cae0f4eee62cfbc0fab4b97e666c9a0b79130aff9e17dfc4c222a04a6037776182954b1edc0af9b8517c6' 'SKIP' - 'aeffb500a9cf0f1265fc62fa9260bdddac8ba47bf01e3b2732d961ea7d58ae4886563bc7076fe920d4fca3ad19588bfe8f9368e77fdc61336c894488bab41638' - 'e226fb1f498a739a9a65cf8bb542978b0573ba7630e82516d2393dcdcdd42910adc7107d6174eed349a513643092a737acf552c19d27f896f4f771de3d1e00f1' - '35e8ef4806040797f2844d076c92728ad55adb0c29e906399afe6155e2657a2784ffea61e49ef6a9910ed392b621663a180fa0d7750e92a01afd5446bce46a5a') + '28b82cdb5faac7f93368bbd5c4a9106f729dd39624abbd7a0acc4909599175af0a987c91bb6c0e348ae1ab2180f5e85c3a04ce6ba03e03b0dee45fe3b81d3847' + '601a38549c139dee5511075133fca55fd6d11821df0d6c94807e9182fd8b09572d59cdf9ae14ff79cd38c8db15feb1d80373cfed938627fac1f05ac7169c9b22' + '0a2fb7535f65e402b1b24e5e86f48dddd004d2ca2feff4a6066e221e55e34d6343eb1e515b62ee03c2ccb19692921593ae5a17ff63fba46c6df6b74bfe37897c' + 'e53054446bb25fea9ba1de582c57da637112219c308255dd4003c040b61bb8d26fcd5bd61515884df91f81611a762edf2fe83493567354c164cf55afbc6e4fa8' + 'b6a3342e9993383e714eeabeb1e2ab6e9f9062af4d0c8551522c3554cc84b93ed3bf4ce22e8e74e1e73f3fd668c334ca2e3e358bd6e75c9d75eb487983ee8bd5' + '5efabcfc95f308af6f22015e6a15b170393773c214711460aaf9d455c4ea74ad258fb3d392f8c0383fb7b10f97c1f237b332544345ff98ba69c4c176728bea60') export KBUILD_BUILD_HOST=archlinux @@ -1,15 +1,15 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 5.18.6-arch1 Kernel Configuration +# Linux/x86 5.19.6-arch1 Kernel Configuration # -CONFIG_CC_VERSION_TEXT="gcc (GCC) 12.1.0" +CONFIG_CC_VERSION_TEXT="gcc (GCC) 12.2.0" CONFIG_CC_IS_GCC=y -CONFIG_GCC_VERSION=120100 +CONFIG_GCC_VERSION=120200 CONFIG_CLANG_VERSION=0 CONFIG_AS_IS_GNU=y -CONFIG_AS_VERSION=23800 +CONFIG_AS_VERSION=23900 CONFIG_LD_IS_BFD=y -CONFIG_LD_VERSION=23800 +CONFIG_LD_VERSION=23900 CONFIG_LLD_VERSION=0 CONFIG_CC_CAN_LINK=y CONFIG_CC_CAN_LINK_STATIC=y @@ -48,9 +48,9 @@ CONFIG_HAVE_KERNEL_ZSTD=y CONFIG_KERNEL_ZSTD=y CONFIG_DEFAULT_INIT="" CONFIG_DEFAULT_HOSTNAME="archlinux" -CONFIG_SWAP=y CONFIG_SYSVIPC=y CONFIG_SYSVIPC_SYSCTL=y +CONFIG_SYSVIPC_COMPAT=y CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y CONFIG_WATCH_QUEUE=y @@ -101,8 +101,10 @@ CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y CONFIG_TICK_ONESHOT=y CONFIG_NO_HZ_COMMON=y # CONFIG_HZ_PERIODIC is not set -CONFIG_NO_HZ_IDLE=y -# CONFIG_NO_HZ_FULL is not set +# CONFIG_NO_HZ_IDLE is not set +CONFIG_NO_HZ_FULL=y +CONFIG_CONTEXT_TRACKING=y +# CONFIG_CONTEXT_TRACKING_FORCE is not set CONFIG_NO_HZ=y CONFIG_HIGH_RES_TIMERS=y CONFIG_CLOCKSOURCE_WATCHDOG_MAX_SKEW_US=100 @@ -138,8 +140,8 @@ CONFIG_SCHED_CORE=y # # CPU/Task time and stats accounting # -CONFIG_TICK_CPU_ACCOUNTING=y -# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +CONFIG_VIRT_CPU_ACCOUNTING=y +CONFIG_VIRT_CPU_ACCOUNTING_GEN=y CONFIG_IRQ_TIME_ACCOUNTING=y CONFIG_HAVE_SCHED_AVG_IRQ=y CONFIG_BSD_PROCESS_ACCT=y @@ -163,8 +165,11 @@ CONFIG_RCU_EXPERT=y CONFIG_SRCU=y CONFIG_TREE_SRCU=y CONFIG_TASKS_RCU_GENERIC=y +# CONFIG_FORCE_TASKS_RCU is not set CONFIG_TASKS_RCU=y +# CONFIG_FORCE_TASKS_RUDE_RCU is not set CONFIG_TASKS_RUDE_RCU=y +# CONFIG_FORCE_TASKS_TRACE_RCU is not set CONFIG_TASKS_TRACE_RCU=y CONFIG_RCU_STALL_COMMON=y CONFIG_RCU_NEED_SEGCBLIST=y @@ -172,7 +177,8 @@ CONFIG_RCU_FANOUT=64 CONFIG_RCU_FANOUT_LEAF=16 CONFIG_RCU_BOOST=y CONFIG_RCU_BOOST_DELAY=500 -# CONFIG_RCU_NOCB_CPU is not set +# CONFIG_RCU_EXP_KTHREAD is not set +CONFIG_RCU_NOCB_CPU=y # CONFIG_TASKS_TRACE_RCU_READ_MB is not set # end of RCU Subsystem @@ -249,6 +255,8 @@ CONFIG_RD_LZO=y CONFIG_RD_LZ4=y CONFIG_RD_ZSTD=y CONFIG_BOOT_CONFIG=y +# CONFIG_BOOT_CONFIG_EMBED is not set +CONFIG_INITRAMFS_PRESERVE_MTIME=y CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_LD_ORPHAN_WARN=y @@ -278,14 +286,11 @@ CONFIG_SHMEM=y CONFIG_AIO=y CONFIG_IO_URING=y CONFIG_ADVISE_SYSCALLS=y -CONFIG_HAVE_ARCH_USERFAULTFD_WP=y -CONFIG_HAVE_ARCH_USERFAULTFD_MINOR=y CONFIG_MEMBARRIER=y CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y CONFIG_KALLSYMS_BASE_RELATIVE=y -CONFIG_USERFAULTFD=y CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y CONFIG_KCMP=y CONFIG_RSEQ=y @@ -300,16 +305,6 @@ CONFIG_PERF_EVENTS=y # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # end of Kernel Performance Events And Counters -CONFIG_VM_EVENT_COUNTERS=y -CONFIG_SLUB_DEBUG=y -# CONFIG_COMPAT_BRK is not set -# CONFIG_SLAB is not set -CONFIG_SLUB=y -CONFIG_SLAB_MERGE_DEFAULT=y -CONFIG_SLAB_FREELIST_RANDOM=y -CONFIG_SLAB_FREELIST_HARDENED=y -CONFIG_SHUFFLE_PAGE_ALLOCATOR=y -CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SYSTEM_DATA_VERIFICATION=y CONFIG_PROFILING=y CONFIG_TRACEPOINTS=y @@ -353,9 +348,6 @@ CONFIG_X86_FEATURE_NAMES=y CONFIG_X86_X2APIC=y CONFIG_X86_MPPARSE=y # CONFIG_GOLDFISH is not set -CONFIG_RETPOLINE=y -CONFIG_CC_HAS_SLS=y -CONFIG_SLS=y CONFIG_X86_CPU_RESCTRL=y # CONFIG_X86_EXTENDED_PLATFORM is not set CONFIG_X86_INTEL_LPSS=y @@ -389,6 +381,7 @@ CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT_CLOCK=y CONFIG_JAILHOUSE_GUEST=y CONFIG_ACRN_GUEST=y +CONFIG_INTEL_TDX_GUEST=y # CONFIG_MK8 is not set # CONFIG_MPSC is not set # CONFIG_MCORE2 is not set @@ -412,6 +405,7 @@ CONFIG_HPET_TIMER=y CONFIG_HPET_EMULATE_RTC=y CONFIG_DMI=y # CONFIG_GART_IOMMU is not set +CONFIG_BOOT_VESA_SUPPORT=y # CONFIG_MAXSMP is not set CONFIG_NR_CPUS_RANGE_BEGIN=2 CONFIG_NR_CPUS_RANGE_END=512 @@ -439,6 +433,7 @@ CONFIG_PERF_EVENTS_INTEL_RAPL=m CONFIG_PERF_EVENTS_INTEL_CSTATE=m CONFIG_PERF_EVENTS_AMD_POWER=m CONFIG_PERF_EVENTS_AMD_UNCORE=m +CONFIG_PERF_EVENTS_AMD_BRS=y # end of Performance monitoring CONFIG_X86_16BIT=y @@ -448,7 +443,7 @@ CONFIG_X86_IOPL_IOPERM=y CONFIG_MICROCODE=y CONFIG_MICROCODE_INTEL=y CONFIG_MICROCODE_AMD=y -# CONFIG_MICROCODE_OLD_INTERFACE is not set +# CONFIG_MICROCODE_LATE_LOADING is not set CONFIG_X86_MSR=y CONFIG_X86_CPUID=y CONFIG_X86_5LEVEL=y @@ -478,7 +473,6 @@ CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=0 CONFIG_X86_PAT=y CONFIG_ARCH_USES_PG_UNCACHED=y CONFIG_ARCH_RANDOM=y -CONFIG_X86_SMAP=y CONFIG_X86_UMIP=y CONFIG_CC_HAS_IBT=y CONFIG_X86_KERNEL_IBT=y @@ -516,7 +510,6 @@ CONFIG_HOTPLUG_CPU=y # CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set # CONFIG_DEBUG_HOTPLUG_CPU0 is not set # CONFIG_COMPAT_VDSO is not set -# CONFIG_LEGACY_VSYSCALL_EMULATE is not set CONFIG_LEGACY_VSYSCALL_XONLY=y # CONFIG_LEGACY_VSYSCALL_NONE is not set # CONFIG_CMDLINE_BOOL is not set @@ -526,6 +519,16 @@ CONFIG_HAVE_LIVEPATCH=y # CONFIG_LIVEPATCH is not set # end of Processor type and features +CONFIG_CC_HAS_SLS=y +CONFIG_CC_HAS_RETURN_THUNK=y +CONFIG_SPECULATION_MITIGATIONS=y +CONFIG_PAGE_TABLE_ISOLATION=y +CONFIG_RETPOLINE=y +CONFIG_RETHUNK=y +CONFIG_CPU_UNRET_ENTRY=y +CONFIG_CPU_IBPB_ENTRY=y +CONFIG_CPU_IBRS_ENTRY=y +CONFIG_SLS=y CONFIG_ARCH_HAS_ADD_PAGES=y CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y @@ -699,7 +702,6 @@ CONFIG_IA32_EMULATION=y CONFIG_COMPAT_32=y CONFIG_COMPAT=y CONFIG_COMPAT_FOR_U64_ALIGNMENT=y -CONFIG_SYSVIPC_COMPAT=y # end of Binary Emulations CONFIG_HAVE_KVM=y @@ -761,6 +763,7 @@ CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y CONFIG_HAVE_NMI=y CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_DMA_CONTIGUOUS=y CONFIG_GENERIC_SMP_IDLE_THREAD=y @@ -785,6 +788,7 @@ CONFIG_HAVE_ARCH_JUMP_LABEL=y CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y CONFIG_MMU_GATHER_TABLE_FREE=y CONFIG_MMU_GATHER_RCU_TABLE_FREE=y +CONFIG_MMU_GATHER_MERGE_VMAS=y CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y CONFIG_HAVE_CMPXCHG_LOCAL=y @@ -829,6 +833,11 @@ CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y CONFIG_PAGE_SIZE_LESS_THAN_64KB=y CONFIG_PAGE_SIZE_LESS_THAN_256KB=y +CONFIG_HAVE_OBJTOOL=y +CONFIG_HAVE_JUMP_LABEL_HACK=y +CONFIG_HAVE_NOINSTR_HACK=y +CONFIG_HAVE_NOINSTR_VALIDATION=y +CONFIG_HAVE_UACCESS_VALIDATION=y CONFIG_HAVE_STACK_VALIDATION=y CONFIG_HAVE_RELIABLE_STACKTRACE=y CONFIG_ISA_BUS_API=y @@ -871,7 +880,6 @@ CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y CONFIG_HAVE_GCC_PLUGINS=y CONFIG_GCC_PLUGINS=y # CONFIG_GCC_PLUGIN_LATENT_ENTROPY is not set -# CONFIG_GCC_PLUGIN_RANDSTRUCT is not set # end of General architecture-dependent options CONFIG_RT_MUTEXES=y @@ -881,6 +889,7 @@ CONFIG_MODULES=y CONFIG_MODULE_FORCE_LOAD=y CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_MODULE_UNLOAD_TAINT_TRACKING=y # CONFIG_MODVERSIONS is not set CONFIG_MODULE_SRCVERSION_ALL=y CONFIG_MODULE_SIG=y @@ -999,6 +1008,40 @@ CONFIG_COREDUMP=y # # Memory Management options # +CONFIG_ZPOOL=y +CONFIG_SWAP=y +CONFIG_ZSWAP=y +CONFIG_ZSWAP_DEFAULT_ON=y +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set +CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4=y +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set +# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD is not set +CONFIG_ZSWAP_COMPRESSOR_DEFAULT="lz4" +# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set +CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD=y +# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set +CONFIG_ZSWAP_ZPOOL_DEFAULT="z3fold" +CONFIG_ZBUD=y +CONFIG_Z3FOLD=y +CONFIG_ZSMALLOC=y +# CONFIG_ZSMALLOC_STAT is not set + +# +# SLAB allocator options +# +# CONFIG_SLAB is not set +CONFIG_SLUB=y +CONFIG_SLAB_MERGE_DEFAULT=y +CONFIG_SLAB_FREELIST_RANDOM=y +CONFIG_SLAB_FREELIST_HARDENED=y +# CONFIG_SLUB_STATS is not set +CONFIG_SLUB_CPU_PARTIAL=y +# end of SLAB allocator options + +CONFIG_SHUFFLE_PAGE_ALLOCATOR=y +# CONFIG_COMPAT_BRK is not set CONFIG_SPARSEMEM=y CONFIG_SPARSEMEM_EXTREME=y CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y @@ -1009,9 +1052,9 @@ CONFIG_MEMORY_ISOLATION=y CONFIG_EXCLUSIVE_SYSTEM_RAM=y CONFIG_HAVE_BOOTMEM_INFO_NODE=y CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y CONFIG_MEMORY_HOTPLUG=y CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y -CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y CONFIG_MEMORY_HOTREMOVE=y CONFIG_MHP_MEMMAP_ON_MEMORY=y CONFIG_SPLIT_PTLOCK_CPUS=4 @@ -1033,12 +1076,13 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y CONFIG_MEMORY_FAILURE=y CONFIG_HWPOISON_INJECT=m +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ARCH_WANTS_THP_SWAP=y CONFIG_TRANSPARENT_HUGEPAGE=y CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y # CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set -CONFIG_ARCH_WANT_GENERAL_HUGETLB=y -CONFIG_ARCH_WANTS_THP_SWAP=y CONFIG_THP_SWAP=y +CONFIG_READ_ONLY_THP_FOR_FS=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y CONFIG_USE_PERCPU_NUMA_NODE_ID=y @@ -1050,31 +1094,13 @@ CONFIG_CMA_DEBUGFS=y CONFIG_CMA_SYSFS=y CONFIG_CMA_AREAS=7 CONFIG_MEM_SOFT_DIRTY=y -CONFIG_ZSWAP=y -# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set -# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO is not set -# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set -CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4=y -# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set -# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD is not set -CONFIG_ZSWAP_COMPRESSOR_DEFAULT="lz4" -# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set -CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD=y -# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set -CONFIG_ZSWAP_ZPOOL_DEFAULT="z3fold" -CONFIG_ZSWAP_DEFAULT_ON=y -CONFIG_ZPOOL=y -CONFIG_ZBUD=y -CONFIG_Z3FOLD=y -CONFIG_ZSMALLOC=y -# CONFIG_ZSMALLOC_STAT is not set CONFIG_GENERIC_EARLY_IOREMAP=y # CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set CONFIG_PAGE_IDLE_FLAG=y CONFIG_IDLE_PAGE_TRACKING=y CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y -CONFIG_ARCH_HAS_FILTER_PGPROT=y +CONFIG_ARCH_HAS_VM_GET_PAGE_PROT=y CONFIG_ARCH_HAS_PTE_DEVMAP=y CONFIG_ZONE_DMA=y CONFIG_ZONE_DMA32=y @@ -1084,13 +1110,18 @@ CONFIG_DEVICE_PRIVATE=y CONFIG_VMAP_PFN=y CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y CONFIG_ARCH_HAS_PKEYS=y +CONFIG_VM_EVENT_COUNTERS=y # CONFIG_PERCPU_STATS is not set # CONFIG_GUP_TEST is not set -CONFIG_READ_ONLY_THP_FOR_FS=y CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_MAPPING_DIRTY_HELPERS=y CONFIG_SECRETMEM=y CONFIG_ANON_VMA_NAME=y +CONFIG_USERFAULTFD=y +CONFIG_HAVE_ARCH_USERFAULTFD_WP=y +CONFIG_HAVE_ARCH_USERFAULTFD_MINOR=y +CONFIG_PTE_MARKER=y +CONFIG_PTE_MARKER_UFFD_WP=y # # Data Access Monitoring @@ -1888,6 +1919,8 @@ CONFIG_CAN_C_CAN_PCI=m CONFIG_CAN_CC770=m # CONFIG_CAN_CC770_ISA is not set CONFIG_CAN_CC770_PLATFORM=m +CONFIG_CAN_CTUCANFD=m +CONFIG_CAN_CTUCANFD_PCI=m CONFIG_CAN_IFI_CANFD=m CONFIG_CAN_M_CAN=m CONFIG_CAN_M_CAN_PCI=m @@ -2207,6 +2240,7 @@ CONFIG_CXL_ACPI=m CONFIG_CXL_PMEM=m CONFIG_CXL_MEM=m CONFIG_CXL_PORT=m +CONFIG_CXL_SUSPEND=y CONFIG_PCCARD=m CONFIG_PCMCIA=m CONFIG_PCMCIA_LOAD_CIS=y @@ -2242,10 +2276,14 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y # CONFIG_FW_LOADER=y CONFIG_FW_LOADER_PAGED_BUF=y +CONFIG_FW_LOADER_SYSFS=y CONFIG_EXTRA_FIRMWARE="" # CONFIG_FW_LOADER_USER_HELPER is not set CONFIG_FW_LOADER_COMPRESS=y +CONFIG_FW_LOADER_COMPRESS_XZ=y +CONFIG_FW_LOADER_COMPRESS_ZSTD=y CONFIG_FW_CACHE=y +CONFIG_FW_UPLOAD=y # end of Firmware loader CONFIG_WANT_DEV_COREDUMP=y @@ -2280,6 +2318,7 @@ CONFIG_DMA_SHARED_BUFFER=y CONFIG_MHI_BUS=m # CONFIG_MHI_BUS_DEBUG is not set CONFIG_MHI_BUS_PCI_GENERIC=m +CONFIG_MHI_BUS_EP=m # end of Bus devices CONFIG_CONNECTOR=y @@ -2325,24 +2364,26 @@ CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=y CONFIG_EFI_RUNTIME_MAP=y # CONFIG_EFI_FAKE_MEMMAP is not set CONFIG_EFI_SOFT_RESERVE=y +CONFIG_EFI_DXE_MEM_ATTRIBUTES=y CONFIG_EFI_RUNTIME_WRAPPERS=y CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y CONFIG_EFI_BOOTLOADER_CONTROL=m CONFIG_EFI_CAPSULE_LOADER=m # CONFIG_EFI_TEST is not set +CONFIG_EFI_DEV_PATH_PARSER=y CONFIG_APPLE_PROPERTIES=y # CONFIG_RESET_ATTACK_MITIGATION is not set CONFIG_EFI_RCI2_TABLE=y # CONFIG_EFI_DISABLE_PCI_DMA is not set +CONFIG_EFI_EARLYCON=y +CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y +# CONFIG_EFI_DISABLE_RUNTIME is not set +CONFIG_EFI_COCO_SECRET=y +CONFIG_EFI_EMBEDDED_FIRMWARE=y # end of EFI (Extensible Firmware Interface) Support -CONFIG_EFI_EMBEDDED_FIRMWARE=y CONFIG_UEFI_CPER=y CONFIG_UEFI_CPER_X86=y -CONFIG_EFI_DEV_PATH_PARSER=y -CONFIG_EFI_EARLYCON=y -CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y -# CONFIG_EFI_DISABLE_RUNTIME is not set # # Tegra firmware driver @@ -2625,6 +2666,7 @@ CONFIG_ALTERA_STAPL=m CONFIG_INTEL_MEI=m CONFIG_INTEL_MEI_ME=m CONFIG_INTEL_MEI_TXE=m +CONFIG_INTEL_MEI_GSC=m CONFIG_INTEL_MEI_HDCP=m CONFIG_INTEL_MEI_PXP=m CONFIG_VMWARE_VMCI=m @@ -2728,16 +2770,6 @@ CONFIG_SCSI_MPT3SAS_MAX_SGE=128 CONFIG_SCSI_MPT2SAS=m CONFIG_SCSI_MPI3MR=m CONFIG_SCSI_SMARTPQI=m -CONFIG_SCSI_UFSHCD=m -CONFIG_SCSI_UFSHCD_PCI=m -# CONFIG_SCSI_UFS_DWC_TC_PCI is not set -CONFIG_SCSI_UFSHCD_PLATFORM=m -CONFIG_SCSI_UFS_CDNS_PLATFORM=m -# CONFIG_SCSI_UFS_DWC_TC_PLATFORM is not set -CONFIG_SCSI_UFS_BSG=y -CONFIG_SCSI_UFS_CRYPTO=y -CONFIG_SCSI_UFS_HPB=y -CONFIG_SCSI_UFS_HWMON=y CONFIG_SCSI_HPTIOP=m CONFIG_SCSI_BUSLOGIC=m CONFIG_SCSI_FLASHPOINT=y @@ -3036,9 +3068,6 @@ CONFIG_ATM_LANAI=m CONFIG_ATM_ENI=m # CONFIG_ATM_ENI_DEBUG is not set # CONFIG_ATM_ENI_TUNE_BURST is not set -CONFIG_ATM_FIRESTREAM=m -CONFIG_ATM_ZATM=m -# CONFIG_ATM_ZATM_DEBUG is not set CONFIG_ATM_NICSTAR=m # CONFIG_ATM_NICSTAR_USE_SUNI is not set # CONFIG_ATM_NICSTAR_USE_IDT77105 is not set @@ -3046,10 +3075,6 @@ CONFIG_ATM_IDT77252=m # CONFIG_ATM_IDT77252_DEBUG is not set # CONFIG_ATM_IDT77252_RCV_ALL is not set CONFIG_ATM_IDT77252_USE_SUNI=y -CONFIG_ATM_AMBASSADOR=m -# CONFIG_ATM_AMBASSADOR_DEBUG is not set -CONFIG_ATM_HORIZON=m -# CONFIG_ATM_HORIZON_DEBUG is not set CONFIG_ATM_IA=m # CONFIG_ATM_IA_DEBUG is not set CONFIG_ATM_FORE200E=m @@ -3203,7 +3228,6 @@ CONFIG_TULIP_MWI=y CONFIG_TULIP_MMIO=y CONFIG_TULIP_NAPI=y CONFIG_TULIP_NAPI_HW_MITIGATION=y -CONFIG_DE4X5=m CONFIG_WINBOND_840=m CONFIG_DM9102=m CONFIG_ULI526X=m @@ -3268,6 +3292,7 @@ CONFIG_SKGE=m CONFIG_SKGE_GENESIS=y CONFIG_SKY2=m # CONFIG_SKY2_DEBUG is not set +CONFIG_OCTEON_EP=m CONFIG_PRESTERA=m CONFIG_PRESTERA_PCI=m CONFIG_NET_VENDOR_MELLANOX=y @@ -3277,7 +3302,6 @@ CONFIG_MLX4_CORE=m CONFIG_MLX4_DEBUG=y CONFIG_MLX4_CORE_GEN2=y CONFIG_MLX5_CORE=m -CONFIG_MLX5_ACCEL=y CONFIG_MLX5_FPGA=y CONFIG_MLX5_CORE_EN=y CONFIG_MLX5_EN_ARFS=y @@ -3290,11 +3314,7 @@ CONFIG_MLX5_TC_CT=y CONFIG_MLX5_TC_SAMPLE=y CONFIG_MLX5_CORE_EN_DCB=y CONFIG_MLX5_CORE_IPOIB=y -CONFIG_MLX5_FPGA_IPSEC=y -CONFIG_MLX5_IPSEC=y CONFIG_MLX5_EN_IPSEC=y -CONFIG_MLX5_FPGA_TLS=y -CONFIG_MLX5_TLS=y CONFIG_MLX5_EN_TLS=y CONFIG_MLX5_SW_STEERING=y CONFIG_MLX5_SF=y @@ -3403,6 +3423,11 @@ CONFIG_SFC_SRIOV=y CONFIG_SFC_MCDI_LOGGING=y CONFIG_SFC_FALCON=m CONFIG_SFC_FALCON_MTD=y +CONFIG_SFC_SIENA=m +CONFIG_SFC_SIENA_MTD=y +CONFIG_SFC_SIENA_MCDI_MON=y +CONFIG_SFC_SIENA_SRIOV=y +CONFIG_SFC_SIENA_MCDI_LOGGING=y CONFIG_NET_VENDOR_SMSC=y CONFIG_PCMCIA_SMC91C92=m CONFIG_EPIC100=m @@ -3466,6 +3491,7 @@ CONFIG_SFP=m # CONFIG_AMD_PHY=m CONFIG_ADIN_PHY=m +CONFIG_ADIN1100_PHY=m CONFIG_AQUANTIA_PHY=m CONFIG_AX88796B_PHY=m CONFIG_BROADCOM_PHY=m @@ -3507,6 +3533,7 @@ CONFIG_DP83TC811_PHY=m CONFIG_DP83848_PHY=m CONFIG_DP83867_PHY=m CONFIG_DP83869_PHY=m +CONFIG_DP83TD510_PHY=m CONFIG_VITESSE_PHY=m CONFIG_XILINX_GMII2RGMII=m CONFIG_MICREL_KS8995MA=m @@ -3826,6 +3853,8 @@ CONFIG_WILC1000=m CONFIG_WILC1000_SDIO=m CONFIG_WILC1000_SPI=m # CONFIG_WILC1000_HW_OOB_INTR is not set +CONFIG_WLAN_VENDOR_PURELIFI=y +CONFIG_PLFXLC=m CONFIG_WLAN_VENDOR_RALINK=y CONFIG_RT2X00=m CONFIG_RT2400PCI=m @@ -3896,7 +3925,9 @@ CONFIG_RTW89=m CONFIG_RTW89_CORE=m CONFIG_RTW89_PCI=m CONFIG_RTW89_8852A=m +CONFIG_RTW89_8852C=m CONFIG_RTW89_8852AE=m +CONFIG_RTW89_8852CE=m CONFIG_RTW89_DEBUG=y CONFIG_RTW89_DEBUGMSG=y CONFIG_RTW89_DEBUGFS=y @@ -3906,6 +3937,8 @@ CONFIG_RSI_DEBUGFS=y CONFIG_RSI_SDIO=m CONFIG_RSI_USB=m CONFIG_RSI_COEX=y +CONFIG_WLAN_VENDOR_SILABS=y +CONFIG_WFX=m CONFIG_WLAN_VENDOR_ST=y CONFIG_CW1200=m CONFIG_CW1200_WLAN_SDIO=m @@ -3935,7 +3968,6 @@ CONFIG_VIRT_WIFI=m CONFIG_IEEE802154_DRIVERS=m CONFIG_IEEE802154_FAKELB=m CONFIG_IEEE802154_AT86RF230=m -# CONFIG_IEEE802154_AT86RF230_DEBUGFS is not set CONFIG_IEEE802154_MRF24J40=m CONFIG_IEEE802154_CC2520=m CONFIG_IEEE802154_ATUSB=m @@ -3955,6 +3987,7 @@ CONFIG_MHI_WWAN_CTRL=m CONFIG_MHI_WWAN_MBIM=m CONFIG_RPMSG_WWAN_CTRL=m CONFIG_IOSM=m +CONFIG_MTK_T7XX=m # end of Wireless WAN CONFIG_XEN_NETDEV_FRONTEND=m @@ -4111,6 +4144,7 @@ CONFIG_JOYSTICK_PSXPAD_SPI_FF=y CONFIG_JOYSTICK_PXRC=m CONFIG_JOYSTICK_QWIIC=m CONFIG_JOYSTICK_FSIA6B=m +CONFIG_JOYSTICK_SENSEHAT=m CONFIG_INPUT_TABLET=y CONFIG_TABLET_USB_ACECAD=m CONFIG_TABLET_USB_AIPTEK=m @@ -4276,6 +4310,7 @@ CONFIG_INPUT_ADXL34X_SPI=m CONFIG_INPUT_IMS_PCU=m CONFIG_INPUT_IQS269A=m CONFIG_INPUT_IQS626A=m +CONFIG_INPUT_IQS7222=m CONFIG_INPUT_CMA3000=m CONFIG_INPUT_CMA3000_I2C=m CONFIG_INPUT_XEN_KBDDEV_FRONTEND=m @@ -4684,7 +4719,7 @@ CONFIG_PINMUX=y CONFIG_PINCONF=y CONFIG_GENERIC_PINCONF=y # CONFIG_DEBUG_PINCTRL is not set -CONFIG_PINCTRL_AMD=m +CONFIG_PINCTRL_AMD=y CONFIG_PINCTRL_DA9062=m CONFIG_PINCTRL_MCP23S08_I2C=m CONFIG_PINCTRL_MCP23S08_SPI=m @@ -5007,7 +5042,7 @@ CONFIG_SENSORS_DRIVETEMP=m CONFIG_SENSORS_DS620=m CONFIG_SENSORS_DS1621=m CONFIG_SENSORS_DELL_SMM=m -# CONFIG_I8K is not set +CONFIG_I8K=y CONFIG_SENSORS_DA9052_ADC=m CONFIG_SENSORS_DA9055=m CONFIG_SENSORS_I5K_AMB=m @@ -5085,7 +5120,9 @@ CONFIG_SENSORS_PC87360=m CONFIG_SENSORS_PC87427=m CONFIG_SENSORS_NTC_THERMISTOR=m CONFIG_SENSORS_NCT6683=m +CONFIG_SENSORS_NCT6775_CORE=m CONFIG_SENSORS_NCT6775=m +CONFIG_SENSORS_NCT6775_I2C=m CONFIG_SENSORS_NCT7802=m CONFIG_SENSORS_NCT7904=m CONFIG_SENSORS_NPCM7XX=m @@ -5136,6 +5173,7 @@ CONFIG_SENSORS_TPS40422=m CONFIG_SENSORS_TPS53679=m CONFIG_SENSORS_UCD9000=m CONFIG_SENSORS_UCD9200=m +CONFIG_SENSORS_XDPE152=m CONFIG_SENSORS_XDPE122=m CONFIG_SENSORS_XDPE122_REGULATOR=y CONFIG_SENSORS_ZL6100=m @@ -5563,6 +5601,7 @@ CONFIG_REGULATOR_RT4801=m CONFIG_REGULATOR_RT4831=m CONFIG_REGULATOR_RT5033=m CONFIG_REGULATOR_RT5190A=m +CONFIG_REGULATOR_RT5759=m CONFIG_REGULATOR_RT6160=m CONFIG_REGULATOR_RT6245=m CONFIG_REGULATOR_RTQ2134=m @@ -5625,7 +5664,7 @@ CONFIG_IR_WINBOND_CIR=m CONFIG_RC_ATI_REMOTE=m CONFIG_RC_LOOPBACK=m CONFIG_RC_XBOX_DVD=m -CONFIG_CEC_CORE=y +CONFIG_CEC_CORE=m CONFIG_CEC_NOTIFIER=y CONFIG_CEC_PIN=y @@ -6459,14 +6498,17 @@ CONFIG_VGA_SWITCHEROO=y CONFIG_DRM=y CONFIG_DRM_MIPI_DBI=m CONFIG_DRM_MIPI_DSI=y -CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DEBUG_MM is not set # CONFIG_DRM_DEBUG_SELFTEST is not set -CONFIG_DRM_DP_HELPER=m CONFIG_DRM_KMS_HELPER=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_LOAD_EDID_FIRMWARE=y +CONFIG_DRM_DISPLAY_HELPER=m +CONFIG_DRM_DISPLAY_DP_HELPER=y +CONFIG_DRM_DISPLAY_HDCP_HELPER=y +CONFIG_DRM_DISPLAY_HDMI_HELPER=y +CONFIG_DRM_DP_AUX_CHARDEV=y CONFIG_DRM_DP_CEC=y CONFIG_DRM_TTM=m CONFIG_DRM_BUDDY=m @@ -6590,6 +6632,7 @@ CONFIG_DRM_VBOXVIDEO=m CONFIG_DRM_GUD=m CONFIG_DRM_SSD130X=m CONFIG_DRM_SSD130X_I2C=m +CONFIG_DRM_SSD130X_SPI=m CONFIG_DRM_HYPERV=m # CONFIG_DRM_LEGACY is not set CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y @@ -6603,7 +6646,6 @@ CONFIG_FB_CMDLINE=y CONFIG_FB_NOTIFY=y CONFIG_FB=y # CONFIG_FIRMWARE_EDID is not set -CONFIG_FB_BOOT_VESA_SUPPORT=y CONFIG_FB_CFB_FILLRECT=y CONFIG_FB_CFB_COPYAREA=y CONFIG_FB_CFB_IMAGEBLIT=y @@ -7113,7 +7155,7 @@ CONFIG_SND_SOC_SOF_HDA_LINK=y CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC=y CONFIG_SND_SOC_SOF_HDA_LINK_BASELINE=m CONFIG_SND_SOC_SOF_HDA=m -CONFIG_SND_SOC_SOF_HDA_PROBES=y +CONFIG_SND_SOC_SOF_HDA_PROBES=m CONFIG_SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE=m CONFIG_SND_SOC_SOF_INTEL_SOUNDWIRE=m CONFIG_SND_SOC_SOF_XTENSA=m @@ -7171,6 +7213,10 @@ CONFIG_SND_SOC_CS35L41_LIB=m CONFIG_SND_SOC_CS35L41=m CONFIG_SND_SOC_CS35L41_SPI=m CONFIG_SND_SOC_CS35L41_I2C=m +CONFIG_SND_SOC_CS35L45_TABLES=m +CONFIG_SND_SOC_CS35L45=m +CONFIG_SND_SOC_CS35L45_SPI=m +CONFIG_SND_SOC_CS35L45_I2C=m CONFIG_SND_SOC_CS42L42=m CONFIG_SND_SOC_CS42L51=m CONFIG_SND_SOC_CS42L51_I2C=m @@ -7216,6 +7262,7 @@ CONFIG_SND_SOC_MAX98373=m CONFIG_SND_SOC_MAX98373_I2C=m CONFIG_SND_SOC_MAX98373_SDW=m CONFIG_SND_SOC_MAX98390=m +CONFIG_SND_SOC_MAX98396=m CONFIG_SND_SOC_MAX9860=m CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m CONFIG_SND_SOC_PCM1681=m @@ -7334,6 +7381,8 @@ CONFIG_SND_SOC_WM8580=m CONFIG_SND_SOC_WM8711=m CONFIG_SND_SOC_WM8728=m CONFIG_SND_SOC_WM8731=m +CONFIG_SND_SOC_WM8731_I2C=m +CONFIG_SND_SOC_WM8731_SPI=m CONFIG_SND_SOC_WM8737=m CONFIG_SND_SOC_WM8741=m CONFIG_SND_SOC_WM8750=m @@ -7346,6 +7395,7 @@ CONFIG_SND_SOC_WM8804_I2C=m CONFIG_SND_SOC_WM8804_SPI=m CONFIG_SND_SOC_WM8903=m CONFIG_SND_SOC_WM8904=m +CONFIG_SND_SOC_WM8940=m CONFIG_SND_SOC_WM8960=m CONFIG_SND_SOC_WM8962=m CONFIG_SND_SOC_WM8974=m @@ -7457,6 +7507,7 @@ CONFIG_LOGIWHEELS_FF=y CONFIG_HID_MAGICMOUSE=m CONFIG_HID_MALTRON=m CONFIG_HID_MAYFLASH=m +CONFIG_HID_MEGAWORLD_FF=m CONFIG_HID_REDRAGON=m CONFIG_HID_MICROSOFT=m CONFIG_HID_MONTEREY=m @@ -7953,6 +8004,7 @@ CONFIG_TYPEC_WUSB3801=m # # USB Type-C Multiplexer/DeMultiplexer Switch support # +CONFIG_TYPEC_MUX_FSA4480=m CONFIG_TYPEC_MUX_PI3USB30532=m CONFIG_TYPEC_MUX_INTEL_PMC=m # end of USB Type-C Multiplexer/DeMultiplexer Switch support @@ -8001,6 +8053,16 @@ CONFIG_MMC_HSQ=m CONFIG_MMC_TOSHIBA_PCI=m CONFIG_MMC_MTK=m CONFIG_MMC_SDHCI_XENON=m +CONFIG_SCSI_UFSHCD=m +CONFIG_SCSI_UFS_BSG=y +CONFIG_SCSI_UFS_CRYPTO=y +CONFIG_SCSI_UFS_HPB=y +CONFIG_SCSI_UFS_HWMON=y +CONFIG_SCSI_UFSHCD_PCI=m +# CONFIG_SCSI_UFS_DWC_TC_PCI is not set +CONFIG_SCSI_UFSHCD_PLATFORM=m +CONFIG_SCSI_UFS_CDNS_PLATFORM=m +# CONFIG_SCSI_UFS_DWC_TC_PLATFORM is not set CONFIG_MEMSTICK=m # CONFIG_MEMSTICK_DEBUG is not set @@ -8085,6 +8147,11 @@ CONFIG_LEDS_RT8515=m CONFIG_LEDS_SGM3140=m # +# RGB LED drivers +# +CONFIG_LEDS_PWM_MULTICOLOR=m + +# # LED Triggers # CONFIG_LEDS_TRIGGERS=y @@ -8422,8 +8489,10 @@ CONFIG_VMGENID=y CONFIG_VBOXGUEST=m CONFIG_NITRO_ENCLAVES=m CONFIG_ACRN_HSM=m +CONFIG_EFI_SECRET=m +CONFIG_SEV_GUEST=m +CONFIG_VIRTIO_ANCHOR=y CONFIG_VIRTIO=y -CONFIG_ARCH_HAS_RESTRICTED_VIRTIO_MEMORY_ACCESS=y CONFIG_VIRTIO_PCI_LIB=m CONFIG_VIRTIO_PCI_LIB_LEGACY=m CONFIG_VIRTIO_MENU=y @@ -8500,6 +8569,9 @@ CONFIG_XEN_SYMS=y CONFIG_XEN_HAVE_VPMU=y CONFIG_XEN_FRONT_PGDIR_SHBUF=m CONFIG_XEN_UNPOPULATED_ALLOC=y +CONFIG_XEN_GRANT_DMA_OPS=y +CONFIG_XEN_VIRTIO=y +# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set # end of Xen driver support # CONFIG_GREYBUS is not set @@ -8602,10 +8674,6 @@ CONFIG_LTE_GDM724X=m CONFIG_FIREWIRE_SERIAL=m CONFIG_FWTTY_MAX_TOTAL_PORTS=64 CONFIG_FWTTY_MAX_CARD_PORTS=32 -CONFIG_UNISYSSPAR=y -CONFIG_UNISYS_VISORNIC=m -CONFIG_UNISYS_VISORINPUT=m -CONFIG_UNISYS_VISORHBA=m # CONFIG_FB_TFT is not set CONFIG_MOST_COMPONENTS=m CONFIG_MOST_NET=m @@ -8615,7 +8683,10 @@ CONFIG_KS7010=m CONFIG_PI433=m CONFIG_FIELDBUS_DEV=m CONFIG_QLGE=m -CONFIG_WFX=m + +# +# VME Device Drivers +# CONFIG_X86_PLATFORM_DEVICES=y CONFIG_ACPI_WMI=m CONFIG_WMI_BMOF=m @@ -8746,8 +8817,10 @@ CONFIG_INTEL_SCU_PCI=y CONFIG_INTEL_SCU_PLATFORM=m CONFIG_INTEL_SCU_IPC_UTIL=m CONFIG_SIEMENS_SIMATIC_IPC=m +CONFIG_WINMATE_FM07_KEYS=m CONFIG_PMC_ATOM=y CONFIG_CHROME_PLATFORMS=y +CONFIG_CHROMEOS_ACPI=m CONFIG_CHROMEOS_LAPTOP=m CONFIG_CHROMEOS_PSTORE=m CONFIG_CHROMEOS_TBMC=m @@ -8775,6 +8848,7 @@ CONFIG_MELLANOX_PLATFORM=y CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXREG_IO=m CONFIG_MLXREG_LC=m +CONFIG_NVSW_SN2201=m CONFIG_SURFACE_PLATFORMS=y CONFIG_SURFACE3_WMI=m CONFIG_SURFACE_3_POWER_OPREGION=m @@ -9003,6 +9077,7 @@ CONFIG_BMI088_ACCEL=m CONFIG_BMI088_ACCEL_SPI=m CONFIG_DA280=m CONFIG_DA311=m +CONFIG_DMARD06=m CONFIG_DMARD09=m CONFIG_DMARD10=m CONFIG_FXLS8962AF=m @@ -9118,6 +9193,7 @@ CONFIG_AD74413R=m # # Analog Front Ends # +CONFIG_IIO_RESCALE=m # end of Analog Front Ends # @@ -9216,6 +9292,7 @@ CONFIG_AD5791=m CONFIG_AD7293=m CONFIG_AD7303=m CONFIG_AD8801=m +CONFIG_DPOT_DAC=m CONFIG_DS4424=m CONFIG_LTC1660=m CONFIG_LTC2632=m @@ -9228,6 +9305,7 @@ CONFIG_TI_DAC082S085=m CONFIG_TI_DAC5571=m CONFIG_TI_DAC7311=m CONFIG_TI_DAC7612=m +CONFIG_VF610_DAC=m # end of Digital to analog converters # @@ -9365,6 +9443,7 @@ CONFIG_BH1780=m CONFIG_CM32181=m CONFIG_CM3232=m CONFIG_CM3323=m +CONFIG_CM3605=m CONFIG_CM36651=m CONFIG_IIO_CROS_EC_LIGHT_PROX=m CONFIG_GP2AP002=m @@ -9410,6 +9489,7 @@ CONFIG_ZOPT2201=m # # Magnetometer sensors # +CONFIG_AK8974=m CONFIG_AK8975=m CONFIG_AK09911=m CONFIG_BMC150_MAGN=m @@ -9433,6 +9513,7 @@ CONFIG_YAMAHA_YAS530=m # # Multiplexers # +CONFIG_IIO_MUX=m # end of Multiplexers # @@ -9709,13 +9790,7 @@ CONFIG_FPGA_DFL_AFU=m CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m CONFIG_FPGA_DFL_PCI=m CONFIG_TEE=m - -# -# TEE drivers -# CONFIG_AMDTEE=m -# end of TEE drivers - CONFIG_MULTIPLEXER=m # @@ -9727,7 +9802,6 @@ CONFIG_MUX_GPIO=m # end of Multiplexer drivers CONFIG_PM_OPP=y -CONFIG_UNISYS_VISORBUS=m CONFIG_SIOX=m CONFIG_SIOX_BUS_GPIO=m CONFIG_SLIMBUS=m @@ -9741,6 +9815,7 @@ CONFIG_MOST_USB_HDM=m CONFIG_MOST_CDEV=m CONFIG_MOST_SND=m # CONFIG_PECI is not set +CONFIG_HTE=y # end of Device Drivers # @@ -9860,6 +9935,7 @@ CONFIG_FSCACHE_STATS=y CONFIG_CACHEFILES=m # CONFIG_CACHEFILES_DEBUG is not set # CONFIG_CACHEFILES_ERROR_INJECTION is not set +CONFIG_CACHEFILES_ONDEMAND=y # end of Caches # @@ -9909,8 +9985,9 @@ CONFIG_TMPFS_XATTR=y CONFIG_TMPFS_INODE64=y CONFIG_HUGETLBFS=y CONFIG_HUGETLB_PAGE=y -CONFIG_HUGETLB_PAGE_FREE_VMEMMAP=y -CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON=y +CONFIG_ARCH_WANT_HUGETLB_PAGE_OPTIMIZE_VMEMMAP=y +CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP=y +# CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP_DEFAULT_ON is not set CONFIG_MEMFD_CREATE=y CONFIG_ARCH_HAS_GIGANTIC_PAGE=y CONFIG_CONFIGFS_FS=y @@ -10013,6 +10090,7 @@ CONFIG_EROFS_FS_POSIX_ACL=y CONFIG_EROFS_FS_SECURITY=y CONFIG_EROFS_FS_ZIP=y CONFIG_EROFS_FS_ZIP_LZMA=y +CONFIG_EROFS_FS_ONDEMAND=y CONFIG_VBOXSF_FS=m CONFIG_NETWORK_FILESYSTEMS=y CONFIG_NFS_FS=m @@ -10155,6 +10233,8 @@ CONFIG_KEYS=y CONFIG_KEYS_REQUEST_CACHE=y CONFIG_PERSISTENT_KEYRINGS=y CONFIG_TRUSTED_KEYS=m +CONFIG_TRUSTED_KEYS_TPM=y +CONFIG_TRUSTED_KEYS_TEE=y CONFIG_ENCRYPTED_KEYS=m # CONFIG_USER_DECRYPTED_DATA is not set CONFIG_KEY_DH_OPERATIONS=y @@ -10163,7 +10243,6 @@ CONFIG_SECURITY_DMESG_RESTRICT=y CONFIG_SECURITY=y CONFIG_SECURITYFS=y CONFIG_SECURITY_NETWORK=y -CONFIG_PAGE_TABLE_ISOLATION=y CONFIG_SECURITY_INFINIBAND=y CONFIG_SECURITY_NETWORK_XFRM=y CONFIG_SECURITY_PATH=y @@ -10243,6 +10322,10 @@ CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y # CONFIG_ZERO_CALL_USED_REGS is not set # end of Memory initialization + +CONFIG_RANDSTRUCT_NONE=y +# CONFIG_RANDSTRUCT_FULL is not set +# CONFIG_RANDSTRUCT_PERFORMANCE is not set # end of Kernel hardening options # end of Security options @@ -10348,8 +10431,7 @@ CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m CONFIG_CRYPTO_XXHASH=m CONFIG_CRYPTO_BLAKE2B=m -CONFIG_CRYPTO_BLAKE2S=m -CONFIG_CRYPTO_BLAKE2S_X86=m +CONFIG_CRYPTO_BLAKE2S_X86=y CONFIG_CRYPTO_CRCT10DIF=y CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m CONFIG_CRYPTO_CRC64_ROCKSOFT=y @@ -10368,6 +10450,7 @@ CONFIG_CRYPTO_SHA256=y CONFIG_CRYPTO_SHA512=y CONFIG_CRYPTO_SHA3=m CONFIG_CRYPTO_SM3=m +CONFIG_CRYPTO_SM3_GENERIC=m CONFIG_CRYPTO_SM3_AVX_X86_64=m CONFIG_CRYPTO_STREEBOG=m CONFIG_CRYPTO_WP512=m @@ -10401,6 +10484,7 @@ CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m CONFIG_CRYPTO_SERPENT_AVX_X86_64=m CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m CONFIG_CRYPTO_SM4=m +CONFIG_CRYPTO_SM4_GENERIC=m CONFIG_CRYPTO_SM4_AESNI_AVX_X86_64=m CONFIG_CRYPTO_SM4_AESNI_AVX2_X86_64=m CONFIG_CRYPTO_TWOFISH=m @@ -10474,6 +10558,7 @@ CONFIG_PKCS8_PRIVATE_KEY_PARSER=m CONFIG_PKCS7_MESSAGE_PARSER=y # CONFIG_PKCS7_TEST_KEY is not set CONFIG_SIGNED_PE_FILE_VERIFICATION=y +# CONFIG_FIPS_SIGNATURE_SELFTEST is not set # # Certificates for signature checking @@ -10489,6 +10574,7 @@ CONFIG_SYSTEM_BLACKLIST_KEYRING=y CONFIG_SYSTEM_BLACKLIST_HASH_LIST="" CONFIG_SYSTEM_REVOCATION_LIST=y CONFIG_SYSTEM_REVOCATION_KEYS="" +CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE=y # end of Certificates for signature checking CONFIG_BINARY_PRINTF=y @@ -10533,8 +10619,6 @@ CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m CONFIG_CRYPTO_LIB_POLY1305=m CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m CONFIG_CRYPTO_LIB_SHA256=y -CONFIG_CRYPTO_LIB_SM3=m -CONFIG_CRYPTO_LIB_SM4=m # end of Crypto library routines CONFIG_LIB_MEMNEQ=y @@ -10660,6 +10744,8 @@ CONFIG_MEMREGION=y CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y CONFIG_ARCH_HAS_COPY_MC=y CONFIG_ARCH_STACKWALK=y +CONFIG_STACKDEPOT=y +CONFIG_STACK_HASH_ORDER=20 CONFIG_SBITMAP=y CONFIG_PARMAN=m CONFIG_OBJAGG=m @@ -10713,7 +10799,7 @@ CONFIG_STRIP_ASM_SYMS=y # CONFIG_HEADERS_INSTALL is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set CONFIG_SECTION_MISMATCH_WARN_ONLY=y -CONFIG_STACK_VALIDATION=y +CONFIG_OBJTOOL=y # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set # end of Compile-time checks and compiler options @@ -10742,6 +10828,7 @@ CONFIG_HAVE_KCSAN_COMPILER=y # # CONFIG_NET_DEV_REFCNT_TRACKER is not set # CONFIG_NET_NS_REFCNT_TRACKER is not set +# CONFIG_DEBUG_NET is not set # end of Networking Debugging # @@ -10749,6 +10836,8 @@ CONFIG_HAVE_KCSAN_COMPILER=y # # CONFIG_PAGE_EXTENSION is not set # CONFIG_DEBUG_PAGEALLOC is not set +CONFIG_SLUB_DEBUG=y +# CONFIG_SLUB_DEBUG_ON is not set # CONFIG_PAGE_OWNER is not set # CONFIG_PAGE_TABLE_CHECK is not set CONFIG_PAGE_POISONING=y @@ -10760,8 +10849,6 @@ CONFIG_GENERIC_PTDUMP=y CONFIG_PTDUMP_CORE=y # CONFIG_PTDUMP_DEBUGFS is not set # CONFIG_DEBUG_OBJECTS is not set -# CONFIG_SLUB_DEBUG_ON is not set -# CONFIG_SLUB_STATS is not set CONFIG_HAVE_DEBUG_KMEMLEAK=y # CONFIG_DEBUG_KMEMLEAK is not set # CONFIG_DEBUG_STACK_USAGE is not set @@ -10799,16 +10886,13 @@ CONFIG_PANIC_TIMEOUT=0 CONFIG_LOCKUP_DETECTOR=y CONFIG_SOFTLOCKUP_DETECTOR=y # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 CONFIG_HARDLOCKUP_DETECTOR_PERF=y CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y CONFIG_HARDLOCKUP_DETECTOR=y # CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 CONFIG_DETECT_HUNG_TASK=y CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set -CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 # CONFIG_WQ_WATCHDOG is not set # CONFIG_TEST_LOCKUP is not set # end of Debug Oops, Lockups and Hangs @@ -10868,6 +10952,7 @@ CONFIG_DEBUG_LIST=y # CONFIG_RCU_TORTURE_TEST is not set # CONFIG_RCU_REF_SCALE_TEST is not set CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0 # CONFIG_RCU_TRACE is not set # CONFIG_RCU_EQS_DEBUG is not set # end of RCU Debugging @@ -10961,7 +11046,6 @@ CONFIG_IO_STRICT_DEVMEM=y # # x86 Debugging # -CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y CONFIG_EARLY_PRINTK_USB=y # CONFIG_X86_VERBOSE_BOOTUP is not set CONFIG_EARLY_PRINTK=y @@ -11041,7 +11125,7 @@ CONFIG_ASYNC_RAID6_TEST=m # CONFIG_TEST_FPU is not set # CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set CONFIG_ARCH_USE_MEMTEST=y -# CONFIG_MEMTEST is not set +CONFIG_MEMTEST=y # CONFIG_HYPERV_TESTING is not set # end of Kernel Testing and Coverage # end of Kernel hacking |