
De derde lanceringskandidaat voor de toekomst 6.18 llega Zonder ophef en met die kalme puls die het kernel-ecosysteem zo waardeert. Volgens Linus Torvalds zelf zijn de aantallen gematigd en verloopt de cyclus normaal; met andere woorden, Linux 6.18-rc3 polijst, repareert en stemt af zonder revoluties, met de nadruk op oplossingen die verspreid over de boom staan.
In zijn korte notitie wijst Torvalds erop dat het grootste deel van deze batch bestaat uit de SMB Direct-fixes, zowel client- als serverzijde, met een flinke handvol fine-tuning patches. De rest wordt zoals gebruikelijk verspreid: ongeveer de helft heeft betrekking op drivers (en voegt ook DeviceTree-bindings toe) en De rest zijn diverse oplossingen: XFS, netwerken, io_uring, DRM, Rust Binder en bedrijf. Als je geïnteresseerd bent in de details, vind je hieronder een kort logboek met tientallen wijzigingen die we per subsysteem bespreken.
Belangrijkste nieuwe functies in Linux 6.18-rc3
Het SMB Direct-blok valt op in deze wekelijkse analyse. Zowel de SMB-client als de server passen credits en wachtrijen aan om regressies en resourcetekorten te voorkomen. Verschillende onderdelen van het subsysteem leggen de lat hoger door ervoor te zorgen dat De send/flush-structuren reserveren voldoende ruimte en dat de verbroken verbindingsstatus alle wachtende threads krachtig activeert.
Bovendien zijn er oplossingen in XFS ingebouwd om drukke lussen in de segmentverzamelaar te voorkomen, open gebieden in i_private te cachen, de verwerking van verouderde koppelingsopties te verscherpen en gevoelige delen van linkcontrole en -blokkering herstellenDe XFS-wijzigingen in deze rc3 zijn gericht op stabiliteit en duidelijke diagnostiek voor oudere parameters.
De andere helft van de taart bestaat uit de gebruikelijke mix van drivers en platforms: van DRM/AMD en DRM/Xe tot Rockchip, via mlx5/mlx5e-netwerken, Realtek en Micrel PHY's, UFS/Qualcomm, USB/xHCI DbC en nog veel meer. Het is een "loodgieters" rc3, waarin De waarde zit in de som van kleine correcties die crashes, geheugenlekken of timingfouten voorkomen.
SMB en SMB Direct: focus op robuustheid
El tekort maakt de inspanningen van SMB Direct duidelijk. Een paar van de meest relevante punten:
- De SMB-client en -server passen de ruimte voor werkverzoeken aan, voorkomen overloop en zorgen ervoor dat de QP-drainage (ib_drain_qp) veilig is. Tellers worden geïntroduceerd en verbruikt. Verzendtegoed op kritieke paden.
- De server vereenvoudigt het beheer van sibling-lijsten op verzendpaden (flush/send_done) en zorgt ervoor dat bij het verbreken van de RDMA-verbinding alle threads bij de eerste poging worden geactiveerd.
- Sporen in smb3_rw_credits worden versterkt, includes worden opnieuw geordend zodat structuren beschikbaar zijn in tracepoints en Ondertekende typen in TCP-kredietstructuren zijn vastgelegd.
De wijzigingen in SMB Direct zijn er in het algemeen op gericht ervoor te zorgen dat RDMA-overdrachten onder belasting soepel verlopen, zich voorspelbaar gedragen en foutstatussen verwerken zonder dat er threads blijven hangen. Deze aanpassingen zijn, hoewel subtiel, het verschil maken in omgevingen met hoge prestaties.
Bestandssystemen en opslag
Het gedeelte van bestandssystemen en blokken bevat een aantal opmerkelijke stukken:
- XFS: vermijd drukke lussen, cache zones, verbied __GFP_NOFAIL bij FS-contextinitialisatie, verbeter berichten voor verouderde opties en sloten en sectortellers repareren.
- Btrfs: oplossingen voor ref-verify (IS_ERR vs NULL), gedeeltelijk geïnitialiseerde fs_info vrijgeven bij crashes en een oplossing in btrfs send om duplicatie van rmdir-bewerkingen met extrefs te voorkomen.
- EROFS: Versterking van de afhandeling van kwaadaardig gecodeerde extensies om lussen te voorkomen en consolideer lookback-zoekopdrachten op beschadigde subpagina's.
- Bloklaag: Dwing LBA-uitlijning af bij het gebruik van Protection Information (PI) om de integriteit op laag niveau te behouden.
Er is ook activiteit in scsi/ufs/phy (bindings voor nieuwe compatibele apparaten), storvsc om kanalen te prefereren met affiniteit met de CPU die I/O uitgeeft, en aanpassingen aan drivers zoals qla4xxx. Dit zijn onderdelen die samen... I/O-stabiliteit en -prestaties versterken in echte gevallen.
Netwerken: mlx5/mlx5e, bonding, HSR en meer
Op het net is het beeld gevarieerd, met de nadruk op de drijfveren van hoge prestaties en weinig bereisde hoeken:
- mlx5/mlx5e: PPHCR-registermaskers in PCAM, het overslaan van query's als het apparaat het register niet ondersteunt, en RX-oplossingen bij het genereren van skbs vanuit niet-lineaire xdp_buffs in zowel legacy- als striding-wachtrijen. Ook Oplossingen voor IPsec op MPV-apparaten en devcom retourneert NULL bij fouten.
- Bonding: De slave-array wordt bijgewerkt in de broadcast-modus en mogelijke verliezen of duplicaties in peermeldingen worden gecorrigeerd.
- HSR: Voorkomt het aanmaken van apparaten met slaves van andere netwerken en sluit een inconsistent configuratiepad.
- Gro en gro_cells: hwtstamps worden opgeschoond op skbs hergebruikpaden en een slotonevenwicht wordt gecorrigeerd in gro_cells_receive.
- Overig: virtio-net zet ongebruikte hashvelden op nul; hibmcge selecteert FIXED_PHY; dlink gebruikt dev_kfree_skb_any; stmmac/rk repareert de klokselectiefunctie; enetc repareert MDIO-vergrendelingsdeadlocks en een TRUESIZE-waarde.
Als geheel ontvangt de netwerkstack een stroompje patches die verrassingen onder belasting voorkomen en zorgen voor de details in gegevenspaden die, als ze uitvallen, vertalen naar latentie, verliezen of blokken.
Grafische weergave en weergave: DRM/AMD, DRM/Xe, Rockchip en QR Panic
Ook de DRM-ruimte is in beweging, met veranderingen in veiligheid en stabiliteit:
- DRM/AMD-weergave: Gebruik GFP_NOWAIT in interrupt-context, verhoog de link max en vermijd NULL-toegang in link→enc; ook, een null pointer fix op specifieke paden.
- DRM/Xe: behoud VM-vlaggen bij het opnieuw aanmaken en splitsen van VM's voor Madvise en verberg Madvise Autoreset achter een VM_BIND-vlag, zodat gevaarlijke randen worden weggelaten.
- Rockchip: Corrigeer SCLIN-masker voor RK3228 in dw_hdmi.
- drm/paniek: diverse verbeteringen aan de “paniekmodus” met logo en QR: overlappingen met het logo vermijden, positieve verticale marges garanderen, deling door nul voorkomen wanneer de schermbreedte kleiner is dan de letterbreedte en kruis geen pagina's met 24-bits pixels.
- Intel i915: Voorkom paniekobjectlekken bij het toewijzen van de structuur.
Zelfs Panthor (GPU) is aangepast om te voorkomen dat kernel panics een VA-regio gedeeltelijk ontkoppelen, een vervelende bug die zich manifesteerde in gefragmenteerde geheugenscenario's. Dit zijn wijzigingen die, hoewel subtiel, voorkom crashes op echte computers.
Roestbinder en Klassieke Binder
Rust Binder blijft zich ontwikkelen met diverse aanpassingen: een waarschuwing over verweesde toewijzingen is verwijderd, de freeze_notif_done-melding wordt opnieuw verzonden bij onverwachte statussen, het verwijderen van een FreezeListener wordt voorkomen als er duplicaten in behandeling zijn, en meldingen worden alleen gerapporteerd wanneer het proces daadwerkelijk is vastgelopen. Tegelijkertijd verwijdert de klassieke Binder een "ongeldige inc zwakke" controle die niet langer bijdraagt. Aan de kant van de toolchain, objtool herkent een extra Rust-functie als 'noreturn' en een vervelende waarschuwing in Rust Binder is opgelost.
io_uring, sqpoll en zc rx
In io_uring zijn er verschillende chirurgische aanpassingen: een verkeerd gebruik van unlikely() in io_waitid_prep() is opgelost, een __must_hold-annotatie is aangepast, het automatisch vastleggen van buffers voor uring_cmd multishot-opdrachten is opgelost en sqpoll CPU-boekhouding wordt opnieuw geëvalueerd getrusage() wordt voor een andere keer bewaard en stime wordt intelligenter bijgewerkt. Ook is er een item voor zcrx toegevoegd in MAINTAINERS.
Architecturen en ACPI: RISC-V, arm64 en x86
De architecturen Ze zijn divers en specifiek:
- RISC-V: pgprot_dmacoherent() is gedefinieerd voor niet-coherente apparaten, details van uitgeschakelde CPU's worden niet afgedrukt in DT, IPI IRQ's worden geregistreerd met unieke namen, MAX_POSSIBLE_PHYSMEM_BITS is gedefinieerd voor zsmalloc en Onnodige oude macro's worden verwijderdOok zijn niet-geïnitialiseerd gebruik in hwprobe en een te laat geïnitialiseerde sleutel in de vDSO opgelost.
- arm64: In MTE wordt een waarschuwing onderdrukt als de pagina al is getagd in copy_highpage().
- x86: Pas het RETBLEED-bericht voor Intel aan, herstel de Entrysign-revisiecontrole voor Zen1/Naples en dode code wordt opgeruimd in mitigaties.
- ACPI/eigenschappen: Argumentvolgorde in acpi_node_get_property_reference() aangepast en waarschuwingen verwijderd wanneer IOMMU_API is uitgeschakeld in RIMT.
Het lost ook vreemde problemen op, zoals pcibios_align_resource() in MIPS Malta om IO-bereiken te vergrendelen, en toetsenbordbronnen die ervoor zorgden dat i8042 niet kon registreren. Dit zijn kleine wijzigingen die vermijd deadlock-scenario's of kwetsbare initialisaties.
Drivers en bussen: SPI, serieel, hwmon, GPIO, PCI/ASPM en andere
Deze rc brengt een goede een heleboel correcties in chauffeurs:
- SPI: Airoha's buggy dirmap geeft nu een foutmelding, voegt dual/quad-ondersteuning toe in exec_op, valt terug op de niet-DMA-modus als er iets misgaat en herstelt multi-plane flashes per LUN; NXP FSPI reset de klok indien nodig en grensfrequentie afhankelijk van de bron, naast het toevoegen van een vertraging na DLL-vergrendeling; Intel SPI voegt ondersteuning toe voor 128M-dichtheden en nieuwe platforms (Arrow Lake-H, Wildcat Lake).
- Serieel en TTY: 8250_dw verwerkt fouten bij het resetten; 8250_mtk schakelt de baudklok in en geeft deze door aan runtime PM; sc16is7xx wist onnodige ingeschakelde bauds; sh-sci verhelpt FIFO-overschrijding.
- PCI/ASPM: Op DeviceTree-platforms zijn alleen L0's en L1's ingeschakeld, een conservatieve beslissing om niet-gevalideerde statussen te voorkomen.
- GPIO: ACPI verzacht de ernst van debounce-fouten; gpio-regmap voegt fixed_direction_output-parameter toe; IDIO-16-modules definiëren
maximaal geldige adressen en vaste lijnadressen. - Hwmon en pmbus: referentielekken naar onderliggende knooppunten opgelost en Max/ISL-modelcoëfficiënten bijgewerkt, plus details over de GPD-ventilatordriver.
Tegelijkertijd worden DT-compatibele modules toegevoegd aan SPI Cadence (ZynqMP/Versal-Net), Rockchip RK3506 en UFS QMP voor Kaanapali, naast nieuwe optie-ID's (Telit FN920C04 ECM, Quectel RG255C, UNISOC UIS7720). verfijnt de ondersteuning voor nieuw aangekomen hardware.
Geheugen, slab en mm/damon
Ook het geheugengebied krijgt aandacht: races met obj_exts en NULL-verwarringsvoorwaarden worden in slab vermeden; mm/mremap houdt correct rekening met de oude mapping na een DONTUNMAP; THP voorkomt het consumeren van gif bij het splitsen van grote pagina's; DAMON ruimt ops_filter-lekken op en centraliseert quota-doellogicaIn hugetlbfs worden vergrendelingsbevestigingen verplaatst na eerdere returns in huge_pmd_unshare().
Beveiliging, tracering en Kconfig
Kleine maar belangrijke stukjes:
- lib/crypto: Poly1305 herstelt afhankelijkheden met !KMSAN, waardoor conflicterende configuraties worden vermeden.
- include/trace: Er is een inflight-telhulpmiddel bij mislukte opstartpogingen gerepareerd; SMB3-tracepunten toegevoegd voor lees-/schrijfcredits.
- Diverse Kconfig: CONFIG_XFS_RT help is verbeterd en tests/statistieken zijn geconditioneerd op DEBUG_FS. Afhankelijkheidsoplossingen in QCOMTEE en andere platforms.
Dit zijn discrete wijzigingen die problemen tijdens de kernelconfiguratie voorkomen en het gemakkelijker maken om te diagnosticeren wanneer iets niet goed opstart. De som van deze verbeteringen in de kwaliteit van leven resulteert in minder tijdverspilling.
Deze review van 6.18-rc3 maakt de focus duidelijk: robuustheid boven vuurwerk. Van het SMB Direct-blok tot de XFS-aanpassingen, tot de talloze drivers en fixes voor netwerken, graphics en geheugen, alles wijst op een betrouwbaardere kernel. Toegevoegd aan de versieoverzicht (met 6.17 als meest recente stabiele release en 6.12/6.6 als de LTS-versie van de referentie), hebben we een coherent beeld van de huidige status: Constante iteratie, langdurige ondersteuning waar het ertoe doet en een migratiepad dat elk team rustig kan uitstippelen, wetende welke branches veilig zijn en welke nog in de kinderschoenen staan.
