Portál AbcLinuxu, 6. května 2025 14:30
Jaderné noviny – 14. 9. 2017: První polovina začleňovacího okna 4.14
Články
-
Jaderné noviny – 14. 9. 2017: První polovina začleňovacího okna 4.14
Stav vydání jádra. První polovina začleňovacího okna 4.14.
Stav vydání jádra
Začleňovací okno 4.14 bylo otevřené, ke 13. září bylo do hlavního repozitáře pro toto vydání začleněno něco přes 11 tisíc neslučovacích sad změn.
Stabilní aktualizace: 4.13.1, 4.12.12 a 4.9.49 byly vydány 10. září.
Aktualizace 4.13.2, 4.12.13, 4.9.50, 4.4.88 a 3.18.71 byly v době psaní tohoto článku revidovány a vyšly 14. září. Obsahují mj. důležitou opravu chyby přetečení bufferu v kódu týkajícím se Bluetooth.
První polovina začleňovacího okna 4.14
The first half of the 4.14 merge window. Jonathan Corbet. 8. září 2017
V době psaní tohoto článku bylo do hlavního jaderného repozitáře v rámci cyklu 4.14 začleněno něco přes 8 tisíc sad změn. Jinými slovy, tempo se ani tentokrát nezpomalilo. Přestože začleňovací okno ještě nebylo u konce, došlo ke začlenění docela dost významných změn. Následuje přehled těch nejzajímavějších.
Z pohledu uživatelů to jsou následující:
- Odvíjení ORC bylo začleněno, což vede ke spolehlivějšímu zpětnému trasování jádra a patchování za chodu. Když se ORC používá místo ukazatele na rámce, jádro také běží o fous rychleji.
- Došlo k začlenění patchů režimu vláken řídících skupin. Tím se otevírá cesta, aby řízení CPU konečně získalo rozhraní verze 2 – to ale zatím začleněno nebylo, ačkoliv by se tomu tak mohlo stát ještě v cyklu 4.14.
- Funkce AMD Secure Memory Encryption je nově podporována.
- Subsystém RDMA získal nové API pro uživatelský prostor, založené na
ioctl()
. Toto API bylo zasláno do konference linux-api začátkem srpna, ale nedočkalo se žádných recenzí – možná kvůli absenci jakékoliv dokumentace. Doug Ledford ho začlenil se slovy, že „je to pod položkou Kconfig, která to označuje jako experimentální, takže začleněním se to nezmrazí v současné podobě.“ Zkušenosti ale ukazují, že k zamrznutí může dojít i navzdory označení, pokud na tom začnou záviset aplikace. Vývojáři, které toto API zajímá, by se na něj mohli chtít podívat poměrně brzy.
- Systémové volání
membarrier()
získalo novou urychlenou volbu, která vede k rychlejšímu vykonání za cenu vytvoření meziprocesorových přerušení.
- Subsystém událostí perf se stále rychle vyvíjí. Tentokrát změny zahrnují podporu profilování a trasování typů větví, schopnost vizualizovat sdružené instrukce, počáteční podporu jmenných prostorů aj. Přehled najdete v seznamu změn.
- Virtualizační subsystém lguest (který někteří z nás stále ještě nazývají „rustyvisor“) byl odstraněn pro nedostatek zájmu a údržby.
- Architektura x86 získala podporu pětiúrovňových stránkovacích tabulek, což procesorům umožňuje spravovat až 128PB rozsah virtuální paměti na 4PB fyzické paměti. Nepochybně už nikdo nikdy nebude potřebovat víc paměti.
- Omezovače rychlosti CPU nyní mohou pracovat na víc CPU. Mělo by to vést k lepší správě napájení a současně lepší odezvě, když se změní zatížení systému.
- Byly začleněny patche
MSG_ZEROCOPY
, které přidávají síťový přenos bez kopírování (zero-copy transmission).
- Pokračuje pokrok vstříc lepšímu škálování odkládacího prostoru. Konkrétně je zpožděno rozdělování velkých stránek, dokud nejsou odswapovány. Tím práce nekončí (cílem je velké stránky ukládat v odkládacím prostoru jako velké stránky), ale i tak přináší inzerované 42% zlepšení propustnosti swapování.
- Nová volba
MADV_WIPEONFORK
systémového volání madvise()
způsobí, že příslušný rozsah paměti bude po forku v procesu potomka vypadat jako samé nuly. Od stávající MADV_DONTFORK
se to liší v tom, že rozsah paměti bude v potomkovi stále platný.
- Nově podporovaný hardware zahrnuje:
- Audio: kodeky Realtek RT274, Wolfson Microelectronics WM8524 a Cirrus Logic CS43130.
- Kryptografie: generátory pseudonáhodných čísel Allwinner Security System, akcelerátory kryptografie založené na eliptických křivkách Microchip / Atmel, AMD Secure Processor, akcelerátory hašování STMicroelectronics STM32, generátory náhodných čísel Freescale i.MX RNGC a hardwarové kryptografické akcelerátory Axis ARTPEC-6/7.
- Grafika: panely Pervasive Displays RePaper, DRM můstky na DSI Synopsys Designware MIPI, CEC rozhraní Synopsis Designware, DSI řadiče STMicroelectronics STM32 a panely obrazovek Sitronix ST7586.
- Monitorování hardwaru: Common Form Factor zdroje IBM, monitorovací čipy TI TPS53679 a teplotní senzory CPU Lantiq.
- Průmyslové I/O: AD převodníky Linear Technology LTC2471 a LTC2473, Diolan DLN-2, Cirrus Logic EP93XX, VOC senzory AMS CCS811 a ultrazvukové senzory vzdálenosti Devantech SRF02 a SRF10.
- Multimédia: senzory Omnivision OV5670, dekodéry Analog Devices ADV748x, demodulátory ST STV0910 DVB-S/S2, tunery založené na ST STV6111, AO CEC rozhraní Amlogic Meson, demodulátory tunerů založené na MaxLinear MxL5xx, infračervené vysílače založené na GPIO a PWM, IR dálková ovládání ZTE ZX a ovladače LED blesku AMS AS3645A.
- Různé: řadiče přerušení UniPhier AIDET, rádiové moduly Pi433, správa FPGA Altera Arria-V/Cyclone-V/Stratix-V CvP, IC pro správu napájení MediaTek MT6380, AHCI SATA řadiče MediaTek a SDHI DMA řadiče Renesas R-Car Gen3.
- Sítě: ethernetová rozhraní Hisilicon HNS3, adaptéry pro bezdrátové sítě Realtek RTL8822BE, ethernetové řadiče Adaptrum Anarion GMAC, SRIOV E-Switch přepínače Mellanox Technologies MLX5, ethernetové PHY Rockchip,
PCIE síťová rozhraní Huawei a PHY Marvell CP110.
- Řízení pinů: řadiče pinů SoC UniPhier PXs3, řadiče pinů NXP IMX7ULP, řadiče pinů Intel Denverton a Lewisburg, řadiče pinů Renesas R8A77995, řadiče pinů Spreadtrum SC9860, GPIO řadiče TI TPS68470 a GPIO řadiče Cavium ThunderX/OCTEON-TX.
- USB: USB PHY Ralink a USB řadiče Atheros ath10k.
- Subsystém ovladačů IRDA (infračervená zařízení) byl přesunut do stromu staging s tím, že v dohledné době bude zcela odstraněn. Uživatelé IRDA již měli přejít na lepší alternativy.
Změny viditelné vývojářům zahrnují:
- Všem, kdo bojují se sestavením jaderné dokumentace: nový skript
sphinx-pre-install
zkontroluje systém a vypíše balíčky, které je potřeba nainstalovat, aby byla sada nástrojů k sestavení dokumentace kompletní.
- Byl odstraněn
spin_unlock_wait()
. Jeho sémantika nebyla nikdy dobře definována a nebylo pro něj využití.
- Tři architektury (ARM, ARM64 a x86) nyní při návratu ze systémového volání kontrolují hodnotu omezení adres uživatelského prostoru. Děje se tak v rámci prevence bezpečnostních chyb plynoucích z neschopnosti obnovit tuto hodnotu poté, co byla změněna. Nový příznak úloh (
TIF_FSCHECK
) se používá, aby se zabránilo zpomalení návratu při hromadných systémových voláních, která nevolají set_fs()
.
- Byla začleněna schopnost lockdep „křížového uvolnění“. Tím se rozšíří automatická kontrola zámků na vzory, které dříve kontrolovat nebylo možné.
- Kvůli nevysvětleným upozorněním byl na architektuře x86 deaktivován mechanismus rychlejší ochrany před přetečením čítače referencí. Dá se očekávat, že se během cyklu 4.14 vrátí.
- Architektura arm64 získala podporu virtuálně mapovaných jaderných zásobníků.
Bylo zavedeným pořádkem, že jádro rezervovalo 20 významných čísel pro účely dynamického přiřazování čísel zařízení. Od cyklu 4.14 je k tomu vyhrazen nový rozsah 128 čísel začínajících 511 a klesajících k nule, který se použije po vyčerpání původních 20 čísel.
Podle obvyklého harmonogramu mělo začleňovací okno zůstat otevřené do 17. září, ačkoliv občas dochází k odchýlení se. K vydání 4.14 nejspíš dojde 5. nebo 12. listopadu.
Odkazy a zdroje
Další články z této rubriky
Diskuse k tomuto článku
12.10.2017 14:41
cronin | skóre: 49
Re: Jaderné noviny – 14. 9. 2017: První polovina začleňovacího okna 4.14
15.10.2017 13:54
JZD | skóre: 15
| blog:
Na_dvorku
Re: Jaderné noviny – 14. 9. 2017: První polovina začleňovacího okna 4.14
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.