From f0097cddb432aba49445e0c68f98c1cf66789f43 Mon Sep 17 00:00:00 2001 From: chn Date: Tue, 1 Oct 2024 09:31:53 +0800 Subject: [PATCH] devices.pc: use cachyos kernel --- devices/pc/default.nix | 1 + .../kernel/hibernate-progress-6.11.patch | 128 ++++++++++++++++++ 2 files changed, 129 insertions(+) create mode 100644 modules/system/kernel/hibernate-progress-6.11.patch diff --git a/devices/pc/default.nix b/devices/pc/default.nix index 0369268a..2c885fa7 100644 --- a/devices/pc/default.nix +++ b/devices/pc/default.nix @@ -48,6 +48,7 @@ inputs: { march = "znver4"; cuda = { enable = true; capabilities = [ "8.9" ]; forwardCompat = false; }; }; kernel = { + variant = "cachyos"; patches = [ "hibernate-progress" ]; modules.modprobeConfig = [ "options iwlwifi power_save=0" "options iwlmvm power_scheme=1" "options iwlwifi uapsd_disable=1" ]; diff --git a/modules/system/kernel/hibernate-progress-6.11.patch b/modules/system/kernel/hibernate-progress-6.11.patch new file mode 100644 index 00000000..1c77688a --- /dev/null +++ b/modules/system/kernel/hibernate-progress-6.11.patch @@ -0,0 +1,128 @@ +diff --git a/kernel/power/swap.c b/kernel/power/swap.c +index 5bc04bfe2db1..6e7b17b97de7 100644 +--- a/kernel/power/swap.c ++++ b/kernel/power/swap.c +@@ -563,7 +563,7 @@ static int save_image(struct swap_map_handle *handle, + + hib_init_batch(&hb); + +- pr_info("Saving image data pages (%u pages)...\n", ++ pr_err("Saving image data pages (%u pages)...\n", + nr_to_write); + m = nr_to_write / 10; + if (!m) +@@ -578,7 +578,7 @@ static int save_image(struct swap_map_handle *handle, + if (ret) + break; + if (!(nr_pages % m)) +- pr_info("Image saving progress: %3d%%\n", ++ pr_err("Image saving progress: %3d%%\n", + nr_pages / m * 10); + nr_pages++; + } +@@ -588,7 +588,7 @@ static int save_image(struct swap_map_handle *handle, + if (!ret) + ret = err2; + if (!ret) +- pr_info("Image saving done\n"); ++ pr_err("Image saving done\n"); + swsusp_show_speed(start, stop, nr_to_write, "Wrote"); + return ret; + } +@@ -795,8 +795,8 @@ static int save_compressed_image(struct swap_map_handle *handle, + */ + handle->reqd_free_pages = reqd_free_pages(); + +- pr_info("Using %u thread(s) for %s compression\n", nr_threads, hib_comp_algo); +- pr_info("Compressing and saving image data (%u pages)...\n", ++ pr_err("Using %u thread(s) for %s compression\n", nr_threads, hib_comp_algo); ++ pr_err("Compressing and saving image data (%u pages)...\n", + nr_to_write); + m = nr_to_write / 10; + if (!m) +@@ -817,7 +817,7 @@ static int save_compressed_image(struct swap_map_handle *handle, + data_of(*snapshot), PAGE_SIZE); + + if (!(nr_pages % m)) +- pr_info("Image saving progress: %3d%%\n", ++ pr_err("Image saving progress: %3d%%\n", + nr_pages / m * 10); + nr_pages++; + } +@@ -888,9 +888,9 @@ static int save_compressed_image(struct swap_map_handle *handle, + if (!ret) + ret = err2; + if (!ret) +- pr_info("Image saving done\n"); ++ pr_err("Image saving done\n"); + swsusp_show_speed(start, stop, nr_to_write, "Wrote"); +- pr_info("Image size after compression: %d kbytes\n", ++ pr_err("Image size after compression: %d kbytes\n", + (atomic_read(&compressed_size) / 1024)); + + out_clean: +@@ -1105,7 +1105,7 @@ static int load_image(struct swap_map_handle *handle, + hib_init_batch(&hb); + + clean_pages_on_read = true; +- pr_info("Loading image data pages (%u pages)...\n", nr_to_read); ++ pr_err("Loading image data pages (%u pages)...\n", nr_to_read); + m = nr_to_read / 10; + if (!m) + m = 1; +@@ -1123,7 +1123,7 @@ static int load_image(struct swap_map_handle *handle, + if (ret) + break; + if (!(nr_pages % m)) +- pr_info("Image loading progress: %3d%%\n", ++ pr_err("Image loading progress: %3d%%\n", + nr_pages / m * 10); + nr_pages++; + } +@@ -1133,7 +1133,7 @@ static int load_image(struct swap_map_handle *handle, + if (!ret) + ret = err2; + if (!ret) { +- pr_info("Image loading done\n"); ++ pr_err("Image loading done\n"); + ret = snapshot_write_finalize(snapshot); + if (!ret && !snapshot_image_loaded(snapshot)) + ret = -ENODATA; +@@ -1328,8 +1328,8 @@ static int load_compressed_image(struct swap_map_handle *handle, + } + want = ring_size = i; + +- pr_info("Using %u thread(s) for %s decompression\n", nr_threads, hib_comp_algo); +- pr_info("Loading and decompressing image data (%u pages)...\n", ++ pr_err("Using %u thread(s) for %s decompression\n", nr_threads, hib_comp_algo); ++ pr_err("Loading and decompressing image data (%u pages)...\n", + nr_to_read); + m = nr_to_read / 10; + if (!m) +@@ -1459,7 +1459,7 @@ static int load_compressed_image(struct swap_map_handle *handle, + data[thr].unc + off, PAGE_SIZE); + + if (!(nr_pages % m)) +- pr_info("Image loading progress: %3d%%\n", ++ pr_err("Image loading progress: %3d%%\n", + nr_pages / m * 10); + nr_pages++; + +@@ -1485,7 +1485,7 @@ static int load_compressed_image(struct swap_map_handle *handle, + } + stop = ktime_get(); + if (!ret) { +- pr_info("Image loading done\n"); ++ pr_err("Image loading done\n"); + ret = snapshot_write_finalize(snapshot); + if (!ret && !snapshot_image_loaded(snapshot)) + ret = -ENODATA; +@@ -1593,7 +1593,7 @@ int swsusp_check(bool exclusive) + } + if (!error && swsusp_header->flags & SF_HW_SIG && + swsusp_header->hw_sig != swsusp_hardware_signature) { +- pr_info("Suspend image hardware signature mismatch (%08x now %08x); aborting resume.\n", ++ pr_err("Suspend image hardware signature mismatch (%08x now %08x); aborting resume.\n", + swsusp_header->hw_sig, swsusp_hardware_signature); + error = -EINVAL; + }