
Трећи кандидат за лансирање за будућност 6.18 стиже Без помпе и са тим мирним пулсом који екосистем кернела толико цени. Према речима самог Линуса Торвалдса, бројке су умерене и циклус напредује нормално; другим речима, Линукс 6.18-rc3 полира, поправља и подешава без револуција, фокусирајући се на поправке распоређене по целом стаблу.
У својој краткој белешци, Торвалдс истиче да највећи део ове серије чине SMB Direct исправке, и на страни клијента и на страни сервера, са добрим бројем закрпа за фино подешавање. Остатак се дистрибуира као и обично: приближно половина утиче на драјвере (такође додајући DeviceTree повезивања) и Остало су разне исправке: XFS, умрежавање, io_uring, DRM, Rust Binder и компанија. Ако вас занимају детаљи, постоји кратак дневник са десетинама промена које ћемо прегледати по подсистемима у наставку.
Кључне нове функције у Линуксу 6.18-rc3
SMB Direct блок се истиче у овом недељном прегледу. И SMB клијент и сервер подешавају кредите и редове чекања како би спречили регресије и недостатак ресурса. Неколико делова подсистема подиже лествицу осигуравајући да Структуре слања/испуштања резервишу довољно простора и да стања прекида везе робусно пробуде све нити које чекају.
Поред тога, у XFS су убачене исправке како би се спречиле заузете петље у колектору сегмената, кеширале отворене области у i_private, пооштрило руковање застарелим опцијама монтирања и поправите осетљиве делове провере и блокирања линковаПромене XFS-а у овом rc3 фокусирају се на стабилност и јасну дијагностику за застареле параметре.
Друга половина колача је уобичајена мешавина драјвера и платформи: од DRM/AMD и DRM/Xe до Rockchip-а, преко mlx5/mlx5e умрежавања, Realtek и Micrel PHY-ова, UFS/Qualcomm-а, USB/xHCI DbC-а и још много тога. То је „водоводски“ rc3, у коме Вредност је у збиру малих корекција који спречавају падове система, цурење меморије или неусклађеност времена.
Мала и средња предузећа и SMB Direct: фокус на робусност
El кратки дневник јасно показује напор који SMB Direct улаже. Међу најрелевантнијим тачкама:
- SMB клијент и сервер подешавају простор за захтеве за рад, спречавајући препуњавање и осигуравајући да је одвод QP-а (ib_drain_qp) безбедан. Бројачи се уводе и троше. Кредити за испоруку на критичним путевима.
- Сервер поједностављује управљање листама браће и сестара на путањама слања (flush/send_done) и чини да RDMA прекид везе пробуди све нити при првом покушају.
- Трагови у smb3_rw_credits су појачани, укључени елементи су преуређени тако да су структуре доступне у тачкама праћења и Потписани типови у TCP кредитним структурама су фиксни.
Генерално, промене у SMB Direct-у имају за циљ да осигурају да су RDMA преноси под оптерећењем глатки, да се понашају предвидљиво и да обрађују стања грешака без остављања икаквих проблема. То су подешавања која, иако суптилна, направите разлику у окружењима са високим перформансама.
Системи датотека и складиштење
Одељак од фајл системи и блокови укључује неколико значајних делова:
- XFS: избегавање заузетих петљи, кеширање зона, забрана __GFP_NOFAIL у иницијализацији FS контекста, побољшање порука за застареле опције и поправите браве и секторске бројаче.
- Btrfs: Исправке у ref-verify (IS_ERR у односу на NULL), ослобађање делимично иницијализоване fs_info при падовима система и исправка у btrfs send-у како би се избегло дуплирање rmdir операција са extrefs-овима.
- EROFS: Пооштравање руковања злонамерно кодираним екстензијама ради спречавања петљи и објединити ретроактивне претраге на оштећеним подстраницама.
- Блоковски слој: Примените поравнање LBA када користите информације о заштити (PI) да бисте одржали интегритет ниског нивоа.
Такође постоји активност у scsi/ufs/phy (повезивање за нове компатибилне уређаје), storvsc-у за преферирање канала са афинитетом ка процесору који издаје I/O операције и подешавања драјвера попут qla4xxx. То су делови који, заједно, побољшати стабилност и перформансе улазно/излазних операција у стварним случајевима.
Мреже: mlx5/mlx5e, повезивање, HSR и још много тога
На интернету је слика разнолика, са фокусом на возаче високих перформанси и мало путованим угловима:
- mlx5/mlx5e: Маске регистара PPHCR у PCAM-у, прескакање упита ако уређај не подржава регистар и исправке RX-а приликом генерисања skb-ова из нелинеарних xdp_buff-ова у легаси и striding редовима. Такође, Исправке у IPsec-у на MPV уређајима и devcom враћа NULL при грешкама.
- Повезивање: Низ подређених уређаја се ажурира у режиму емитовања и исправљају се могући губици или дуплирања у обавештењима вршњака.
- HSR: Спречава креирање уређаја са робовима из других мрежа, затварајући недоследну путању конфигурације.
- Gro и gro_cells: hwtstamps се чисте на путањама поновне употребе skbs и неравнотежа браве је исправљена у gro_cells_receive.
- Остало: virtio-net нулира неискоришћена хеш поља; hibmcge бира FIXED_PHY; dlink користи dev_kfree_skb_any; stmmac/rk исправља функцију избора такта; enetc исправља застоје MDIO закључавања и вредност TRUESIZE.
У целини, мрежни стек добија ту малу количину закрпа које спречавају изненађења под оптерећењем и брину се о детаљима у путањама података које, ако дође до отказа, претварају се у латенцију, губитке или блокове.
Графика и екран: DRM/AMD, DRM/Xe, Rockchip и QR Panic
DRM простор се такође креће, са промене безбедности и стабилности:
- DRM/AMD дисплеј: Користите GFP_NOWAIT у контексту прекида, повећајте максимални број линкова и избегавајте NULL приступе у link→enc; такође, исправка нултог показивача на одређеним путањама.
- DRM/Xe: Сачувајте заставице виртуелних машина приликом поновног креирања и раздвајања виртуелних машина за madvise и сакријте аутоматско ресетовање madvise-а иза заставице VM_BIND, чиме се елиминишу опасне ивице.
- Rockchip: Исправна SCLIN маска за RK3228 у dw_hdmi.
- drm/panic: неколико побољшања „режима панике“ са логотипом и QR кодом: избегавање преклапања са логотипом, обезбеђивање позитивних вертикалних маргина, спречавање подељења нулом када је ширина екрана мања од ширине фонта и не укрштај странице са 24-битним пикселима.
- Intel i915: Спречавање цурења објекта панике приликом додељивања његове структуре.
Чак је и Пантор (ГПУ) подешен како би се спречиле панике језгра због делимичног одмапирања ВИ региона, досадна грешка која се манифестовала у сценаријима фрагментиране меморије. То су промене које, иако суптилне, спречити падове на правим рачунарима.
Везиво средство против рђе и класично везиво
Rust Binder наставља своје сазревање уз неколико измена: упозорење о осиротелим мапирањима је уклоњено, обавештење freeze_notif_done се поново шаље у случају неочекиваних стања, спречено је брисање FreezeListener-а ако постоје дупликати на чекању, а обавештења се пријављују само када је процес заиста замрзнут. Паралелно, класични Binder уклања проверу „invalid inc weak“ која више не доприноси. На страни ланца алата, objtool препознаје додатну Rust функцију као 'noreturn' и исечено упозорење у програму Rust Binder је очишћено.
io_uring, sqpoll и zc rx
У io_uring постоји неколико хируршких измена: исправљена је злоупотреба unlikely() у io_waitid_prep(), подешена је анотација __must_hold, исправљено је аутоматско потврђивање бафера за uring_cmd вишеструке команде и sqpoll CPU рачуноводство је поново процењено остављање getrusage() за други пут и интелигентније ажурирање времена. Такође, додат је унос у MAINTAINERS за zcrx.
Архитектуре и ACPI: RISC-V, arm64 и x86
Тхе архитектуре Они су разноврсни и специфични:
- RISC-V: pgprot_dmacoherent() је дефинисан за некохерентне уређаје, детаљи о онемогућеним процесорима се не штампају у DT-у, IPI IRQ-ови су регистровани са јединственим именима, MAX_POSSIBLE_PHYSMEM_BITS је дефинисан за zsmalloc и Непотребни застарели макрои се уклањајуТакође су исправљене неиницијализоване употребе у hwprobe-у и касно иницијализован кључ у vDSO-у.
- arm64: У MTE-у, упозорење се потискује ако је страница већ означена у copy_highpage().
- x86: Прилагођавање RETBLEED поруке за Intel, исправљање провере ревизије Entrysign-а за Zen1/Naples и Мртав код је очишћен у ублажавањима.
- ACPI/својства: Исправљен редослед аргумената у acpi_node_get_property_reference() и уклоњена упозорења када је IOMMU_API онемогућен у RIMT-у.
Такође исправља чудне делове попут pcibios_align_resource() у MIPS Malta за закључавање IO опсега и ресурсе тастатуре који су спречавали регистрацију i8042. То су мале измене које избегавајте сценарије застоја или крхке иницијализације.
Драјвери и магистрале: SPI, серијски, hwmon, GPIO, PCI/ASPM и други
Овај RC доноси добар гомила исправки у драјверима:
- SPI: Airoha-ин баговити dirmap сада враћа грешку, додаје подршку за двоструке/четвороструке операције у exec_op, враћа се на режим који није DMA ако нешто крене наопако и поправља вишеслојне флешове по LUN-у; NXP FSPI ресетује такт када је потребно, и ограничава фреквенцију према извору, поред додавања кашњења након закључавања DLL-а; Intel SPI додаје подршку за густине од 128M и нове платформе (Arrow Lake-H, Wildcat Lake).
- Серијски и ТТИ: 8250_dw обрађује грешке при ресетовању; 8250_mtk омогућава бауд такт и прослеђује га рунтим PM-у; sc16is7xx брише непотребне омогућене баудове; sh-sci исправља прекорачење FIFO-а.
- PCI/ASPM: На DeviceTree платформама, омогућени су само L0 и L1, што је конзервативна одлука да би се избегла невалидирана стања.
- GPIO: ACPI ублажава озбиљност грешке одбацивања; gpio-regmap додаје параметар fixed_direction_output; IDIO-16 модули дефинишу
максималан број важећих адреса и адресе фиксне линије. - Hwmon и pmbus: Исправљено цурење референци ка подређеним чворовима и ажурирани коефицијенти модела Max/ISL, плус детаљи о драјверу GPD вентилатора.
Паралелно, DT компатибилни модули су додати у SPI Cadence (ZynqMP/Versal-Net), Rockchip RK3506 и UFS QMP за Kaanapali, поред нових ID-ова опција (Telit FN920C04 ECM, Quectel RG255C, UNISOC UIS7720). фино подешава подршку за новопридошли хардвер.
Меморија, слабина и мм/дејмон
Област меморије такође добија пажњу: трке са obj_exts и услови конфузије NULL су избегнути у slab-у; mm/mremap исправно узима у обзир старо мапирање након DONTUNMAP-а; THP спречава конзумирање poison-а приликом раздвајања огромних страница; DAMON чисти цурења ops_filter-а и централизује логику циљања квотаУ hugetlbfs-у, тврдње закључавања се померају након раних повратака у huge_pmd_unshare().
Безбедност, праћење и Kconfig
Мали, али важни делови:
- lib/crypto: Poly1305 обнавља зависности са !KMSAN, избегавајући конфликтне конфигурације.
- include/trace: Исправљен је помоћник за бројање током покретања код неуспелих покретања; додате су SMB3 тачке праћења за кредите за читање/писање.
- Разни Kconfig: Помоћ за CONFIG_XFS_RT је побољшана, а тестови/статистика су условљени на DEBUG_FS. Исправке зависности у QCOMTEE и другим платформама.
То су дискретне измене које спречавају проблеме током конфигурације језгра и олакшавају дијагностиковање када нешто не ради исправно. Збир ових побољшања квалитета живота резултира мање изгубљеним временом.
Овај преглед верзије 6.18-rc3 јасно ставља фокус на: робусност, а не ватромет. Од SMB Direct блока до XFS подешавања, до мноштва драјвера и исправки у умрежавању, графици и меморији, све указује на поузданије језгро. Додато на мапу верзија (са 6.17 као најновијим стабилним издањем и 6.12/6.6 као LTS верзијом референце), имамо кохерентну слику тренутног стања: Константна итерација, дугорочна подршка тамо где је то важно и пут миграције који сваки тим може мирно да испланира, знајући које су гране безбедне, а које су још увек у повоју.
