Linux Kernel lage 6.7

Apre de mwa nan devlopman, Linus Torvalds prezante liberasyon kernel Linux 6.7. Pami chanjman ki pi remakab yo: entegrasyon sistèm fichye Bcachefs, sispann sipò pou achitekti Itanium, kapasite Nouvea pou travay avèk GSP-R firmwèr, sipò pou chifreman TLS nan NVMe-TCP, kapasite pou itilize eksepsyon nan BPF, sipò pou futex nan io_uring, optimize pèfòmans pwogramè fq (Fair Queuing), sipò pou ekstansyon TCP-AO (Opsyon Otantifikasyon TCP) ak kapasite pou mete restriksyon sou koneksyon rezo nan mekanis sekirite Landlock, te ajoute kontwòl aksè nan espas non itilizatè yo ak io_uring. atravè AppArmor.

Nouvo vèsyon an gen ladan 18405 ranje soti nan 2066 devlopè, gwosè patch la se 72 MB (chanjman ki afekte 13467 dosye, 906147 liy kòd yo te ajoute, 341048 liy yo te efase). Dènye lage a te gen 15291 ranje soti nan 2058 devlopè, gwosè patch la te 39 MB. Apeprè 45% nan tout chanjman ki prezante nan 6.7 yo gen rapò ak chofè aparèy, apeprè 14% nan chanjman yo gen rapò ak ajou kòd espesifik achitekti pyès ki nan konpitè, 13% yo gen rapò ak pil rezo a, 5% yo gen rapò ak sistèm dosye, ak 3% yo gen rapò ak subsistèm nwayo entèn yo.

Prensipal inovasyon nan nwayo 6.7:

  • Disk Subsystem, I/O ak File Systems
    • Kernel la adopte kòd sistèm dosye Bcachefs, ki eseye reyalize pèfòmans, fyab ak évolutivité XFS, ansanm ak eleman fonksyonalite avanse yo jwenn nan Btrfs ak ZFS. Pou egzanp, Bcachefs sipòte karakteristik tankou enkli plizyè aparèy nan yon patisyon, layouts kondwi milti-kouch (kouch anba a ak done yo itilize souvan ki baze sou SSD vit, ak kouch anwo a ak mwens-itilize done ki soti nan distè), replikasyon (RAID). 1/10), kachèt, konpresyon done transparan (LZ4, mòd gzip ak ZSTD), tranch eta (snapshots), verifikasyon entegrite lè l sèvi avèk chèk, kapasite nan magazen kòd koreksyon erè Reed-Solomon (RAID 5/6), estoke enfòmasyon nan fòm chiffres (yo itilize ChaCha20 ak Poly1305). An tèm de pèfòmans, Bcachefs devan Btrfs ak lòt sistèm fichye ki baze sou mekanis Kopi sou Ekri, epi li demontre vitès opere tou pre Ext4 ak XFS.
    • Sistèm fichye Btrfs entwodui yon mòd kota senplifye ki pèmèt ou reyalize pi wo pèfòmans lè w swiv limit sèlman nan subpartisyon kote yo kreye yo, ki senplifye kalkil yo ak amelyore pèfòmans, men li pa pèmèt ou pran an kont mezi yo pataje nan plizyè. sou-partisyon.
    • Btrfs te ajoute yon nouvo estrikti done "reye pye bwa", apwopriye pou kat jeyografi lojik nan sitiyasyon kote kat fizik pa matche ak atravè aparèy yo. Se estrikti a kounye a itilize nan enplemantasyon nan RAID0 ak RAID1 pou aparèy blòk sektè yo. Nan lavni an, yo planifye yo sèvi ak estrikti sa a nan pi wo nivo RAID, ki pral rezoud yon kantite pwoblèm ki egziste nan aplikasyon aktyèl la.
    • Sistèm fichye Ceph la aplike sipò pou kat idantifikasyon itilizatè nan sistèm fichye ki monte yo, yo itilize pou matche ak dosye yon itilizatè espesifik sou yon patisyon etranje ki monte ak yon lòt itilizatè sou sistèm aktyèl la.
    • Te ajoute kapasite pou presize uid ak gid sou mòn nan efivarfs pou pèmèt pwosesis ki pa rasin chanje varyab UEFI.
    • Te ajoute apèl ioctl nan exFAT pou li ak chanje atribi FS yo. Te ajoute manyen anyè zewo-gwosè.
    • F2FS aplike kapasite pou itilize blòk 16K.
    • Mekanis automount autofs la te chanje pou sèvi ak nouvo API aliye patisyon an.
    • OverlayFS ofri opsyon monte "lowerdir+" ak "datadir+". Te ajoute sipò pou aliye enbrike nan OverlayFS ak xattrs.
    • XFS te optimize chaj CPU a nan kòd alokasyon blòk an tan reyèl. Yo bay kapasite pou fè operasyon lekti ak FICLONE ansanm.
    • Kòd EXT2 a te konvèti pou itilize paj folios.
  • Sèvis memwa ak sistèm
    • Sipò pou achitekti ia64 yo itilize nan processeurs Intel Itanium, ki te sispann konplètman nan 2021, yo sispann. Processeurs Itanium yo te prezante pa Intel an 2001, men achitekti ia64 la echwe pou pou fè konpetisyon ak AMD64, sitou akòz pèfòmans ki pi wo nan AMD64 ak tranzisyon an douser soti nan 32-bit x86 processeurs. Kòm yon rezilta, enterè Intel te chanje an favè processeurs x86-64, ak anpil Itanium te rete serveurs HP Entegrite, lòd pou yo te sispann twazan de sa. Kòd pou sipò ia64 yo te retire nan nwayo a sitou akòz mank sipò alontèm pou platfòm sa a, pandan y ap Linus Torvalds te eksprime volonte l pou l retounen sipò ia64 nan nwayo a, men se sèlman si gen yon mentenans ki ka demontre bon jan kalite. sipò pou platfòm sa a deyò nwayo prensipal la pou omwen yon ane.
    • Te ajoute "ia32_emulation" paramèt kòmand liy nwayo a, ki pèmèt ou aktive oswa enfim sipò pou imitasyon mòd 32-bit nan nwayo bati pou achitekti x86-64 nan etap bòt la. Sou bò pratik, nouvo opsyon a pèmèt ou bati nwayo a ak sipò pou konpatibilite ak aplikasyon 32-bit, men enfim mòd sa a pa default pou diminye vektè atak la sou nwayo a, paske API konpatibilite a mwens teste pase nwayo prensipal la. interfaces.
    • Kontinye migrasyon chanjman ki soti nan branch Rust-for-Linux ki gen rapò ak itilizasyon lang Rust kòm yon dezyèm lang pou devlope chofè ak modil nwayo (sipò Rust pa aktif pa default, epi li pa mennen nan enklizyon Rust nan mitan yo. depandans asanble obligatwa pou nwayo a). Nouvo vèsyon an fè tranzisyon pou itilize Rust 1.73 lage epi li ofri yon seri koneksyon pou travay ak keu travay.
    • Li posib pou itilize mekanis binfmt_misc pou ajoute sipò pou nouvo fòma dosye ègzèkutabl (pa egzanp, pou kouri aplikasyon Java oswa Python konpile) nan espas non ki pa privilejye.
    • Cpuset kontwolè cgroup la, ki pèmèt ou kontwole itilizasyon nwayo CPU lè w ap egzekite yon travay, bay yon divizyon an patisyon lokal ak aleka, ki diferan nan si paran cgroup la se seksyon rasin ki kòrèk la oswa ou pa. Nouvo anviwònman "cpuset.cpus.exclusive" ak "cpuset.cpus.excluisve.effective" yo te ajoute tou nan cpuset pou obligatwa CPU eksklizif.
    • Sou-sistèm BPF a aplike sipò pou eksepsyon, ki trete kòm yon sòti ijans nan yon pwogram BPF ak kapasite pou dewoule ankadreman pile san danje. Anplis de sa, pwogram BPF pèmèt itilize kptr endikasyon an koneksyon avèk CPU a.
    • Sipò pou operasyon ak futex yo te ajoute nan subsistèm io_uring la, epi nouvo operasyon yo te aplike: IORING_OP_WAITID (vèsyon asynchrone waitid), SOCKET_URING_OP_GETSOCKOPT (opsyon getsockoptand), SOCKET_URING_OP_SETSOCKOPT (opsyon setsockopt) ak operasyon li pa sispann (opsyon setsockopt) ak DOmulti HORT gen done oswa se pa tanpon konplè).
    • Te ajoute aplikasyon ki lejè FIFO ki konekte sèl ki mande pou yon spinlock sèlman pou dequeuing nan yon kontèks pwosesis ak dispanse ak yon spinlock pou ajoute atomik nan keu la nan nenpòt ki kontèks.
    • Te ajoute yon tanpon bag "objpool" ak yon aplikasyon évolutive nan yon keu pèfòmans segondè pou allocation ak retounen objè yo.
    • Pati inisyal chanjman yo te ajoute pou aplike nouvo futex2 API, ki gen pi bon pèfòmans sou sistèm NUMA, sipòte gwosè lòt pase 32 bits, epi yo ka itilize olye de apèl sistèm multiplexed futex().
    • Pou ARM32 ak S390x achitekti, sipò pou seri aktyèl la (cpuv4) nan enstriksyon BPF yo te ajoute.
    • Pou achitekti RISC-V a, li posib pou itilize mòd chèk Shadow-Call Stack ki disponib nan Clang 17, ki fèt pou pwoteje kont ranplase adrès retounen nan yon fonksyon nan evènman an ta gen yon tanpon debòde sou pil la. Sans pwoteksyon an se pou konsève pou adrès retounen nan yon pil separe "lonbraj" apre yo fin transfere kontwòl nan yon fonksyon ak rekipere adrès sa a anvan ou soti nan fonksyon an.
    • Yo ajoute yon nouvo mòd analiz paj memwa entelijan nan mekanis pou fusion paj memwa ki idantik (KSM: Kernel Samepage Merging), ki swiv paj analize san siksè epi redwi entansite re-eskane yo. Pou pèmèt nouvo mòd la, yo te ajoute anviwònman /sys/kernel/mm/ksm/smart_scan.
    • Te ajoute yon nouvo lòd ioctl PAGEMAP_SCAN, ki, lè yo itilize ak userfaultfd(), pèmèt ou detèmine reyalite ekri nan yon seri memwa espesifik. Nouvo karakteristik nan, pou egzanp, ka itilize nan sistèm nan pou konsève pou ak retabli eta a nan pwosesis CRIU oswa nan sistèm jwèt anti-tronpe.
    • Nan sistèm asanble a, si du Clang la disponib, asanble egzanp lè l sèvi avèk subsistèm perf, ekri kòm pwogram BPF, pèmèt pa default.
    • Ansyen kouch videobuf la, ki te itilize pou jere framebuffers nan subsistèm medya yo e ki te ranplase pa yon nouvo aplikasyon videobuf10 sa gen plis pase 2 zan, yo te retire.
  • Virtualization ak sekirite
    • Kapasite pou ankripte done nan blòk ki pi piti pase gwosè blòk nan sistèm dosye a te ajoute nan subsistèm fscrypt la. Sa a ka oblije pèmèt mekanis chifreman pyès ki nan konpitè ki sipòte ti blòk sèlman (pa egzanp, kontwolè UFS ki sipòte sèlman yon gwosè blòk 4096 ka itilize ak yon sistèm dosye ki gen yon gwosè blòk 16K).
    • Sou-sistèm "iommufd" la, ki pèmèt ou jere tab paj memwa IOMMU (I/O Memory-Management Unit) atravè deskriptè fichye ki soti nan espas itilizatè a, te ajoute swiv done ki poko retire nan kachèt la (sal) pou DMA. operasyon, ki nesesè pou detèmine memwa ak done san koule pandan migrasyon pwosesis.
    • Yo te ajoute sipò pou defini règ kontwòl aksè pou sipò TCP nan mekanis Landlock, ki pèmèt ou limite entèraksyon yon gwoup pwosesis ak anviwònman ekstèn lan. Pa egzanp, ou ka kreye yon règ ki pèmèt sèlman aksè nan pò rezo 443 pou etabli koneksyon HTTPS.
    • Sou-sistèm AppArmor te ajoute kapasite pou kontwole aksè nan mekanis io_uring la epi kreye espas non itilizatè, ki pèmèt ou oaza pèmèt aksè nan kapasite sa yo sèlman nan sèten pwosesis.
    • Te ajoute API atestasyon machin vityèl pou verifye entegrite pwosesis bòt machin vityèl la.
    • Sistèm LoongArch sipòte virtualizasyon lè l sèvi avèk hypervisor KVM la.
    • Lè w ap itilize ipèvizè KVM a sou sistèm RISC-V, sipò pou ekstansyon Smstateen la parèt, ki anpeche machin vityèl la jwenn aksè nan rejis CPU ki pa klèman sipòte pa ipèvizè a. Epitou te ajoute sipò pou itilize ekstansyon Zicond la nan sistèm envite, ki pèmèt itilizasyon kèk operasyon nonb nonb kondisyonèl.
    • Nan sistèm envite ki baze sou x86 k ap kouri anba KVM, yo pèmèt jiska 4096 CPU vityèl.
  • Sou-sistèm rezo
    • Chofè NVMe-TCP (NVMe sou TCP), ki pèmèt ou jwenn aksè nan kondui NVMe sou rezo a (NVM Express sou twal) lè l sèvi avèk pwotokòl TCP a, te ajoute sipò pou chifreman kanal transmisyon done lè l sèvi avèk TLS (itilize KTLS ak yon pwosesis background. nan espas itilizatè tlshd pou negosyasyon koneksyon).
    • Pèfòmans pwogramasyon pake fq (Fair Queuing) yo te optimize, sa ki te fè li posib pou ogmante debi pa 5% anba chay lou nan tès tcp_rr (TCP Request/Response) ak pa 13% ak yon koule san limit nan pake UDP.
    • TCP ajoute yon si ou vle mikrosecond-precision timestamp (TCP TS) kapasite (RFC 7323), ki pèmèt pou estimasyon latansi pi egzak ak modil kontwòl konjesyon pi avanse. Pou pèmèt li, ou ka itilize kòmandman "ip route ajoute 10/8 ... karakteristik tcp_usec_ts".
    • Pile TCP a te ajoute sipò pou ekstansyon TCP-AO (Opsyon Otantifikasyon TCP, RFC 5925), ki fè li posib pou verifye tèt TCP lè l sèvi avèk kòd MAC (Kod Otantifikasyon Mesaj), lè l sèvi avèk algoritm pi modèn HMAC-SHA1 ak CMAC-AES- 128 olye de opsyon TCP-MD5 ki disponib deja ki baze sou algorithm MD5 eritaj la.
    • Yon nouvo kalite aparèy rezo vityèl "netkit" te ajoute, lojik transfè done nan ki mete lè l sèvi avèk yon pwogram BPF.
    • KSMBD, yon aplikasyon nan nivo nwayo a nan yon sèvè SMB, te ajoute sipò pou rezoud non fichye ki gen pè ranplasan karaktè konpoze.
    • NFS te amelyore aplikasyon fil ak sèvis RPC. Te ajoute sipò pou delegasyon ekri (pou NFSv4.1+). NFSD te ajoute sipò pou rpc_status netlink handler la. Amelyore sipò pou kliyan NFSv4.x lè re-ekspòte nan knfsd.
  • Ekipman
    • Sipò inisyal pou GSP-RM firmwèr yo te ajoute nan modil nwayo Nouveau a, ki itilize nan NVIDIA RTX 20+ GPU pou deplase operasyon inisyalizasyon ak kontwòl GPU sou bò yon mikrokontroleur GSP separe (GPU System Processor). Sipò GSP-RM pèmèt chofè Nouveau a travay atravè apèl firmwèr, olye ke dirèkteman pwogramasyon entèraksyon pyès ki nan konpitè, sa ki fè li pi fasil pou ajoute sipò pou nouvo GPU NVIDIA lè l sèvi avèk apèl pre-bati pou inisyalizasyon ak jesyon pouvwa.
    • Chofè AMDGPU a sipòte GC 11.5, NBIO 7.11, SMU 14, SMU 13.0 OD, DCN 3.5, VPE 6.1 ak DML2. Amelyore sipò pou chaje san pwoblèm (pa gen okenn flickering lè chanje mòd videyo).
    • Chofè i915 la ajoute sipò pou chips Intel Meteor Lake epi li ajoute yon premye aplikasyon Intel LunarLake (Xe 2).
    • Te ajoute sipò pou chanèl transmisyon asimetri ajoute nan spesifikasyon USB4 v2 (120/40G).
    • Te ajoute sipò pou ARM SoC: Qualcomm Snapdragon 720G (itilize nan smartphones Xiaomi), AMD Pensando Elba, Renesas, R8A779F4 (R-Machin S4-8), USRobotics USR8200 (itilize nan routeurs ak NAS).
    • Te ajoute sipò pou smartphone Fairphone 5 ak tablo ARM Orange Pi 5, QuartzPro64, Turing RK1, Variscite MX6, BigTreeTech CB1, Freescale LX2162, Google Spherion, Google Hayato, Genio 1200 EVK, RK3566 Powkiddy RGB30.
    • Te ajoute sipò pou tablo RISC-V Milk-V Pioneer ak Milk-V Duo.
    • Te ajoute sipò pou koòdone son nan laptop HUAWEI apwovizyone ak CPU AMD. Te ajoute sipò pou moun ki pale adisyonèl enstale sou laptop Dell Oasis 13/14/16. Te ajoute sipò pou moun ki pale yo entegre ASUS K6500ZC. Te ajoute sipò pou endikatè bèbè sou laptop HP 255 G8 ak G10. Te ajoute sipò pou chofè odyo acp6.3. Te ajoute sipò pou Focusrite Clarett + 2Pre ak 4Pre koòdone anrejistreman pwofesyonèl.

An menm tan an, Fondasyon Lojisyèl Gratis nan Amerik Latin nan te fòme yon vèsyon nan nwayo a konplètman gratis 6.7 - Linux-libre 6.7-gnu, otorize eleman nan firmwèr ak chofè ki gen eleman ki pa gratis oswa seksyon kòd, sijè ki abòde lan ki limite. pa manifakti a. Nan lage 6.7, kòd netwayaj blob la te mete ajou nan divès chofè ak sous-sistèm, pou egzanp, nan chofè amdgpu, nouveau, adreno, mwifiex, mt7988, ath11k, avs ak btqca. Kòd pou netwaye chofè localtalk ak rtl8192u yo te retire akòz esklizyon yo nan nwayo a. Retire konpozan ki pa nesesè pou netwaye chofè xhci-pci, rtl8xxxu ak rtw8822b, te deja ajoute pa erè. Netwaye non blob nan dosye dts pou achitekti Aarch64 la. Retire tach nan nouvo chofè mt7925, tps6598x, aw87390 ak aw88399.

Sous: opennet.ru

Add nouvo kòmantè