Jedną z brakujących funkcji RISC-V, które są obecnie dostępne w rozwijanym jądrze Linuksa 6.4, jest obsługa hibernacji systemu/wstrzymania na dysk.

Opracowywana przez ostatnie kilka miesięcy i przechodząca przez szereg rund recenzji jest obsługa hibernacji/zawieszania na dysk RISC-V. Z wcześniejszej serii poprawek:

“Aby włączyć hibernację/zawieszenie dysku w RISCV, należy włączyć poniższą konfigurację:

-CONFIG_HIBERNATION
-CONFIG_ARCH_HIBERNATION_HEADER
-CONFIG_ARCH_HIBERNATION_POSSIBLE

Na wysokim poziomie to zawiera następujące zmiany:
1) Zmiana suspend_save_csrs() i suspend_restore_csrs() na funkcję publiczną, ponieważ te funkcje są wspólne dla trybu wstrzymania/hibernacji.
2) Refaktoryzacja wspólnego kodu w funkcji __cpu_resume_enter() i __hibernate_cpu_resume( ). Wspólny kod jest używany przez hibernację i zawieszenie.
3) Ulepszenie funkcji kernel_page_present() w celu obsługi dużej strony.
4) Dodaj funkcje niskiego poziomu arch/riscv w celu obsługi hibernacji/zawieszenia na dysku.

Powyższe poprawki są oparte na jądrze v6. 3-rc4 i zostały przetestowane na płycie StarFive VF2 SBC i Qemu (przy użyciu surowego formatu dysku). Tryb platformy ACPI nie jest obsługiwany w tej serii.”

Z kolei obsługa hibernacji RISC-V była przesłane w piątek jako część dodatkowych poprawek RISC-V dla Linuksa 6.4.

Categories: IT Info