{"id":120593,"date":"2024-11-18T13:09:07","date_gmt":"2024-11-18T11:09:07","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima"},"modified":"2024-11-18T13:09:07","modified_gmt":"2024-11-18T11:09:07","slug":"reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","title":{"rendered":"Udgivelse af Linux-kernen 6.12 med st\u00f8tte til Realtime-tilstand","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Efter to m\u00e5neders udvikling pr\u00e6senterede Linus Torvalds udgivelsen af Linux-kernen 6.12. Blandt de mest markante \u00e6ndringer er muligheden for at aktivere Realtime-tilstand, sched_ext til oprettelse af CPU-planl\u00e6ggere via eBPF, QR-kodetransmission under n\u00f8dtilstande, Device Memory TCP-mekanismen, SCHED_DEADLINE server-reserveringsmekanismen, forbedring af EEVDF-opgaveplanl\u00e6ggeren og IPE-modulet til fastl\u00e6gning af integritetspolitikker.        <\/p>\n<p>I den nye version er der 14607 rettelser fra 2167 udviklere, og patchens st\u00f8rrelse er 37 MB (\u00e6ndringerne p\u00e5virkede 13087 filer, tilf\u00f8jet 507913 kodelinjer, fjernet 234083 linjer). I den forrige version var der 15130 rettelser fra 2078 udviklere, og patchens st\u00f8rrelse var 85 MB (i kerne 6.10 var patchen 41 MB). Omtrent 45% af alle \u00e6ndringerne i 6.12 er relateret til enhedsdrivere, cirka 12% er relateret til opdatering af kode, der er specifik for hardwarearkitekturer, 13% vedr\u00f8rer netv\u00e6rksstakken, 6% vedr\u00f8rer filsystemer, og 3% vedr\u00f8rer interne delsystemer i kernen.      <\/p>\n<p>De vigtigste nyheder i kernen 6.12:  <\/p>\n<ul>\n<li class=\"l\"> <b>Hukommelse og systemtjenester<\/b>\n<ul>\n<li class=\"l\"> Muligheden for at bygge kernen med PREEMPT_RT-optionen uden ekstra patches til realtidsdrift er blevet tilf\u00f8jet. Det sidste manglende element i kernen, som forhindrede aktivering af PREEMPT_RT-tilstanden, var underst\u00f8ttelsen af ikke-blokerende atomar output via printk-funktionen, som nu ogs\u00e5 er blevet inkluderet i kernen. St\u00f8tte til PREEMPT_RT er tilg\u00e6ngelig for arkitekturerne x86, x86_64, ARM64 og RISC-V. Indtil nu blev implementeringen af PREEMPT_RT-tilstanden leveret som eksterne patches, p\u00e5 basis af hvilke nogle distributioner som RHEL, SUSE og Ubuntu skabte separate Realtime-udgaver af deres produkter, som er efterspurgt inden for finansielle systemer, lyd- og video behandlingsenheder, luftfart, medicin, robotteknik, telekommunikation og industrielle systemer, hvor forudsigelig behandlingstid er n\u00f8dvendig.\n<li class=\"l\"> Der er tilf\u00f8jet en mekanisme &#171;sched_ext&#187; (SCX), som muligg\u00f8r brug af eBPF til at oprette CPU-planl\u00e6ggere, der d\u00e6kker stort set alle aspekter af opgaveudf\u00f8relse og fordeling af CPU-ressourcer. S\u00e5danne planl\u00e6ggere kan indl\u00e6ses dynamisk og udf\u00f8res inden for Linux-kernen. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/vps\/abuzoustojchivye-vps\/\"   title=\"virtuelle maskiner\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4348\">virtuelle maskiner<\/a> eBPF. Mekanismen sched_ext forenkler oprettelsen af opgave-specifikke planl\u00e6ggere, muligg\u00f8r eksperimentering med forskellige teknikker og strategier for planl\u00e6gning og g\u00f8r det muligt hurtigt at oprette fungerende prototyper samt udskifte planl\u00e6ggere i realtid i driftinfrastrukturer. For eksempel kan man ved hj\u00e6lp af sched_ext oprette en planl\u00e6gger, der tager h\u00f8jde for specifikationen af en bestemt applikation og dynamisk \u00e6ndrer planl\u00e6gningsstrategien baseret p\u00e5 systemets tilstand og andre faktorer.\n<li class=\"l\"> S\u00e6ttet inkluderer den resterende del af patchene, der er n\u00f8dvendige for at mekanismen SCHED_DEADLINE server fungerer, hvilket l\u00f8ser problemet med, at almindelige opgaver ikke f\u00e5r tildelt CPU-ressourcer i situationer, hvor CPU'en monopoliseres af h\u00f8jprioriterede (realtime) opgaver. Tidligere blev mekanismen Realtime throttling brugt i kernen for at reservere 5% til lavprioriterede opgaver, hvilket efterlod 95% af tiden til realtime-opgaver. Denne mekanisme efterlod meget at \u00f8nske, da almindelige opgaver i mange situationer ikke fik tilstr\u00e6kkelig CPU-tid. SCHED_DEADLINE server implementerer en mere effektiv mekanisme til ressourceallokering.\n<li class=\"l\"> Integration af opgaveplanl\u00e6ggeren EEVDF (Earliest Eligible Virtual Deadline First) er afsluttet, hvilket erstatter planl\u00e6ggeren CFS (Completely Fair Scheduler), som blev leveret fra version 2.6.23 af kernen. Den nye planl\u00e6gger tager hensyn til processer, der ikke har f\u00e5et tildelt tilstr\u00e6kkelige CPU-ressourcer, eller som har f\u00e5et tildelt uforholdsm\u00e6ssigt meget CPU-tid, n\u00e5r den v\u00e6lger den n\u00e6ste proces til udf\u00f8relse. I det f\u00f8rste tilf\u00e6lde tvangsoverf\u00f8res kontrollen til processen, mens det i det andet tilf\u00e6lde omvendt uds\u00e6ttes. Den gamle CFS-planl\u00e6gger brugte heuristik og fine justeringer til at bestemme, hvilke processer der kr\u00e6vede s\u00e6rlig opm\u00e6rksomhed, mens den nye planl\u00e6gger overv\u00e5ger dem mere eksplicit og ikke kr\u00e6ver finindstilling. Det forventes, at EEVDF vil reducere forsinkelserne ved udf\u00f8relse af opgaver, som CFS havde problemer med at planl\u00e6gge.\n<li class=\"l\"> I n\u00f8dsituationh\u00e5ndteringsmekanismen i kernen &#8212; DRM Panic, som bruger DRM (Direct Rendering Manager) subsystemet til at vise en visuel rapport i stil med &#171;den bl\u00e5 sk\u00e6rm for d\u00f8d&#187;, er der tilf\u00f8jet mulighed for at vise en logo og QR-kode med kmsg-rapporten ved opst\u00e5en af en n\u00f8dtilstand. Da QR-koden kun kan rumme 2953 byte, er der en mulighed DRM_PANIC_SCREEN_QR_CODE_URL, hvor kmsg-rapporten komprimeres med zlib og knyttes som parameter til URL\u2019en, hvilket muligg\u00f8r overf\u00f8rsel af omkring 7500 byte gennem QR-kode V40. Ved pakkeopbygning med kernen kan distributioner angive en grundl\u00e6ggende henvisning til URL\u2019en, hvilket muligg\u00f8r en overgang til en side for at sende en fejlrapport. Der er en indstilling for valg af QR-kodeformat DRM_PANIC_SCREEN_QR_VERSION.\n<li class=\"l\"> Underst\u00f8ttelse af ARM POE (Permission Overlay Extension) er blevet tilf\u00f8jet, som g\u00f8r det muligt at angive adgangsrettigheder til hukommelsesomr\u00e5der. Ved hj\u00e6lp af denne udvidelse kan der implementeres en mekanisme for Memory Protection Keys p\u00e5 systemer med ARM64-processorer, der anvendes til at begr\u00e6nse adgangen til hukommelsessider uden at \u00e6ndre hukommelsestabellen.\n<li class=\"l\"> Implementeringen af systemopkaldet getrandom() er blevet overf\u00f8rt til arkitekturerne Loongarch, ARM64, PowerPC og s390, optimeret ved hj\u00e6lp af vDSO (virtual dynamic shared object) mekanismen, der muligg\u00f8r overf\u00f8rsel af systemopkaldsbehandleren fra kernen til brugerens rum og undg\u00e5 konteksskift. Optimeringen g\u00f8r det muligt at accelerere indsamlingen af tilf\u00e6ldige tal op til 15 gange.\n<li class=\"l\"> I io_uring subsystemet for asynkron input\/output er muligheden for at bruge absolutte timeout-indstillinger blevet tilf\u00f8jet, som udl\u00f8ses, n\u00e5r et bestemt tidspunkt p\u00e5 systemklokkerne n\u00e5s (tidligere kunne der kun angives relative timeout-indstillinger, hvor varigheden blev angivet fra start af operationen).\n<li class=\"l\"> Filer til generering af bindings til libcpupower bibliotekerne er blevet tilf\u00f8jet ved hj\u00e6lp af SWIG-v\u00e6rkt\u00f8jet, der muligg\u00f8r oprettelse af bindings fra C\/C++ kode til forskellige programmeringssprog. Bindingsene g\u00f8r det muligt at oprette scripts i Python og andre sprog og bruge dem til at udvide funktionaliteten af libcpupower-biblioteket, der tilbyder API til styring af cpufreq og drivere fra brugerens rum.\n<li class=\"l\"> I cpuidle v\u00e6rkt\u00f8jet er der implementeret visning af v\u00e6rdien for status for inaktivitet &#171;residency&#187;, der anvendes i realtidssystemer og tager h\u00f8jde for den minimale tid, en processor skal forblive i inaktivitetstilstand, for at retf\u00e6rdigg\u00f8re energiforbruget ved at skifte til og fra denne tilstand.\n<li class=\"l\"> Muligheden for at anvende Clang-kompilatoren til at bygge den standard C-bibliotek nolibc, som er en del af Linux-kernes kildekoder og giver et lag over de grundl\u00e6ggende systemopkald, er blevet tilf\u00f8jet. Ved opbygning af nolibc i Clang er det muligt at bruge optimering p\u00e5 bindingsstadiet (LTO).\n<li class=\"l\"> Nogle cgroup1-gr\u00e6nseflader, s\u00e5som TCP-rapportering, den f\u00f8rste version af bl\u00f8de begr\u00e6nsninger (soft limit) og kontrol af udt\u00f8mning af fri hukommelse, er blevet erkl\u00e6ret for\u00e6ldede. St\u00f8tten til disse funktioner opretholdes stadig fuldt ud, og advarslen er lavet for at unders\u00f8ge, hvor mange brugere der fortsat bruger disse muligheder.\n<li class=\"l\"> Mulighed for at konfigurere cirkul\u00e6rt trace-buffer for at gemme akkummulerede data efter genstart, hvilket forhindrer tab af indsamlet fejlinformation i tilf\u00e6lde af et n\u00f8dstop af kernen. Data gemmes i hukommelsen. Aktivering sker via en kernel kommandolinjeparameter trace_instance, for eksempel at angive &#171;trace_instance=boot_map@0x285400000:12M&#187; reserverer 12 MB hukommelse p\u00e5 adresse 0x285400000 til bufferen &#171;boot_map&#187;, som vil v\u00e6re tilg\u00e6ngelig gennem filen \/sys\/kernel\/tracing\/instances\/boot_map.\n<li class=\"l\"> Forts\u00e6ttelse af overf\u00f8relsen af \u00e6ndringer fra Rust-for-Linux-grenen, der vedr\u00f8rer brugen af Rust-sproget som det andet sprog til udvikling af drivere og kermoduler (Rust-support er ikke aktiv som standard og medf\u00f8rer ikke, at Rust bliver en obligatorisk build-afh\u00e6ngighed for kernen). Tilf\u00f8jet modulerne &#8216;list&#8217; og &#8216;rbtree&#8217; til arbejde med tovejs sammenk\u00e6dede lister og r\u00f8de-sorte s\u00f8getr\u00e6er (red-black tree). Udvidet funktionalitet for modulerne &#8216;init&#8217;, &#8216;sync&#8217;, &#8216;types&#8217; og &#8216;error&#8217;. Givet mulighed for at bruge Rust-kode ved bygning af kernen med beskyttelse mod Spectre-angreb (indstillinger MITIGATION_{RETHUNK,RETPOLINE,SLS}), brug af KASAN fejls\u00f8gning, kCFI (kernel Control Flow Integrity) og Shadow Call beskyttelsesmekanismer samt brug af yderligere GCC-plugins. Tilf\u00f8jet driver til Ethernet-controlleren Applied Micro QT2025 PHY, skrevet i Rust. En separat hjemmeside med dokumentation er forberedt \u2014 rust.docs.kernel.org.\n<li class=\"l\"> I kildeteksterne til kernen er v\u00e6rkt\u00f8jet xdrgen blevet tilf\u00f8jet for at konvertere XDR-specifikationer (eXternal Data Representation) til funktioner til kodning og dekodning af XDR, skrevet med det C-stil, der er accepteret i Linux-kernen.\n<li class=\"l\"> Der er vedtaget en \u00e6ndring til kernen med implementering af et pointer masking mekanisme for at reducere antallet af langsomme kald til barrier_nospec() i 64-bit funktionen copy_from_user(), der bruges til at kopiere data til kernen fra brugerrummet. Anvendelse af masking fremskynder testresultatet af &#171;per_thread_ops&#187;, som vurderer antallet af operationer, der kan udf\u00f8res i en enkelt tr\u00e5d, med 2,6%.\n<li class=\"l\"> En ny USB-driver er tilf\u00f8jet, der muligg\u00f8r brug af 9pfs-protokollen som transport for dataoverf\u00f8rsel til og fra USB-enheden, n\u00e5r 9p-systemsfilen monteres over USB (for eksempel &#171;mount -t 9p -o trans=usbg,aname=\\\/path\\\/to\\\/fs &lt;device&gt; \\\/mnt\\\/9&#187;). Et eksempel p\u00e5 anvendelsen af den nye driver er at bruge den i stedet for NFS til at organisere boot af rodpartitionen under udvikling af indlejrede enheder.                    <\/ul>\n<li class=\"l\"> <b>DiskSubsystem, input\/output og filsystemer<\/b>\n<ul>\n<li class=\"l\"> I VFS-underomr\u00e5det er der tilf\u00f8jet mulighed for at arbejde med lagringsenheder, hvis blokst\u00f8rrelse er st\u00f8rre end st\u00f8rrelsen p\u00e5 en hukommelsesside i systemet. I filsystemerne underst\u00f8ttes denne mulighed kun midlertidigt i XFS.\n<li class=\"l\"> I FUSE-subsystem, som g\u00f8r det muligt at skabe filsystemimplementeringer, der fungerer i brugerrummet, er der tilf\u00f8jet underst\u00f8ttelse af mapping af bruger-id'er for monterede filsystemer, som bruges til at matche filer fra en bestemt bruger p\u00e5 et monteret fremmed partition med en anden bruger i det aktuelle system.\n<li class=\"l\"> Der er implementeret en ny fcntl-operation F_CREATED_QUERY, der giver applikationen mulighed for at afg\u00f8re, om en fil, der \u00e5bnes med flaget O_CREAT, er blevet oprettet, eller om den allerede eksisterede f\u00f8r dette.\n<li class=\"l\"> Til systemopkaldet name_to_handle_at() er der tilf\u00f8jet en mulighed for at bruge unikke 64-bit identifikatorer for monteringspunkter for at undg\u00e5 race-tilstande ved parsing af \/proc\/mountinfo.\n<li class=\"l\"> Strukturen af &#171;file&#187; i kernen er reduceret fra 232 til 184 byte, hvilket muligg\u00f8r et lavere hukommelsesforbrug p\u00e5 systemer, der aktivt arbejder med filer.\n<li class=\"l\"> Montering af filsystemer til monteringspunkter inden for hierarkiet \/proc, som f.eks. i \/proc\/PID\/fd, er blevet forbudt, da dette kan skabe potentielle sikkerhedsproblemer.\n<li class=\"l\"> I den pseudofilsystem NSFS (NameSpace FS), der bruges til at arbejde med navneomr\u00e5der, er der implementeret leverancer af yderligere oplysninger om navneomr\u00e5der for monteringspunkter.\n<li class=\"l\"> I filsystemet EROFS (Extendable Read-Only File System), designet til brug p\u00e5 partitioner, der kun er tilg\u00e6ngelige i skrivebeskyttet tilstand, er der kommet underst\u00f8ttelse af at montere filsystemer direkte fra diskbilleder gemt i filformat.\n<li class=\"l\"> I XFS er der tilf\u00f8jet nye ioctl-kommandoer XFS_IOC_START_COMMIT og XFS_IOC_COMMIT_RANGE til at udveksle indhold mellem to filer.\n<li class=\"l\"> Der er tilf\u00f8jet underst\u00f8ttelse af protokollen &#171;LOCALIO&#187; i NFS, som g\u00f8r det muligt at bestemme, om klienten og <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/server\/\"   title=\"server\" data-wpil-keyword-link=\"linked\">server<\/a> NFS er p\u00e5 samme v\u00e6rt for at aktivere de relevante optimeringer.\n<li class=\"l\"> I filsystemet Btrfs er der foresl\u00e5et ydeevneoptimeringer, udf\u00f8rt en omstrukturering af koden, reduceret omfanget af blokeringer af extent under l\u00e6seoperationer, og arbejdet med at overf\u00f8re til brugen af side-folios er fortsat, ligesom der er implementeret automatisk frigivelse af hukommelse for strukturen btrfs_path.\n<li class=\"l\"> Der er rettet fejl i filsystemet Ext4 relateret til allokering af blokke, h\u00e5ndtering af extent, mekanismen &#171;fast commit&#187; og journalf\u00f8ring.                  <\/ul>\n<li class=\"l\"> <b>Virtualisering og sikkerhed<\/b>\n<ul>\n<li class=\"l\"> LSM-modulet IPE (Integrity Policy Enforcement), udviklet af Microsoft til at udvide det eksisterende system for mandatstyring af adgang, er blevet tilf\u00f8jet. Modulet g\u00f8r det muligt at definere en overordnet integritetspolitik for hele systemet, der angiver, hvilke operationer der er tilladte, og hvordan komponenternes autenticitet skal verificeres. For eksempel kan IPE bruges til at angive, hvilke eksekverbare filer der m\u00e5 k\u00f8res under hensyntagen til kontrol af deres overensstemmelse med referenceversionen ved hj\u00e6lp af kryptografiske hashes, der leveres af systemet dm-verity.\n<li class=\"l\"> I kernekompileringstrinnet er det muligt at aktivere beskyttelsesmetoder mod forskellige s\u00e5rbarheder af typen Spectre i CPU'en individuelt. Kconfig introducerer nye parametre: MITIGATE_MDS (beskyttelse mod s\u00e5rbarheden Microarchitectural Data Sampling), MITIGATE_TAA (beskyttelse mod s\u00e5rbarheden TSX Asynchronous Abort), MITIGATE_MMIO_STALE_DATA (beskyttelse mod s\u00e5rbarheden MMIO Stale Data), MITIGATE_L1TF (beskyttelse mod s\u00e5rbarheden L1 Terminal Fault), MITIGATE_RETBLEED (beskyttelse mod s\u00e5rbarheden Retbleed), MITIGATE_SPECTRE_V1, MITIGATE_SPECTRE_V2 (beskyttelse mod s\u00e5rbarhederne Spectre), MITIGATE_SRBDS (beskyttelse mod s\u00e5rbarheden Special Register Buffer Data Sampling), MITIGATE_SSB (beskyttelse mod s\u00e5rbarheden Speculative Store Bypass).\n<li class=\"l\"> Der er tilf\u00f8jet parameteren proc_mem.force_override til kommandolinjen samt en r\u00e6kke byggeindstillinger i Kconfig (PROC_MEM_FORCE_ALWAYS, PROC_MEM_FORCE_PTRACE og PROC_MEM_FORCE_NEVER), der tillader forbud mod \u00e6ndring af hukommelse via \/proc\/pid\/mem.\n<li class=\"l\"> LSM-systemet (Linux security module) er blevet \u00e6ndret til at bruge statiske kald, hvilket har \u00f8get sikkerheden og forbedret ydeevnen.\n<li class=\"l\"> Muligheden for at bruge standardkerner til ARM64-arkitekturen i g\u00e6stebaserede milj\u00f8er, der k\u00f8rer p\u00e5 Android-systemer med en modificeret KVM-hypervisor (protected KVM), er blevet sikret.\n<li class=\"l\"> I LSM-modulet Landlock, der muligg\u00f8r begr\u00e6nsning af interaktionen mellem en gruppe processer og det eksterne milj\u00f8, er konceptet &#171;IPC scoping&#187; implementeret for selektiv begr\u00e6nsning af interaktion med sandbox-milj\u00f8er ved hj\u00e6lp af Unix-sokler og signaler. For eksempel kan man forbyde oprettelse af forbindelser ved hj\u00e6lp af Unix-sokler fra sandbox-milj\u00f8et til processer, hvor der ikke anvendes isolation, men tillade forbindelser til processer inden for samme scope-omr\u00e5de.\n<li class=\"l\"> I KVM-hypervisoren er der tilf\u00f8jet en flag i CPUID for g\u00e6stede systemer, der signalerer st\u00f8tte til AVX10.1-udvidelser.            <\/ul>\n<li class=\"l\"> <b>Netv\u00e6rkssubsystem<\/b>\n<ul>\n<li class=\"l\"> Der er tilf\u00f8jet en mekanisme til Device Memory TCP, som g\u00f8r det muligt at bruge netv\u00e6rkssokler til direkte at sende indholdet af hukommelsen fra periferienheder over netv\u00e6rket (zero-copy-mode) og placere indholdet af netv\u00e6rkspakker direkte i hukommelsesomr\u00e5det for enheden p\u00e5 modtagerens side. Dataene, der overf\u00f8res i pakkerne, sendes direkte fra netv\u00e6rkskortet til hukommelsen hos periferienheden eller fra enhedens hukommelse til netv\u00e6rkskortet, hvilket omg\u00e5r CPU\u2019en, mens pakkeoverskrifterne sendes til de almindelige kernelbuffere.\n<li class=\"l\"> Mulighederne for mange Ethernet- og tr\u00e5dl\u00f8se drivere er blevet udvidet. For eksempel er der i driveren til Intel iwlwifi tilf\u00f8jet support til udflytning af RLC\/SMPS-operationer til firmware-siden; i driveren til RealTek rtw89 er ydeevnen forbedret, og der er tilf\u00f8jet support for chipperne RTL8852BT\/8852BE-VT (WiFi 6); i Ethernet-driveren til Microchip er der tilf\u00f8jet support til specifikationerne IEEE 802.3bw (100BASE-T1) og IEEE 802.3bp; implementeringerne af Microsoft vNIC og IBM veths virtuelle Ethernet er blevet forbedret. Der er tilf\u00f8jet nye drivere for Ethernet-chips fra Realtek RTL9054, RTL9068, RTL9072, RTL9075, RTL9068, RTL9071 og Microchip LAN8650\/1 10BASE-T1S MAC-PHY.\n<li class=\"l\"> I MPTCP (MultiPath TCP), en udvidelse af TCP-protokollen til at organisere leveringen af TCP-pakker samtidig via flere ruter gennem forskellige netv\u00e6rksinterfaces, er st\u00f8rrelsen p\u00e5 de v\u00e6gtede koefficienter, der anvendes ved routning, \u00f8get fra 8 til 16 bit. Implementeringen af at identificere tabt (blackhole) trafik og at suspendere fors\u00f8g p\u00e5 at etablere forbindelser med systemer, der f\u00f8rer til tab af trafik, i et stykke tid er ogs\u00e5 udf\u00f8rt.\n<li class=\"l\"> For IPv6 er der implementeret underst\u00f8ttelse af flaget &#171;p&#187; i PIO (Prefix Information Option), der anvendes i RA-annonceringer (IPv6 Router Advertisements) til at v\u00e6lge en model til implementering af klienter via DHCPv6-PD (DHCPv6 Prefix Delegation, RFC9663) i stedet for tildeling af separate adresser baseret p\u00e5 pr\u00e6fikser ved hj\u00e6lp af SLAAC (Stateless Address Autoconfiguration). I IPv6 IOAM6 er der tilf\u00f8jet underst\u00f8ttelse af en ny indkapslingsmetode tunsrc, der muligg\u00f8r h\u00f8jere ydeevne.\n<li class=\"l\"> Ydeevnen ved behandling af kontrolpakker til IPsec er blevet forbedret.\n<li class=\"l\"> Ydeevnen ved at nulstille (flush) store s\u00e6t af nftables-regler er blevet forbedret. I nfnetlink_queue er supporten for SCTP-protokollen forbedret.\n<li class=\"l\"> I API'et ethtool er der tilf\u00f8jet support til binding af flere netv\u00e6rkskort til \u00e9t netv\u00e6rksinterface.                      <\/ul>\n<li class=\"l\"> <b>Udstyr<\/b>\n<ul>\n<li class=\"l\"> I AMDGPU-driveren er arbejdet med at implementere underst\u00f8ttelse af GPU AMD RDNA4 (&#171;GFX12&#187;) fortsat. Muligheden for at nulstille enkelte opgavek\u00f8er uden at nulstille hele GPU'ens tilstand er blevet tilf\u00f8jet.\n<li class=\"l\"> Arbejdet med drm-driveren (Direct Rendering Manager) Xe til GPU'er baseret p\u00e5 Intel Xe-arkitekturen, som anvendes i Intel Arc grafikkort og integreret grafik siden Tiger Lake-processorerne, er fortsat. Den nye version inkluderer support til GPU'er baseret p\u00e5 mikroarkitekturerne Battlemage og Lunar Lake. Der er tilf\u00f8jet support for CCS-modifikatorer (Color Control Surface) Xe2 til styring af indstillingerne for b\u00e5de integrerede og diskrete GPU'er.\n<li class=\"l\"> I i915-driveren er muligheden for at outputte oplysninger om bl\u00e6serhastigheden gennem HWMON- eller sysfs-gr\u00e6nsefladen (attribut &#171;fan1_input&#187;) blevet implementeret. Parameteren &#171;i915.modeset&#187; er blevet erkl\u00e6ret for\u00e6ldet, og parameteren &#171;i915.nomodeset&#187; b\u00f8r anvendes i stedet for &#171;i915.modeset=0&#187;.\n<li class=\"l\"> I DRM-driveren msm (GPU Qualcomm Adreno) er der tilf\u00f8jet support til GPU'erne A615, A306 og A621.\n<li class=\"l\"> I Nouveau-driveren er der blevet foretaget en revision og oprydning af interne strukturer.\n<li class=\"l\"> I driveren intel_pstate, der styrer energiforbrugsparametre (P-state) p\u00e5 systemer med Intel-processorer, er der tilf\u00f8jet st\u00f8tte til hybride systemer med asymmetrisk (forskelligartet) CPU samt st\u00f8tte til str\u00f8mstyring af processorer baseret p\u00e5 mikroarkitekturerne Granite Rapids og Sierra Forest. I driveren intel_idle er der tilf\u00f8jet support til CPU Xeon Granite Rapids. I driveren intel_rapl er der sikret genkendelse af AMD-processer fra familie 1Ah og Intel ArrowLake-U-processorer.\n<li class=\"l\"> \u00c6ndringerne for at st\u00f8tte ARM SoC Snapdragon X Elite, som bruger sin egen 12-core CPU Qualcomm Oryon og GPU Qualcomm Adreno, er fortsat. Chippen er m\u00e5lrettet brug i b\u00e6rbare computere og pc'er og overg\u00e5r i mange ydelsestests chips fra Apple M3 og Intel Core Ultra 155H.\n<li class=\"l\"> Support er blevet tilf\u00f8jet for ARM-platforme, SoC'er og enheder: Broadcom bcm2712 (Raspberry Pi 5), Renesas R9A09G057 (RZ\/V2H), Qualcomm Snapdragon 414 (MSM8929), Lenovo ThinkPad T14s Gen 6, Lenovo A6000\/A6010, Surface Laptop 7, Anbernic RG35XXSP, Firefly Core-PX30-JD4, Lunzn Fastrhino R68S, Aspeed Riser, AGX Orin, Rockchip Qnap-TS433, Huashan Pi, Meta Catalina, BeagleY-AI, NanoPi R2S Plus, ExynosAuto v920, SOPHGO SG2002, Qualcomm IPQ5332, LG G4 (h815), Cool Pi CM5 GenBook, Anbernic RG35XXSP, GameForce Ace, IBM P11, Kontron i.MX93 OSM-S, NanoPC-T6.\n<li class=\"l\"> Support er blevet tilf\u00f8jet for sk\u00e6rmpaneler: Anbernic RG28XX, On Tat Industrial Company KD50G21-40NT-A1, Innolux G070ACE-LH3, Melfas lmfbx101117480, Densitron DMT028VGHMCMI-1D, Microchip AC40T08A, AOU B116XTN02.3, AUO B116XAN06.1, AOU B116XAT04.1, BOE TV101WUM-LL2, BOE NV140WUM-N41, BOE NV133WUM-N63, BOE NV116WHM-A4D, BOE NE140WUM-N6G, CMN N116BCA-EA2, CMN N116BCP-EA2, CSW MNB601LS1-4, Starry er88577.\n<li class=\"l\"> Lydsystemet har f\u00e5et tilf\u00f8jet support for RME Digiface USB, AMD ACP 7.1, Mediatek MT6367, MT8365, Realtek RTL1320, C-Media CM9825 chipsets og codecs. De gamle lyddrivere til ASoC Intel er blevet erkl\u00e6ret for\u00e6ldede, og det anbefales nu at bruge AVS-drivere. Der er lavet mange forbedringer i SoundWire-driveren.      <\/ul>\n<\/ul>\n<p>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62243\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.12. \u0421\u0440\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043c\u0435\u0442\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f Realtime-\u0440\u0435\u0436\u0438\u043c\u0430, sched_ext \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 CPU \u0447\u0435\u0440\u0435\u0437 eBPF, \u0432\u044b\u0432\u043e\u0434 QR-\u043a\u043e\u0434\u0430 \u043f\u0440\u0438 \u0430\u0432\u0430\u0440\u0438\u0439\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f\u0445, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c Device Memory TCP, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 SCHED_DEADLINE server, \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0437\u0430\u0434\u0430\u0447 EEVDF, \u043c\u043e\u0434\u0443\u043b\u044c IPE \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u0438. \u0412 \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u0438\u043d\u044f\u0442\u043e 14607 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-120593","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.12.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/da\/blog\/news\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.12 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 Realtime-\u0440\u0435\u0436\u0438\u043c\u0430 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.12.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/news\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2024-11-18T11:09:07+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-11-18T11:09:07+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Udgivelse af Linux-kernen 6.12 med support for Realtime-tilstand | ProHoster","description":"Efter to m\u00e5neders udvikling pr\u00e6senterede Linus Torvalds udgivelsen af Linux-kernen 6.12.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.12 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 Realtime-\u0440\u0435\u0436\u0438\u043c\u0430 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.12.","og:url":"https:\/\/prohoster.info\/da\/blog\/news\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2024-11-18T11:09:07+00:00","article:modified_time":"2024-11-18T11:09:07+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"120593","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 08:06:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 08:06:19","updated":"2026-01-23 08:06:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/120593","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=120593"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/120593\/revisions"}],"predecessor-version":[{"id":173076,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/120593\/revisions\/173076"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=120593"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=120593"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=120593"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}