{"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\/sv\/blog\/news\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","title":{"rendered":"Utg\u00e5van av k\u00e4rnan Linux 6.12 med st\u00f6d f\u00f6r Real-time-l\u00e4ge","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Efter tv\u00e5 m\u00e5naders utveckling presenterade Linus Torvalds versionen av Linux-k\u00e4rnan 6.12. N\u00e5gra av de mest framtr\u00e4dande f\u00f6r\u00e4ndringarna \u00e4r: m\u00f6jligheten att aktivera Realtime-l\u00e4ge, sched_ext f\u00f6r att skapa CPU-scheman via eBPF, QR-kodutmatning vid n\u00f6dsituationer, en mekanism f\u00f6r Device Memory TCP, en mekanism f\u00f6r resursreservations SCHED_DEADLINE server, f\u00f6rb\u00e4ttringar av EEVDF-taskschemal\u00e4ggaren, samt IPE-modulen f\u00f6r att st\u00e4lla in integritetspolicys.        <\/p>\n<p>I den nya versionen har 14607 korrigeringar fr\u00e5n 2167 utvecklare, patchstorleken \u00e4r 37 MB (\u00e4ndringarna ber\u00f6r 13087 filer, 507913 rader kod har lagts till, 234083 rader har tagits bort). I den f\u00f6reg\u00e5ende utg\u00e5van var det 15130 korrigeringar fr\u00e5n 2078 utvecklare, patchstorleken var 85 MB (i k\u00e4rnan 6.10 var patchen 41 MB stor). Ungef\u00e4r 45% av alla \u00e4ndringar som presenterades i 6.12 \u00e4r relaterade till enhetsdrivrutiner, cirka 12% av \u00e4ndringarna g\u00e4ller uppdatering av arkitektur-specifik kod, 13% \u00e4r relaterade till n\u00e4tverksstacken, 6% till filsystem och 3% till interna delsystem i k\u00e4rnan.      <\/p>\n<p>Huvudnyheterna i k\u00e4rnan 6.12:  <\/p>\n<ul>\n<li class=\"l\"> <b>Minne och systemtj\u00e4nster<\/b>\n<ul>\n<li class=\"l\"> M\u00f6jlighet att bygga k\u00e4rnan med alternativet PREEMPT_RT utan ytterligare patchar f\u00f6r att arbeta i realtidsl\u00e4ge. Den sista sak som saknades i k\u00e4rnan, vilket hindrade aktivering av PREEMPT_RT-l\u00e4get, var st\u00f6d f\u00f6r icke-blockerande atom\u00e4r utmatning via funktionen printk, vilket ocks\u00e5 har tagits upp i k\u00e4rnan. St\u00f6det f\u00f6r PREEMPT_RT \u00e4r tillg\u00e4ngligt f\u00f6r arkitekturerna x86, x86_64, ARM64 och RISC-V. Tidigare erbj\u00f6ds implementationen av PREEMPT_RT i form av externa patchar, baserat p\u00e5 vilka vissa distributioner, s\u00e5som RHEL, SUSE och Ubuntu, skapade separata Realtime-versioner av sina produkter, efterfr\u00e5gade inom omr\u00e5den som finansiella system, ljud- och videohantering, flygindustri, medicin, robotik, telekommunikation och industriella system d\u00e4r det kr\u00e4vs f\u00f6ruts\u00e4gbart h\u00e4ndelsebehandlingstid.\n<li class=\"l\"> En mekanism f\u00f6r \u201dsched_ext\u201d (SCX) har lagts till, som m\u00f6jligg\u00f6r anv\u00e4ndning av eBPF f\u00f6r att skapa CPU-schemal\u00e4ggare som t\u00e4cker n\u00e4stan alla aspekter av planeringen av uppgiftsk\u00f6rning och f\u00f6rdelning av CPU-resurser. S\u00e5dana schemal\u00e4ggare kan laddas in dynamiskt och k\u00f6ras inom Linux-k\u00e4rnan. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sv\/vps\/abuzoustojchivye-vps\/\"   title=\"en virtuell maskin\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4348\">en virtuell maskin<\/a> eBPF. Mekanismen sched_ext f\u00f6renklar skapandet av uppgiftsspecifika schemal\u00e4ggare, m\u00f6jligg\u00f6r experimenterande med olika tekniker och strategier f\u00f6r schemal\u00e4ggning, samt g\u00f6r det m\u00f6jligt att snabbt skapa fungerande prototyper och ers\u00e4tta schemal\u00e4ggare i realtid i arbetsinfrastrukturer. Till exempel kan en schemal\u00e4ggare skapas med hj\u00e4lp av sched_ext som tar h\u00e4nsyn till specifika applikationsegenskaper och dynamiskt \u00e4ndrar schemal\u00e4ggningsstrategin f\u00f6r dess genomf\u00f6rande beroende p\u00e5 systemets tillst\u00e5nd och andra faktorer.\n<li class=\"l\"> I paketet ing\u00e5r den \u00e5terst\u00e5ende delen av patcharna som beh\u00f6vs f\u00f6r att mekanismen SCHED_DEADLINE-servern ska fungera, som l\u00f6ser problemet med att vanliga uppgifter inte f\u00e5r tillr\u00e4ckligt med CPU-resurser under CD-monopol av h\u00f6gprioriterade (realtime) uppgifter. F\u00f6r att f\u00f6rhindra monopol p\u00e5 CPU-anv\u00e4ndningen har k\u00e4rnan tidigare anv\u00e4nt mekanismen Realtime throttling, som f\u00f6rs\u00f6kte reservera 5 % f\u00f6r l\u00e5gt prioriterade uppgifter, vilket l\u00e4mnade 95 % av tiden f\u00f6r realtidsuppgifter. Denna mekanism var inte optimal, eftersom vanliga uppgifter i m\u00e5nga situationer inte fick tillr\u00e4ckligt med processorstid. SCHED_DEADLINE-servern implementerar en mer effektiv resursreservationsmekanism.\n<li class=\"l\"> Integrationen av uppgiftsschemal\u00e4ggaren EEVDF (Earliest Eligible Virtual Deadline First) \u00e4r nu slutf\u00f6rd, vilket ers\u00e4tter schemal\u00e4ggaren CFS (Completely Fair Scheduler) som levererades fr\u00e5n och med k\u00e4rna 2.6.23. Den nya schemal\u00e4ggaren tar vid valet av n\u00e4sta process f\u00f6r att \u00f6verf\u00f6ra utf\u00f6randet h\u00e4nsyn till processer som inte har f\u00e5tt tillr\u00e4ckligt med CPU-resurser eller som f\u00e5tt or\u00e4ttvist mycket processorstid. I det f\u00f6rsta fallet pressas kontrollen \u00f6ver till processen, och i det andra skjuts den upp. Den gamla CFS-schemal\u00e4ggaren anv\u00e4nde heuristik och fininst\u00e4llningar f\u00f6r att identifiera processer som kr\u00e4vde s\u00e4rskild uppm\u00e4rksamhet, medan den nya schemal\u00e4ggaren sp\u00e5rar dem mer explicit och kr\u00e4ver ingen fininst\u00e4llning. Det f\u00f6rv\u00e4ntas att EEVDF kommer att minska latensen vid utf\u00f6randet av uppgifter, vilket CFS hade problem med att schemal\u00e4gga.\n<li class=\"l\"> I k\u00e4rnans n\u00f6dsituationhanterare - DRM Panic, som anv\u00e4nder DRM (Direct Rendering Manager) subsystem f\u00f6r att visa en visuell rapport i stil med \u201dbl\u00e5sk\u00e4rm\u201d, har m\u00f6jligheten att visa logotyp och QR-kod med kmsg-rapporten vid en n\u00f6dsituation lagts till. Eftersom QR-koden bara rymmer 2953 byte, finns det en m\u00f6jlighet DRM_PANIC_SCREEN_QR_CODE_URL, d\u00e4r kmsg-rapporten komprimeras med zlib och bifogas som parameter till URL:en, vilket g\u00f6r det m\u00f6jligt att \u00f6verf\u00f6ra cirka 7500 byte via QR-kod V40. Vid paketkompilering kan distributioner ange en grundl\u00e4ggande l\u00e4nk f\u00f6r URL, vilket g\u00f6r det m\u00f6jligt att organisera en \u00f6verg\u00e5ng till en sida f\u00f6r att skicka en felrapport. F\u00f6r att v\u00e4lja QR-kodformat \u00e4r inst\u00e4llningen DRM_PANIC_SCREEN_QR_VERSION tillg\u00e4nglig.\n<li class=\"l\"> St\u00f6d f\u00f6r ARM POE (Permission Overlay Extension) har lagts till, vilket g\u00f6r det m\u00f6jligt att st\u00e4lla in \u00e5tkomstbeh\u00f6righeter f\u00f6r minnesomr\u00e5den. Genom denna f\u00f6rl\u00e4ngning kan system med ARM64-processorer implementera en mekanism f\u00f6r Memory Protection Keys, som anv\u00e4nds f\u00f6r att begr\u00e4nsa \u00e5tkomsten till minnessidor utan att \u00e4ndra minnestabellerna.\n<li class=\"l\"> F\u00f6r arkitekturerna Loongarch, ARM64, PowerPC och s390 har implementationen av systemanropet getrandom() \u00f6verf\u00f6rts, optimerad med hj\u00e4lp av mekanismen vDSO (virtual dynamic shared object), vilket g\u00f6r det m\u00f6jligt att flytta systemanropets hanterare fr\u00e5n k\u00e4rnan till anv\u00e4ndarutrymmet och undvika kontextbyten. Optimeringen g\u00f6r det m\u00f6jligt att h\u00e4mta slumpm\u00e4ssiga tal upp till 15 g\u00e5nger snabbare.\n<li class=\"l\"> I io_uring-subsystemet f\u00f6r asynkron in- och utdata har m\u00f6jligheten att anv\u00e4nda absoluta tidsgr\u00e4nser lagts till, som aktiveras vid ett visst klockslag p\u00e5 systemklockan (tidigare kunde endast relativa tidsgr\u00e4nser st\u00e4llas, d\u00e4r varaktigheten angavs fr\u00e5n operationens b\u00f6rjan).\n<li class=\"l\"> Filer f\u00f6r att generera bindningar f\u00f6r biblioteket libcpupower med hj\u00e4lp av SWIG-verktyget har lagts till, vilket m\u00f6jligg\u00f6r skapandet av bindningar fr\u00e5n C\/C++-kod f\u00f6r olika programmeringsspr\u00e5k. Bindningarna g\u00f6r det m\u00f6jligt att skapa skript i Python och andra spr\u00e5k, och anv\u00e4nda dem f\u00f6r att ut\u00f6ka funktionaliteten i biblioteket libcpupower, som tillhandah\u00e5ller API:er f\u00f6r att hantera cpufreq och drivrutiner fr\u00e5n anv\u00e4ndarutrymmet.\n<li class=\"l\"> I verktyget cpuidle har avbildningen av tillst\u00e5ndet f\u00f6r inaktivitet \u201dresidency\u201d implementerats, vilket anv\u00e4nds f\u00f6r realtids-system och tar h\u00e4nsyn till den minimala tid som processorn m\u00e5ste vara i inaktivitetstillst\u00e5nd f\u00f6r att motivera energikostnaden f\u00f6r att g\u00e5 in och ut ur detta tillst\u00e5nd.\n<li class=\"l\"> M\u00f6jligheten att anv\u00e4nda Clang-kompilatorn f\u00f6r att bygga den standard S-C-bibliotek nolibc, som ing\u00e5r i k\u00e4llkoden till Linux-k\u00e4rnan och erbjuder en avskiljning ovanf\u00f6r grundl\u00e4ggande systemanrop, har lagts till. Vid byggande av nolibc med Clang till\u00e5ts anv\u00e4ndning av optimering vid l\u00e4nkning (LTO).\n<li class=\"l\"> Vissa cgroup1-gr\u00e4nssnitt har f\u00f6rklarats som f\u00f6r\u00e5ldrade, s\u00e5som TCP-redovisning, den f\u00f6rsta versionen av mjuka gr\u00e4nser (soft limit) och hantering av utt\u00f6mning av ledigt minne. St\u00f6det f\u00f6r dessa funktioner kvarst\u00e5r f\u00f6r n\u00e4rvarande fullt ut, och en varning har utf\u00e4rdats f\u00f6r att unders\u00f6ka antalet anv\u00e4ndare som forts\u00e4tter att anv\u00e4nda dessa m\u00f6jligheter.\n<li class=\"l\"> M\u00f6jlighet att konfigurera en ringbuffer f\u00f6r sp\u00e5rning har lagts till f\u00f6r att spara insamlade data efter omstart, vilket g\u00f6r att ansamlad fels\u00f6kningsinformation inte g\u00e5r f\u00f6rlorad vid en k\u00e4rnabort. Data sparas i minnet. Aktivering g\u00f6rs via k\u00e4rnans kommandoradsparameter trace_instance, till exempel st\u00e4llning av \"trace_instance=boot_map@0x285400000:12M\" reserverar 12 MB minne p\u00e5 adress 0x285400000 f\u00f6r buffern \"boot_map\", som kommer att vara tillg\u00e4nglig via filen \/sys\/kernel\/tracing\/instances\/boot_map.\n<li class=\"l\"> \u00d6verf\u00f6ringen av \u00e4ndringar fr\u00e5n grenen Rust-for-Linux forts\u00e4tter, relaterat till anv\u00e4ndningen av Rust som ett andra spr\u00e5k f\u00f6r utveckling av drivrutiner och k\u00e4rnmoduler (st\u00f6d f\u00f6r Rust \u00e4r inte aktiverat som standard, och leder inte till att Rust inkluderas bland obligatoriska byggberoenden till k\u00e4rnan). Modulerna 'list' och 'rbtree' har lagts till f\u00f6r att arbeta med dubbell\u00e4nkade listor och r\u00f6d-svarta s\u00f6ktr\u00e4d. Funktionaliteten hos modulerna 'init', 'sync', 'types' och 'error' har ut\u00f6kats. M\u00f6jlighet att anv\u00e4nda Rust-kod vid k\u00e4rnbyggnation med skydd mot Spectre-attacker (alternativ MITIGATION_{RETHUNK, RETPOLINE, SLS}), anv\u00e4ndning av fels\u00f6kningssystemet KASAN, mekanismer f\u00f6r kCFI (kernel Control Flow Integrity) och Shadow Call, samt vid anv\u00e4ndning av ytterligare GCC-plugin. En drivrutin f\u00f6r Ethernet-kontrolleraren Applied Micro QT2025 PHY, skriven i Rust, har lagts till. En separat webbplats med dokumentation har f\u00f6rberetts \u2014 rust.docs.kernel.org.\n<li class=\"l\"> En utility, xdrgen, har lagts till i k\u00e4llkoden f\u00f6r k\u00e4rnan f\u00f6r att omvandla XDR-specifikationer (eXternal Data Representation) till XDR-kodnings- och avkodningsfunktioner som \u00e4r skrivna i C-stil, s\u00e5som det anv\u00e4nds i Linux-k\u00e4rnan.\n<li class=\"l\"> En \u00e4ndring har antagits i k\u00e4rnan som implementerar en mekanism f\u00f6r att maskera pekare f\u00f6r att minska antalet l\u00e5ngsamma anrop av barrier_nospec() i den 64-bitars funktionen copy_from_user(), som anv\u00e4nds f\u00f6r att kopiera data till k\u00e4rnan fr\u00e5n anv\u00e4ndarrummet. Anv\u00e4ndning av maskering p\u00e5skyndar testet 'per_thread_ops' med 2.6%, vilket bed\u00f6mer antalet operationer som kan utf\u00f6ras i en enda tr\u00e5d.\n<li class=\"l\"> En ny USB-drivrutin har lagts till, vilket g\u00f6r att protokollet 9pfs kan anv\u00e4ndas som transport f\u00f6r \u00f6verf\u00f6ring och mottagning av data fr\u00e5n USB-enheter vid montering av FS 9p ovanp\u00e5 USB (t.ex. 'mount -t 9p -o trans=usbg,aname=\/path\/to\/fs  \/mnt\/9'). Som exempel p\u00e5 anv\u00e4ndning av den nya drivrutinen anges anv\u00e4ndningen ist\u00e4llet f\u00f6r NFS f\u00f6r att organisera inladdning av rotpartitionen vid utveckling av inbyggda enheter.                    <\/ul>\n<li class=\"l\"> <b>Disksubsystem, in- och utmatning och filsystem<\/b>\n<ul>\n<li class=\"l\"> Det har lagts till m\u00f6jlighet i VFS-underdelen att arbeta med lagringsenheter vars blockstorlek \u00e4r st\u00f6rre \u00e4n storleken p\u00e5 minnessidan i systemet. I filsystem st\u00f6ds denna funktionalitet f\u00f6r n\u00e4rvarande endast i XFS.\n<li class=\"l\"> I FUSE-subsystemet, som m\u00f6jligg\u00f6r skapandet av filsystemimplementationer som fungerar i anv\u00e4ndarutrymme, har st\u00f6d f\u00f6r mappning av anv\u00e4ndaridentifierare f\u00f6r monterade filsystem lagts till, vilket anv\u00e4nds f\u00f6r att matcha filer f\u00f6r en viss anv\u00e4ndare p\u00e5 ett monterat fr\u00e4mmande partition med en annan anv\u00e4ndare i det aktuella systemet.\n<li class=\"l\"> En ny fcntl-operation F_CREATED_QUERY har implementerats, vilket ger applikationen m\u00f6jlighet att avg\u00f6ra om en fil som \u00f6ppnades med flaggan O_CREAT skapades eller om den redan fanns innan.\n<li class=\"l\"> Systemanropet name_to_handle_at() har f\u00e5tt m\u00f6jlighet att anv\u00e4nda unika 64-bitars identifierare f\u00f6r monteringspunkter f\u00f6r att undvika tidst\u00e4vling vid analys av \/proc\/mountinfo.\n<li class=\"l\"> Storleken p\u00e5 strukturen &#171;file&#187; i k\u00e4rnan har minskats fr\u00e5n 232 till 184 byte, vilket g\u00f6r att minnesanv\u00e4ndningen kan minskas p\u00e5 system som aktivt arbetar med filer.\n<li class=\"l\"> Montering av filsystem till monteringspunkter inom hierarkin \/proc, exempelvis i \/proc\/PID\/fd, \u00e4r f\u00f6rbjudet eftersom det kan skapa potentiella s\u00e4kerhetsproblem.\n<li class=\"l\"> I pseudo-FS NSFS (NameSpace FS), som anv\u00e4nds f\u00f6r att arbeta med namnrymder, har implementeringen av ytterligare information om namnrymders monteringspunkter genomf\u00f6rts.\n<li class=\"l\"> I filsystemet EROFS (Extendable Read-Only File System), avsett f\u00f6r anv\u00e4ndning p\u00e5 partitioner som \u00e4r tillg\u00e4ngliga i skrivskyddat l\u00e4ge, har st\u00f6d f\u00f6r montering av filsystem direkt fr\u00e5n diskavbilder som sparats som filer lagts till.\n<li class=\"l\"> I XFS har nya ioctl-kommandon XFS_IOC_START_COMMIT och XFS_IOC_COMMIT_RANGE lagts till f\u00f6r att utbyta inneh\u00e5ll mellan tv\u00e5 filer.\n<li class=\"l\"> I NFS har st\u00f6d f\u00f6r protokollet &#171;LOCALIO&#187; lagts till, vilket g\u00f6r det m\u00f6jligt att avg\u00f6ra om klienten och <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sv\/server\/\"   title=\"server\" data-wpil-keyword-link=\"linked\">server<\/a> I filsystemet Btrfs har prestandaoptimeringar f\u00f6reslagits, koden har refaktorerats, l\u00e5somr\u00e5det f\u00f6r extenter har minskats vid l\u00e4soperationer, arbetet med \u00f6verg\u00e5ngen till anv\u00e4ndning av sid-ark (page folios) har fortsatt, och automatisk minnesfris\u00e4ttning f\u00f6r strukturen btrfs_path har implementerats.\n<li class=\"l\"> I filsystemet Ext4 har fel relaterade till blockallokering, hantering av extenter, mekanismen \"fast commit\" och journalf\u00f6ring \u00e5tg\u00e4rdats.\n<li class=\"l\"> I filsystemet Ext4 har fel relaterade till blockallokering, hantering av extenter, &#171;fast commit&#187;-mekanismen och journalf\u00f6ring \u00e5tg\u00e4rdats.                  <\/ul>\n<li class=\"l\"> <b>Virtualisering och s\u00e4kerhet<\/b>\n<ul>\n<li class=\"l\"> Den LSM-modul IPE (Integrity Policy Enforcement) har lagts till, utvecklad av Microsoft f\u00f6r att ut\u00f6ka det befintliga systemet f\u00f6r mandat\u00e5tkomstkontroll. Modulen m\u00f6jligg\u00f6r att definiera en \u00f6vergripande policy f\u00f6r att s\u00e4kerst\u00e4lla integritet i hela systemet, som angiver vilka \u00e5tg\u00e4rder som \u00e4r till\u00e5tna och p\u00e5 vilket s\u00e4tt autentisering av komponenter b\u00f6r verifieras. Till exempel kan man med hj\u00e4lp av IPE ange vilka k\u00f6rbara filer som f\u00e5r startas med h\u00e4nsyn till att de \u00f6verensst\u00e4mmer med referensversionen genom kryptografiska hashv\u00e4rden som tillhandah\u00e5lls av systemet dm-verity.\n<li class=\"l\"> Vid kompileringen av k\u00e4rnan har det blivit m\u00f6jligt att separat aktivera tillg\u00e4ngliga skyddsmetoder mot olika s\u00e5rbarheter av typen Spectre i CPU:n. I Kconfig f\u00f6resl\u00e5s nya parametrar: MITIGATE_MDS (skydd mot s\u00e5rbarhet f\u00f6r Microarchitectural Data Sampling), MITIGATE_TAA (skydd mot s\u00e5rbarhet f\u00f6r TSX Asynchronous Abort), MITIGATE_MMIO_STALE_DATA (skydd mot s\u00e5rbarhet f\u00f6r MMIO Stale Data), MITIGATE_L1TF (skydd mot s\u00e5rbarhet f\u00f6r L1 Terminal Fault), MITIGATE_RETBLEED (skydd mot s\u00e5rbarhet f\u00f6r Retbleed), MITIGATE_SPECTRE_V1, MITIGATE_SPECTRE_V2 (skydd mot s\u00e5rbarheter i Spectre), MITIGATE_SRBDS (skydd mot s\u00e5rbarhet f\u00f6r Special Register Buffer Data Sampling), MITIGATE_SSB (skydd mot s\u00e5rbarhet f\u00f6r Speculative Store Bypass).\n<li class=\"l\"> Parametern proc_mem.force_override har lagts till i kommandoraden och en upps\u00e4ttning bygginst\u00e4llningar i Kconfig (PROC_MEM_FORCE_ALWAYS, PROC_MEM_FORCE_PTRACE och PROC_MEM_FORCE_NEVER) som g\u00f6r det m\u00f6jligt att f\u00f6rbjuda modifiering av minne via \/proc\/pid\/mem.\n<li class=\"l\"> LSM-subsystemet (Linux security module) har \u00f6verg\u00e5tt till att anv\u00e4nda statiska anrop, vilket har f\u00f6rst\u00e4rkt s\u00e4kerheten och f\u00f6rb\u00e4ttrat prestandan.\n<li class=\"l\"> Det har blivit m\u00f6jligt att anv\u00e4nda standardk\u00e4rnor f\u00f6r ARM64-arkitekturen i virtuella milj\u00f6er som k\u00f6rs p\u00e5 Android-system med modifierad hypervisor KVM (protected KVM).\n<li class=\"l\"> I LSM-modulen Landlock, som begr\u00e4nsar interaktionen mellan en grupp processer och den externa milj\u00f6n, har konceptet &#171;IPC scoping&#187; implementerats f\u00f6r att selektivt begr\u00e4nsa interaktionen med sandbox-milj\u00f6er med hj\u00e4lp av Unix-sockets och signaler. Till exempel kan man f\u00f6rbjuda uppkopplingar med Unix-sockets fr\u00e5n sandbox-milj\u00f6n till processer d\u00e4r isolering inte till\u00e4mpas, men till\u00e5ta uppkopplingar till processer inom samma scope-omr\u00e5de.\n<li class=\"l\"> I hypervisorn KVM har en flagga lagts till i CPUID f\u00f6r g\u00e4stsystem som signalerar st\u00f6d f\u00f6r AVX10.1-f\u00f6rl\u00e4ngningar.            <\/ul>\n<li class=\"l\"> <b>N\u00e4tverkssystemet<\/b>\n<ul>\n<li class=\"l\"> Enheten Device Memory TCP har lagts till, vilket m\u00f6jligg\u00f6r anv\u00e4ndning av n\u00e4tverks-sockets f\u00f6r direkt\u00f6verf\u00f6ring av data fr\u00e5n periferiminne \u00f6ver n\u00e4tverket (zero-copy-l\u00e4ge) och direkt placering av data fr\u00e5n n\u00e4tverkspaket i enhetens minnesomr\u00e5de p\u00e5 mottagarsidan. Data som \u00f6verf\u00f6rs i paketen g\u00e5r direkt fr\u00e5n n\u00e4tverkskortet till periferienheten eller fr\u00e5n enhetens minne till n\u00e4tverkskortet, utan att passera CPU, medan pakethuvuden hamnar i vanliga k\u00e4rnbuffrar.\n<li class=\"l\"> M\u00f6jligheterna f\u00f6r flera Ethernet och tr\u00e5dl\u00f6sa drivrutiner har ut\u00f6kats. Till exempel har drivrutinen Intel iwlwifi f\u00e5tt st\u00f6d f\u00f6r att flytta RLC\/SMPS-operationer till firmware-sidan, drivrutinen RealTek rtw89 har f\u00f6rb\u00e4ttrad prestanda och f\u00e5tt st\u00f6d f\u00f6r chipen RTL8852BT\/8852BE-VT (WiFi 6), Ethernet-drivrutinen microchip har f\u00e5tt st\u00f6d f\u00f6r specifikationerna IEEE 802.3bw (100BASE-T1) och IEEE 802.3bp, och implementeringarna av virtuella Ethernet Microsoft vNIC och IBM veth har f\u00f6rb\u00e4ttrats. Nya drivrutiner har lagts till f\u00f6r Ethernet-chipen Realtek RTL9054, RTL9068, RTL9072, RTL9075, RTL9068, RTL9071 och Microchip LAN8650\/1 10BASE-T1S MAC-PHY.\n<li class=\"l\"> I MPTCP (MultiPath TCP), en utvidgning av TCP-protokollet f\u00f6r att leverera TCP-paket \u00f6ver flera v\u00e4gar samtidigt via olika n\u00e4tverksgr\u00e4nssnitt, har storleken p\u00e5 de viktkoefficienter som anv\u00e4nds f\u00f6r routing \u00f6kat fr\u00e5n 8 till 16 bitar. Implementering av detektering av f\u00f6rlorad trafik (blackhole) har genomf\u00f6rts, och f\u00f6rs\u00f6ken att etablera anslutningar med system som leder till trafikf\u00f6rlust har pausats under en period.\n<li class=\"l\"> F\u00f6r IPv6 har st\u00f6d f\u00f6r flaggan &#171;p&#187; i PIO (Prefix Information Option) implementerats, vilket anv\u00e4nds i annonseringar RA (IPv6 Router Advertisements) f\u00f6r att v\u00e4lja modell f\u00f6r distribution av klienter via DHCPv6-PD (DHCPv6 Prefix Delegation, RFC9663) i st\u00e4llet f\u00f6r att tilldela individuella adresser baserat p\u00e5 prefix, med hj\u00e4lp av SLAAC (Stateless Address Autoconfiguration). I IPv6 IOAM6 har support f\u00f6r det nya inkapslingsl\u00e4get tunsrc lagts till, vilket m\u00f6jligg\u00f6r h\u00f6gre prestanda.\n<li class=\"l\"> Prestanda f\u00f6r hantering av IPsec-kontrollpaket har \u00f6kat.\n<li class=\"l\"> Prestandan vid rensning (flush) av stora m\u00e4ngder nftables-regler har f\u00f6rb\u00e4ttrats. St\u00f6det f\u00f6r SCTP-protokollet har f\u00f6rb\u00e4ttrats i nfnetlink_queue.\n<li class=\"l\"> I API:et ethtool har st\u00f6d f\u00f6r att binda flera n\u00e4tverkskort till ett enda n\u00e4tverksgr\u00e4nssnitt lagts till.                      <\/ul>\n<li class=\"l\"> <b>Utrustning<\/b>\n<ul>\n<li class=\"l\"> I AMDGPU-drivrutinen forts\u00e4tter arbetet med att implementera st\u00f6d f\u00f6r GPU AMD RDNA4 (&#171;GFX12&#187;). M\u00f6jligheten att \u00e5terst\u00e4lla enskilda uppgiftsk\u00f6er utan att \u00e5terst\u00e4lla hela GPU:ns tillst\u00e5nd har lagts till.\n<li class=\"l\"> Arbetet med drm-drivrutinen (Direct Rendering Manager) Xe f\u00f6r GPU:er baserade p\u00e5 Intel Xe-arkitekturen, som anv\u00e4nds i Intel Arc-grafikkort och integrerad grafik som b\u00f6rjar med Tiger Lake-processorer, har fortsatt. Den nya versionen inkluderar st\u00f6d f\u00f6r GPU:er baserade p\u00e5 mikroarkitekturerna Battlemage och Lunar Lake. St\u00f6d f\u00f6r CCS-modifierare (Color Control Surface) Xe2 f\u00f6r att hantera inst\u00e4llningar f\u00f6r b\u00e5de integrerade och diskreta GPU:er har introducerats.\n<li class=\"l\"> I i915-drivrutinen har m\u00f6jligheten att visa information om fl\u00e4kthastighet via HWMON- eller sysfs-gr\u00e4nssnittet (attributet &#171;fan1_input&#187;) implementerats. Parametern &#171;i915.modeset&#187; har f\u00f6rklarats som f\u00f6r\u00e5ldrad; ist\u00e4llet f\u00f6r &#171;i915.modeset=0&#187; b\u00f6r parametern &#171;i915.nomodeset&#187; anv\u00e4ndas.\n<li class=\"l\"> I DRM-drivrutinen msm (GPU Qualcomm Adreno) har st\u00f6d f\u00f6r GPU:erna A615, A306 och A621 lagts till.\n<li class=\"l\"> I Nouveau-drivrutinen har interna strukturer omarbetats och rensats.\n<li class=\"l\"> I drivrutinen intel_pstate, som hanterar energikonsumtionsparametrar (P-state) p\u00e5 system med Intel-processorer, har st\u00f6d f\u00f6r hybrida system med asymmetriska (olika specifikationer) CPU:er lagts till, liksom st\u00f6d f\u00f6r str\u00f6mhantering f\u00f6r processorer baserade p\u00e5 mikroarkitekturerna Granite Rapids och Sierra Forest. I drivrutinen intel_idle har st\u00f6d f\u00f6r CPU Xeon Granite Rapids lagts till. I drivrutinen intel_rapl har m\u00f6jligheten att k\u00e4nna igen processer fr\u00e5n AMD:s familj 1Ah och Intel ArrowLake-U-processorer s\u00e4kerst\u00e4llts.\n<li class=\"l\"> Arbetet med att inkludera f\u00f6r\u00e4ndringar f\u00f6r st\u00f6d f\u00f6r ARM SoC Snapdragon X Elite, som anv\u00e4nder den egna 12-k\u00e4rniga Qualcomm Oryon CPU:n och Qualcomm Adreno GPU, har fortsatt. Chippet \u00e4r avsett f\u00f6r anv\u00e4ndning i b\u00e4rbara datorer och PC, och \u00f6vertr\u00e4ffar m\u00e5nga prestandatest av Apple M3 och Intel Core Ultra 155H.\n<li class=\"l\"> St\u00f6d har lagts till f\u00f6r ARM-plattformar, SoC och enheter: 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\"> St\u00f6d har lagts till f\u00f6r sk\u00e4rmpanelerna 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\"> Ljudsystemet har f\u00e5tt st\u00f6d f\u00f6r chip och kodekar RME Digiface USB, AMD ACP 7.1, Mediatek MT6367, MT8365, Realtek RTL1320, C-Media CM9825. Gamla ljuddrivrutiner f\u00f6r ASoC Intel har f\u00f6rklarats som f\u00f6r\u00e5ldrade och det rekommenderas att anv\u00e4nda AVS-drivrutiner ist\u00e4llet. M\u00e5nga f\u00f6rb\u00e4ttringar har inf\u00f6rts i SoundWire-drivrutinen.      <\/ul>\n<\/ul>\n<p>K\u00e4lla: <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.4 - 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\/sv\/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.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\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\/sv\/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\udd47Uppsl\u00e4pp av k\u00e4rnan Linux 6.12 med st\u00f6d f\u00f6r Realtime-l\u00e4ge | ProHoster","description":"Efter tv\u00e5 m\u00e5naders utveckling har Linus Torvalds sl\u00e4ppt k\u00e4rnan Linux 6.12.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/news\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","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\/sv\/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\/sv\/wp-json\/wp\/v2\/posts\/120593","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=120593"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/120593\/revisions"}],"predecessor-version":[{"id":173076,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/120593\/revisions\/173076"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=120593"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=120593"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=120593"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}