Linux 5.15 цөмийн хувилбар

Хоёр сарын турш хөгжүүлсний дараа Линус Торвалдс Линуксийн цөмийн 5.15 хувилбарыг танилцууллаа. Сонирхолтой өөрчлөлтүүд нь: бичих дэмжлэгтэй шинэ NTFS драйвер, SMB серверийн хэрэгжилттэй ksmbd модуль, санах ойд хандах хандалтыг хянах DAMON дэд систем, бодит цагийн түгжих командууд, Btrfs дахь fs-verity дэмжлэг, өлсгөлөнгийн хариу үйлдлийн системийн санах ойд зориулсан process_mrelease системийн дуудлага, алсын баталгаажуулалтын модуль dm-ima.

Шинэ хувилбарт 13499 хөгжүүлэгчийн 1888 засвар орсон, засварын хэмжээ 42 МБ (өөрчлөлтөд 10895 файл нөлөөлж, 632522 мөр код нэмэгдсэн, 299966 мөр устгагдсан). 45-д оруулсан бүх өөрчлөлтийн 5.15 орчим хувь нь төхөөрөмжийн драйверуудтай, ойролцоогоор 14 хувь нь техник хангамжийн архитектурт хамаарах кодыг шинэчлэхтэй, 14 хувь нь сүлжээний стектэй, 6 хувь нь файлын системтэй, 3 хувь нь холбоотой байдаг. дотоод цөмийн дэд системүүдтэй холбоотой.

Гол инноваци:

  • Дискний дэд систем, I/O болон файлын системүүд
    • Цөм нь Paragon Software-ийн нээсэн NTFS файлын системийн шинэ хувилбарыг нэвтрүүлсэн. Шинэ драйвер нь бичих горимд ажиллах боломжтой бөгөөд NTFS 3.1-ийн одоогийн хувилбарын өргөтгөсөн файлын шинж чанарууд, хандалтын жагсаалт (ACL), өгөгдлийг шахах горим, файл дахь хоосон зайтай үр дүнтэй ажиллах (сийрэг) болон өөрчлөлтийг дахин тоглуулах зэрэг бүх функцийг дэмждэг. алдаа гарсаны дараа бүрэн бүтэн байдлыг сэргээх бүртгэл .
    • Btrfs файлын систем нь мета өгөгдлийн талбарт хадгалагдсан файлуудтай холбоотой криптограф хэш эсвэл түлхүүрүүдийг ашиглан бие даасан файлуудын бүрэн бүтэн байдал, жинхэнэ байдлыг ил тод хянахад ашигладаг fs-verity механизмыг дэмждэг. Өмнө нь fs-verity нь зөвхөн Ext4 болон F2fs файлын системд зориулагдсан байсан.

      Btrfs нь мөн суулгасан файлын системд хэрэглэгчийн ID-г буулгах дэмжлэгийг нэмдэг (өмнө нь FAT, ext4 болон XFS файлын системд дэмждэг байсан). Энэ функц нь суулгасан гадаад хуваалт дээрх тодорхой хэрэглэгчийн файлуудыг одоогийн системийн өөр хэрэглэгчтэй харьцуулах боломжийг олгодог.

      Btrfs-д хийсэн бусад өөрчлөлтүүд нь: файл үүсгэх гүйцэтгэлийг сайжруулахын тулд лавлах индекс рүү илүү хурдан түлхүүр нэмэх; raid0-ийг нэг төхөөрөмжтэй, raid10-ийг хоёр төхөөрөмжтэй ажиллах чадвар (жишээлбэл, массивыг дахин тохируулах явцад); "rescue=ibadroots" сонголт нь буруу хүрээний модыг үл тоомсорлох; "илгээх" үйлдлийг хурдасгах; нэрийг өөрчлөх үед түгжих зөрчлийг багасгах; 4К санах ойн хуудасны хэмжээтэй систем дээр 64K секторуудыг ашиглах чадвар.

    • XFS-д файлын системд 2038 оноос хойшхи огноог ашиглах чадварыг тогтворжуулсан. Инодыг хоцрогдсон идэвхгүй болгох механизмыг хэрэгжүүлж, файлын шинж чанаруудыг хойшлуулах, устгахад дэмжлэг үзүүлэв. Асуудлыг арилгахын тулд аль хэдийн суулгасан хуваалтуудын дискний квотыг идэвхгүй болгох боломжийг хассан (та квотыг хүчээр идэвхгүй болгож болно, гэхдээ тэдгээртэй холбоотой тооцоолол үргэлжлэх тул тэдгээрийг бүрэн идэвхгүй болгохын тулд дахин холбох шаардлагатай).
    • EXT4-д delalloc буфер бичих, нээлттэй хэвээр байгаа боловч лавлахтай холбоогүй байсаар байгаа өнчин файлуудыг боловсруулах гүйцэтгэлийг нэмэгдүүлэх ажлыг хийсэн. Мета өгөгдөлтэй үйлдлүүдийг блоклохоос зайлсхийхийн тулд устгах үйлдлүүдийн боловсруулалтыг jbd2 kthread thread-ээс зөөв.
    • F2FS нь блок, сектор, сегмент эсвэл хэсэгтэй холбоотой зэрэгцүүлэн хаях үйлдлүүдийг (биеийн хувьд хадгалахаа больсон чөлөөлөгдсөн блокуудыг тэмдэглэх) холбохын тулд "discard_unit=block|segment|section" сонголтыг нэмсэн. Оролт/гаралтын хоцрогдлын өөрчлөлтийг хянах дэмжлэг нэмэгдсэн.
    • EROFS (Extendable Read-Only File System) файлын систем нь шахалтгүйгээр хадгалагдсан файлуудад шууд оролт гаралтын дэмжлэг, мөн fiemap дэмжлэгийг нэмдэг.
    • OverlayFS нь "өөрчлөгдөхгүй", "зөвхөн хавсаргах", "синк" болон "noatime" холбох тугуудыг зөв зохицуулах боломжийг олгодог.
    • NFS сервер нь хүсэлтэд хариу өгөхөө больсон нөхцөл байдлын зохицуулалтыг сайжруулсан. Ашигласан боловч өөр сүлжээний хаягаар нэвтрэх боломжтой серверээс холбох боломжийг нэмсэн.
    • FSCACHE дэд системийг дахин бичих бэлтгэл ажил эхэлсэн.
    • GPT хүснэгтүүдийн стандарт бус байршил бүхий EFI хуваалтуудын дэмжлэгийг нэмсэн.
    • Fanotify механизм нь FAN_REPORT_PIDFD гэсэн шинэ тугийг хэрэгжүүлдэг бөгөөд энэ нь буцаасан мета өгөгдөлд pidfd-г оруулахад хүргэдэг. Pidfd нь хянаж буй файлд хандах процессыг илүү нарийвчлалтай тодорхойлохын тулд PID-г дахин ашиглах нөхцөл байдлыг зохицуулахад тусалдаг (pidfd нь тодорхой процесстой холбоотой бөгөөд өөрчлөгддөггүй, харин PID нь тухайн PID-тэй холбоотой одоогийн процесс дууссаны дараа өөр процесстой холбогдож болно).
    • Тусгаарлагдсан саванд олон холбох зай байгаа үед CRIU-д процессын төлөвийг хадгалах, сэргээх асуудлыг шийддэг move_mount() системийн дуудлагад одоо байгаа хуваалцсан бүлгүүдэд холбох цэгүүдийг нэмэх боломжийг нэмсэн.
    • Файл дахь хоосон зайг боловсруулах явцад кэш унших үед файлын эвдрэлд хүргэж болзошгүй далд уралдааны нөхцлөөс хамгаалах хамгаалалт нэмэгдсэн.
    • Файлыг өөрчлөхөд хүргэдэг системийн дуудлагыг хаах замаар хэрэгждэг файлыг заавал (заавал) түгжих дэмжлэг зогссон. Уралдааны нөхцөл байдлаас шалтгаалан эдгээр түгжээг найдваргүй гэж үзэж, олон жилийн өмнө хуучирсан.
    • LightNVM дэд системийг устгасан бөгөөд энэ нь эмуляцийн давхаргыг алгасаж SSD диск рүү шууд нэвтрэх боломжийг олгосон. LightNVM нь бүсчлэлийг (ZNS, Zoned Namespace) олгодог NVMe стандартууд гарч ирсний дараа утгаа алдсан.
  • Санах ой болон системийн үйлчилгээ
    • DAMON (Data Access MONitor) дэд системийг хэрэгжүүлсэн бөгөөд энэ нь хэрэглэгчийн орон зайд ажиллаж байгаа сонгосон процесстой холбоотой RAM дахь өгөгдөлд хандахтай холбоотой үйл ажиллагааг хянах боломжийг танд олгоно. Дэд систем нь үйл ажиллагааныхаа туршид ямар санах ойн талбарт үйл явц нэвтэрч, ямар санах ойн талбарт эзгүй үлдсэнийг шинжлэх боломжийг танд олгоно. DAMON нь хэмжээнээс үл хамааран CPU-ийн ачаалал бага, санах ойн зарцуулалт бага, өндөр нарийвчлал, урьдчилан таамаглах боломжтой тогтмол ачаалалтай байдаг. Дэд системийг санах ойн удирдлагыг оновчтой болгохын тулд цөм болон хэрэглэгчийн орон зай дахь хэрэглүүрийг аль алинд нь ашиглаж, процесс яг юу хийж байгааг ойлгох, санах ойн ашиглалтыг оновчтой болгох, жишээлбэл, системийн илүүдэл санах ойг чөлөөлөх боломжтой.
    • Гүйцэтгэлээ дуусгасан процессын санах ойг чөлөөлөх үйл явцыг хурдасгахын тулд process_mrelease системийн дуудлагыг хэрэгжүүлсэн. Хэвийн нөхцөлд нөөцийг чөлөөлөх болон процессыг зогсоох нь агшин зуурынх биш бөгөөд янз бүрийн шалтгааны улмаас хойшлогдож, oomd (systemd-с өгсөн) болон lmkd (Android-д ашигладаг) зэрэг хэрэглэгчийн орон зайн санах ойн эрт хариу үйлдлийн системд саад учруулж болзошгүй. Ийм системүүд process_mrelease гэж дуудснаар санах ойг албадан процессоос эргүүлэн авах үйл явцыг илүү таамаглаж чадна.
    • Бодит цагийн ажиллагааг дэмждэг PREEMPT_RT цөмийн салбараас RT-Mutex дэд системд суурилсан mutex, ww_mutex, rw_semaphore, spinlock болон rwlock цоожуудыг зохион байгуулах командуудын хувилбаруудыг шилжүүлсэн. PREEMPT_RT горим дахь ажиллагааг сайжруулж, тасалдалд үзүүлэх нөлөөллийг багасгахын тулд SLUB хавтан хуваарилагч дээр өөрчлөлтүүдийг нэмсэн.
    • Cgroup-д SCHED_IDLE даалгавар төлөвлөгчийн атрибутыг дэмжсэн нь тодорхой бүлэгт багтсан бүлгийн бүх процесст энэ шинж чанарыг өгөх боломжийг танд олгоно. Тэдгээр. Эдгээр процессууд нь системд гүйцэтгэхийг хүлээж буй өөр ажил байхгүй үед л ажиллана. SCHED_IDLE атрибутыг процесс бүрт тус тусад нь тохируулахаас ялгаатай нь SCHED_IDLE-г бүлэгт холбохдоо гүйцэтгэх даалгаврыг сонгохдоо бүлэг доторх ажлын харьцангуй жинг харгалзан үздэг.
    • Санал асуулга, дохио боловсруулах, нэрийн орон зайд зориулагдсан нэмэлт цөмийн өгөгдлийн бүтцийг хянах боломжоор бүлгүүдийн санах ойн зарцуулалтыг бүртгэх механизмыг өргөжүүлсэн.
    • Зарим CPU нь 32 битийн даалгавруудыг гүйцэтгэх боломжийг олгодог, зарим нь зөвхөн 64 битийн горимд (жишээлбэл, ARM) ажилладаг архитектурууд дээр процессорын цөмтэй холбох ажлыг тэгш хэмт бус хуваарийн дэмжлэгийг нэмсэн. Шинэ горим нь 32 битийн ажлыг төлөвлөхдөө зөвхөн 32 битийн даалгавруудыг дэмждэг CPU-г авч үзэх боломжийг танд олгоно.
    • io_uring асинхрон оролт гаралтын интерфэйс нь файл тодорхойлогч ашиглахгүйгээр файлуудыг шууд файлын индексийн хүснэгтэд нээхийг дэмждэг бөгөөд энэ нь зарим төрлийн үйлдлүүдийг ихээхэн хурдасгах боломжийг олгодог боловч файлын тодорхойлогчийг ашиглах уламжлалт Unix процесстой зөрчилддөг. файлуудыг нээх.

      BIO (Block I/O Layer) дэд системийн io_uring нь дахин боловсруулах шинэ механизмыг ("BIO recycling") хэрэгжүүлдэг бөгөөд энэ нь дотоод санах ойг удирдах явцад гарах зардлыг бууруулж, секундэд хийгдсэн оролт/гаралтын үйлдлүүдийн тоог ойролцоогоор 10%-иар нэмэгдүүлдэг. . io_uring нь мөн mkdirat(), symlinkat() болон linkat() системийн дуудлагын дэмжлэгийг нэмдэг.

    • BPF хөтөлбөрүүдийн хувьд таймерын үйл явдлыг хүсэх, боловсруулах чадварыг хэрэгжүүлсэн. UNIX сокетуудад зориулсан давталт нэмэгдсэн бөгөөд setsockopt-д зориулсан сокет сонголтуудыг авах, тохируулах боломжийг хэрэгжүүлсэн. BTF dumper одоо бичсэн өгөгдлийг дэмждэг.
    • Гүйцэтгэлээрээ ялгаатай өөр өөр төрлийн санах ойтой NUMA системүүд дээр сул зай дууссан үед зайлуулсан санах ойн хуудсуудыг эдгээр хуудсыг устгахын оронд динамик санах ойноос (DRAM) удаан байнгын санах ой руу (Тогтвортой санах ой) шилжүүлдэг. Туршилтууд нь ийм тактикууд ихэвчлэн ийм системүүдийн гүйцэтгэлийг сайжруулдаг болохыг харуулсан. Мөн NUMA нь сонгосон NUMA зангилааны багцаас процессын санах ойн хуудсыг хуваарилах боломжийг олгодог.
    • ARC архитектурын хувьд гурав, дөрвөн түвшний санах ойн хуудасны хүснэгтийг дэмжих ажлыг хэрэгжүүлсэн бөгөөд энэ нь 64 битийн ARC процессорыг дэмжих боломжийг олгоно.
    • S390 архитектурын хувьд санах ойтой ажиллах үед алдаа илрүүлэх KFENCE механизмыг ашиглах боломжийг хэрэгжүүлж, KCSAN уралдааны нөхцөл илрүүлэгчийн дэмжлэгийг нэмсэн.
    • Printk()-ээр дамжуулан гаралтын мессежийн жагсаалтыг индексжүүлэх дэмжлэг нэмсэн бөгөөд энэ нь танд ийм бүх мессежийг нэг дор авах, хэрэглэгчийн орон зай дахь өөрчлөлтийг хянах боломжийг олгоно.
    • mmap() нь VM_DENYWRITE тохируулгын дэмжлэгийг устгасан бөгөөд цөмийн кодыг MAP_DENYWRITE горимыг ашиглахаас хассан бөгөөд энэ нь ETXTBSY алдаатай файл руу бичихийг хориглох нөхцөл байдлын тоог багасгасан.
    • Мөшгих дэд системд "Үйл явдлын шалгалт" хэмээх шинэ төрлийн шалгалтыг нэмсэн бөгөөд үүнийг одоо байгаа мөрдөж буй үйл явдалд хавсаргаж, өөрийн гаралтын форматыг тодорхойлох боломжтой.
    • Clang хөрвүүлэгчийг ашиглан цөмийг бүтээхдээ одоо LLVM төслийн анхдагч ассемблерийг ашиглаж байна.
    • Хөрвүүлэгчээс анхааруулга гаргахад хүргэдэг кодын цөмийг арилгах төслийн хүрээнд хөрвүүлэгчийн анхааруулгыг алдаа болгон боловсруулдаг анхдагчаар "-Werror" горимыг идэвхжүүлсэн туршилт хийсэн. 5.15 хувилбарыг гаргахад бэлтгэж байхдаа Линус цөмийг бүтээхэд анхааруулга өгөөгүй өөрчлөлтүүдийг л хүлээн авч, "-Werror"-ийг идэвхжүүлсэн боловч ийм шийдвэр нь эрт байсан бөгөөд "-Werror"-ыг анхдагчаар идэвхжүүлэхийг хойшлуулсан гэдгийг хүлээн зөвшөөрсөн. . Угсрах явцад "-Werror" тугийг оруулахыг WERROR параметрийг ашиглан хянадаг бөгөөд үүнийг анхдагчаар COMPILE_TEST гэж тохируулсан, өөрөөр хэлбэл. Одоогоор энэ нь зөвхөн туршилтын хувилбаруудад идэвхжсэн.
  • Виртуалчлал ба аюулгүй байдал
    • IMA (Integrity Measurement Architecture) дэд системд суурилсан алсын баталгаажуулалтын механизмыг хэрэгжүүлснээр Device Mapper (DM) дээр шинэ dm-ima зохицуулагч нэмэгдсэн бөгөөд энэ нь гадны үйлчилгээнд цөмийн дэд системийн төлөв байдлыг баталгаажуулах боломжийг олгодог. . Практикт dm-ima нь IMA ашиглан эхлүүлсэн DM зорилтот тохиргооны хүчинтэй байдлыг шалгах гадаад үүлэн системтэй холбогдсон Device Mapper ашиглан хадгалах сангуудыг үүсгэх боломжийг олгодог.
    • prctl() нь PR_SPEC_L1D_FLUSH шинэ сонголтыг хэрэгжүүлдэг бөгөөд үүнийг идэвхжүүлсэн үед контекст шилжих бүрт цөм нэгдүгээр түвшний (L1D) кэшийн агуулгыг цэвэрлэхэд хүргэдэг. Энэ горим нь хамгийн чухал процессуудыг сонгон авч, CPU-ийн зааврыг таамаглаж гүйцэтгэснээс үүссэн эмзэг байдлын үр дүнд кэшэд хуримтлагдсан өгөгдлийг тодорхойлохын тулд хийгддэг хажуугийн сувгийн халдлагаас хамгаалах нэмэлт хамгаалалтыг хэрэгжүүлэх боломжийг олгодог. PR_SPEC_L1D_FLUSH-г идэвхжүүлэх зардал (анхдагчаар идэвхжээгүй) нь гүйцэтгэлийн томоохон торгууль юм.
    • GCC-д "-fzero-call-used-regs=used-gpr" гэсэн тугийг нэмснээр цөмийг бүтээх боломжтой бөгөөд энэ нь функцээс хяналтыг буцаахаас өмнө бүх регистрүүдийг тэг болгож шинэчлэхийг баталгаажуулдаг. Энэ сонголт нь функцээс мэдээлэл алдагдахаас хамгаалж, мөлжлөгт ROP (Буцах чиг баримжаатай програмчлал) гаджетуудыг бүтээхэд тохиромжтой блокуудын тоог 20%-иар бууруулах боломжийг олгоно.
    • Hyper-V hypervisor-д зориулсан үйлчлүүлэгч хэлбэрээр ARM64 архитектурт цөмүүдийг бүтээх чадварыг хэрэгжүүлсэн.
    • Виртуал блок төхөөрөмжийг хэрэглэгчийн орон зайд нэвтрүүлэх, зочны системээс нэвтрэх тээврийн хэрэгсэл болгон Virtio ашиглах боломжийг олгодог "VDUSE" драйвер хөгжүүлэх шинэ тогтолцоог санал болгож байна.
    • I2C автобусанд Virtio драйверийг нэмсэн нь I2C хянагчдыг тусдаа арын хэсэгт ашиглан паравиртуалчлалын горимд дууриах боломжтой болгосон.
    • Зочдод хост системээс өгсөн GPIO шугамд хандах боломжийг олгохын тулд Virtio драйвер gpio-virtio-г нэмсэн.
    • I/O MMU (санах ойн удирдлагын нэгж)гүй системүүдийн DMA дэмжлэгтэй төхөөрөмжийн драйверуудын санах ойн хуудас руу хандах хандалтыг хязгаарлах боломжийг нэмсэн.
    • KVM гипервизор нь статистикийг шугаман болон логарифм гистограм хэлбэрээр харуулах чадвартай.
  • Сүлжээний дэд систем
    • ksmbd модулийг SMB3 протоколыг ашиглан файлын серверийг хэрэгжүүлэх замаар цөмд нэмсэн. Уг модуль нь өмнө нь цөмд байсан SMB клиентийн хэрэгжилтийг нөхөж байгаа бөгөөд хэрэглэгчийн орон зайд ажиллаж байсан SMB серверээс ялгаатай нь гүйцэтгэл, санах ойн зарцуулалт, цөмийн дэвшилтэт чадавхитай нэгтгэх тал дээр илүү үр дүнтэй байдаг. Ksmbd нь шаардлагатай бол Samba хэрэглүүр болон номын сангуудтай нэгдсэн, өндөр хүчин чадалтай, суулгагдсан Samba өргөтгөл гэж нэрлэгддэг. ksmbd-ийн боломжууд нь локал системүүд дээр тархсан файлын кэшлэх технологийг (SMB түрээс) сайжруулах дэмжлэгийг багтаасан бөгөөд энэ нь траффикийг мэдэгдэхүйц бууруулж чадна. Цаашид тэд дижитал гарын үсэг ашиглан шифрлэлт, баталгаажуулалтын найдвартай байдлыг нэмэгдүүлэхтэй холбоотой RDMA (“smbdirect”) болон протоколын өргөтгөлүүдийг дэмжихээр төлөвлөж байна.
    • CIFS клиент нь NTLM болон SMB1 протоколд ашигладаг DES-д суурилсан сул баталгаажуулалтын алгоритмуудыг дэмжихээ больсон.
    • Multicast дэмжлэг нь vlan-д зориулсан сүлжээний гүүрийг хэрэгжүүлэхэд хэрэгждэг.
    • Сүлжээний интерфэйсүүдийг нэгтгэхэд ашигладаг холболтын драйвер нь XDP (eXpress Data Path) дэд системийн дэмжлэгийг нэмсэн бөгөөд энэ нь сүлжээний пакетуудыг Linux цөмийн сүлжээний стекээр боловсруулахаас өмнөх үе шатанд удирдах боломжийг олгодог.
    • mac80211 утасгүй стек нь LPI, SP болон VLP горимд 6GHZ STA (Тусгай түр зуурын зөвшөөрөл)-ийг дэмждэг бөгөөд хандалтын цэгийн горимд TWT (Зорилтот сэрэх цаг)-ыг тусад нь тохируулах боломжтой.
    • Удирдлагын хянагч болон холбогдох төхөөрөмжүүд (хост процессор, захын төхөөрөмж гэх мэт) хоорондын харилцан үйлчлэлд ашигладаг MCTP (Удирдлагын бүрэлдэхүүн хэсгийн тээвэрлэлтийн протокол)-д нэмэлт дэмжлэг үзүүлэв.
    • MPTCP (MultiPath TCP) цөмд нэгтгэх нь өөр IP хаягуудтай холбоотой өөр өөр сүлжээний интерфэйсээр хэд хэдэн маршрутын дагуу пакетуудыг нэгэн зэрэг хүргэх TCP холболтын ажиллагааг зохион байгуулах TCP протоколын өргөтгөл юм. Шинэ хувилбар нь fullmesh горимд хаягуудыг дэмждэг.
    • SRv6 (Segment Routing IPv6) протоколд багтсан сүлжээний урсгалын зохицуулагчийг сүлжээ шүүлтүүрт нэмсэн.
    • Unix урсгал залгууруудад зориулсан sockmap дэмжлэг нэмсэн.
  • Тоног төхөөрөмж
    • Amdgpu драйвер нь Cyan Skillfish APU-г дэмждэг (Navi 1x GPU-ээр тоноглогдсон). Yellow Carp APU одоо видео кодлогчийг дэмждэг. Сайжруулсан Aldebaran GPU дэмжлэг. GPU Navi 24 "Beige Goby" болон RDNA2 дээр суурилсан газрын зургийн шинэ танигчийг нэмсэн. Виртуал дэлгэцийн (VKMS) сайжруулсан хэрэгжилтийг санал болгож байна. AMD Zen 3 чипийн температурыг хянах дэмжлэгийг хэрэгжүүлсэн.
    • Amdkfd драйвер (Polaris гэх мэт салангид GPU-д зориулагдсан) нь HMM (гетероген санах ойн менежмент) дэд систем дээр суурилсан хуваалцсан виртуал санах ойн менежерийг (SVM, хуваалцсан виртуал санах ой) хэрэгжүүлдэг бөгөөд энэ нь өөрийн санах ойн удирдлагын нэгж (MMU) бүхий төхөөрөмжүүдийг ашиглах боломжийг олгодог. , санах ойн удирдлагын нэгж), үндсэн санах ойд хандах боломжтой. Ялангуяа HMM-ийг ашигласнаар та GPU болон CPU-ийн хооронд хуваалцсан хаягийн зайг зохион байгуулж, GPU нь процессын үндсэн санах ойд хандах боломжтой.
    • Intel видео картуудад зориулсан i915 драйвер нь TTM видео санах ойн менежерийн хэрэглээг өргөжүүлж, GuC (Graphics micro Controller) дээр суурилсан эрчим хүчний хэрэглээг удирдах чадварыг агуулдаг. Intel ARC Alchemist график карт болон Intel Xe-HP GPU-ийн дэмжлэгийг хэрэгжүүлэх бэлтгэл ажил эхэлсэн.
    • Nouveau драйвер нь DPCD (DisplayPort тохиргооны өгөгдөл) ашиглан eDP хавтангийн арын гэрэлтүүлгийн хяналтыг хэрэгжүүлдэг.
    • MSM драйверт Adreno 7c Gen 3 болон Adreno 680 GPU-ийн дэмжлэгийг нэмсэн.
    • IOMMU драйвер нь Apple M1 чипэд зориулагдсан.
    • AMD Van Gogh APU дээр суурилсан системүүдийн дууны драйверийг нэмсэн.
    • Realtek R8188EU драйвер нь Realtek RTL8188EU 8188 b/g/n утасгүй чипүүдэд зориулсан драйверын хуучин хувилбарыг (rtl802.11eu) сольсон үе шаттай хэсэгт нэмэгдсэн.
    • ocp_pt драйвер нь жижиг атомын цаг болон GNSS хүлээн авагчийн тусламжтайгаар Meta (Facebook)-ийн боловсруулсан PCIe самбарт багтсан бөгөөд энэ нь тусдаа тодорхой цагийн синхрончлолын серверүүдийн ажиллагааг зохион байгуулахад ашиглагдаж болно.
    • Sony Xperia 10II (Snapdragon 665), Xiaomi Redmi 2 (Snapdragon MSM8916), Samsung Galaxy S3 (Snapdragon MSM8226), Samsung Gavini/Codina/Kyle ухаалаг гар утасны дэмжлэгийг нэмсэн.
    • ARM SoС болон NVIDIA Jetson TX2 NX Developer Kit, Sancloud BBE Lite, PicoITX, DRC02, SolidRun SolidSense, SKOV i.MX6, Nitrogen8, Traverse Ten64, GW7902, Microchip SAMA7, ualcomm SDM636, ualcomm Snasas R8150e-д зориулсан дэмжлэг нэмэгдсэн. самбар -3G/M2e-3G, Marvell CN2x, ASpeed ​​​​AST913 (Facebook Cloudripper, Elbert болон Fuji серверийн самбарууд), 2600KOpen STiH4-b418.
    • Gopher 2b LCD хавтан, EDT ETM0350G0DH6/ETMV570G2DHU, LOGIC Technologies LTTD800480070-L6WH-RT, Multi-Innotechnology MI1010AIT-1CP1, Innolux EJ030, Innolux EJ3.0, ilNAi9341, EJ3300-д зориулсан нэмэлт дэмжлэг. 33-KCA, Samsung ATNA20XC7430 2401, Samsung DBXNUMX, WideChips WSXNUMX .
    • LiteX програм хангамжийн SoC-д (FPGA-д зориулсан) ашигладаг Ethernet хянагчдыг дэмждэг LiteETH драйверийг нэмсэн.
    • Хамгийн бага хоцролтын горимд ажиллагааг оруулахыг хянахын тулд USB-аудио драйвер дээр бага хоцрогдолтой сонголтыг нэмсэн. Мөн төхөөрөмжийн тусгай тохиргоог дамжуулахын тулд quirk_flags сонголтыг нэмсэн.

Үүний зэрэгцээ Латин Америкийн Чөлөөт Програм хангамжийн Сан нь бүрэн үнэгүй цөмийн 5.15 хувилбарыг бий болгосон - Linux-libre 5.15-gnu, програм хангамжийн элементүүд болон чөлөөт бус бүрэлдэхүүн хэсгүүд эсвэл кодын хэсгүүдийг агуулсан драйверуудаас цэвэрлэсэн бөгөөд хамрах хүрээ нь хязгаарлагдмал. үйлдвэрлэгчээс. Шинэ хувилбар нь цэвэрлэгээ дууссан тухай лог руу мессежийн гаралтыг хэрэгжүүлдэг. Mkspec ашиглан багц үүсгэхтэй холбоотой асуудлуудыг засч, snap багцуудын дэмжлэгийг сайжруулсан. Firmware.h толгой файлыг боловсруулах үед гарч байсан зарим анхааруулгыг устгасан. Зарим төрлийн анхааруулгыг ("format-extra-args", тайлбарууд, ашиглагдаагүй функцууд болон хувьсагчууд) "-Werror" горимд суулгахыг зөвшөөрдөг. gehc-achc драйверын цэвэрлэгээг нэмсэн. Adreno, btusb, btintel, brcmfmac, aarch64 qcom драйверууд болон дэд системүүдийн шинэчлэгдсэн blob цэвэрлэх код. Призм54 (арилгасан) ба rtl8188eu (r8188eu-ээр солигдсон) драйверуудыг цэвэрлэх ажлыг зогсоосон.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх