Linux 5.6 միջուկի թողարկում

Երկու ամիս զարգացումից հետո Լինուս Տորվալդսը ներկայացրեց միջուկի թողարկում Linux 5.6. Ամենաուշագրավ փոփոխություններից են՝ WireGuard VPN ինտերֆեյսի ինտեգրում, USB4-ի աջակցություն, ժամանակի անվանատարածքներ, BPF-ով TCP գերբնակվածության կարգավորիչներ ստեղծելու հնարավորություն, MultiPath TCP-ի նախնական աջակցություն, միջուկը 2038-ի խնդրից ազատում, «bootconfig» մեխանիզմ: , ZoneFS.

Նոր տարբերակը ներառում է 13702 ուղղում 1810 մշակողների կողմից,
patch-ի չափը՝ 40 ՄԲ (փոփոխությունները ազդել են 11577 ֆայլերի վրա, ավելացվել է 610012 կոդ,
294828 տող հեռացվել է): 45-ում ներկայացված բոլորի մոտ 5.6%-ը
փոփոխությունները կապված են սարքի դրայվերների հետ, փոփոխությունների մոտավորապես 15%-ը
վերաբերմունք ապարատային ճարտարապետությանը հատուկ կոդի թարմացման նկատմամբ, 12%
կապված ցանցային ստեկի հետ, 4%-ը՝ ֆայլային համակարգերի և 3%-ը՝ ներքին
միջուկի ենթահամակարգեր.

Հիմնական նորամուծություններ:

  • Ցանցային ենթահամակարգ
    • Ավելացված է VPN ինտերֆեյսի իրականացում WireGuard- ը, որն իրականացվում է գաղտնագրման ժամանակակից մեթոդների հիման վրա (ChaCha20, Poly1305, Curve25519, BLAKE2s), օգտագործման համար հեշտ է, առանց բարդությունների, իրեն ապացուցել է մի շարք խոշոր իրականացումներով և ապահովում է շատ բարձր կատարողականություն (3,9 անգամ ավելի արագ, քան OpenVPN-ը առումով: թողունակության): WireGuard-ն օգտագործում է գաղտնագրման բանալիների երթուղավորման հայեցակարգը, որը ներառում է ցանցի յուրաքանչյուր ինտերֆեյսի մասնավոր բանալի կցումը և դրա օգտագործումը հանրային բանալիները կապելու համար: Հանրային բանալիները փոխանակվում են SSH-ի նման կապ հաստատելու համար: WireGuard-ի աշխատանքի համար պահանջվում են ծածկագրային պրիմիտիվներ Մենք էինք տեղափոխվել է գրադարանից ցինկ որպես ստանդարտ Crypto API-ի մաս և ներառյալ միջուկի մեջ 5.5.
    • Սկսել MPTCP (MultiPath TCP) օժանդակելու համար անհրաժեշտ բաղադրիչների ինտեգրում, TCP արձանագրության ընդլայնում TCP կապի գործարկումը կազմակերպելու համար փաթեթների առաքմամբ միաժամանակ մի քանի երթուղիներով տարբեր ցանցային ինտերֆեյսների միջոցով՝ կապված տարբեր IP հասցեների հետ: Ցանցային հավելվածների համար նման ագրեգացված կապը կարծես սովորական TCP միացում է, և հոսքերի տարանջատման ողջ տրամաբանությունը կատարվում է MPTCP-ի կողմից: Multipath TCP-ն կարող է օգտագործվել ինչպես թողունակությունը, այնպես էլ հուսալիությունը բարձրացնելու համար: Օրինակ, MPTCP-ն կարող է օգտագործվել սմարթֆոնի վրա տվյալների փոխանցումը կազմակերպելու համար՝ օգտագործելով WiFi և 4G կապերը միաժամանակ, կամ նվազեցնել ծախսերը՝ միացնելով սերվերը՝ օգտագործելով մի քանի էժան հղումներ՝ մեկ թանկարժեքի փոխարեն:
    • Ավելացված է աջակցություն ցանցային հերթի մշակման կարգապահությանը sch_ets (Փոխանցման ընդլայնված ընտրություն, IEEE 802.1Qaz), որն ապահովում է երթևեկության տարբեր դասերի միջև թողունակությունը բաշխելու հնարավորություն։ Եթե ​​տրաֆիկի որոշակի դասի բեռնվածությունը ցածր է հատկացված թողունակությունից, ապա ETS-ը թույլ է տալիս այլ տրաֆիկի դասերին օգտագործել հասանելի (չօգտագործված) թողունակությունը: Qdisc sch_ets-ը կազմաձևված է որպես PRIO կարգապահություն և օգտագործում է երթևեկության դասեր՝ սահմանելու խիստ և ընդհանուր թողունակության սահմանափակումներ: ETS-ն աշխատում է որպես առարկաների համադրություն ՊՐԻՈ и DRR — եթե կան խիստ սահմանափակ երթևեկության դասեր, օգտագործվում է PRIO, բայց եթե հերթում երթևեկություն չկա, այն աշխատում է DRR-ի պես:
    • Ավելացվեց BPF ծրագրերի նոր տեսակ BPF_PROG_TYPE_STRUCT_OPS, որը թույլ է տալիս BPF-ի միջոցով իրականացնել միջուկի ֆունկցիաների մշակիչներ: Ներկայումս այս ֆունկցիան արդեն կարող է օգտագործվել TCP գերբեռնվածության վերահսկման ալգորիթմները BPF ծրագրերի տեսքով իրականացնելու համար։ Որպես օրինակ առաջարկված BPF ծրագիր ալգորիթմի ներդրմամբ DCTCP.
    • Ընդունված է հիմքում փոփոխություններ, թարգմանչական գործիքներ էթոլ ioctl()-ով օգտագործելու համար netlink ինտերֆեյս. Նոր ինտերֆեյսը հեշտացնում է ընդլայնումներ ավելացնելը, բարելավում է սխալների կառավարումը, թույլ է տալիս ծանուցումներ ուղարկել, երբ վիճակը փոխվում է, պարզեցնում է միջուկի և օգտագործողի տարածքի միջև փոխազդեցությունը և նվազեցնում է անվանված ցուցակների թիվը, որոնք պետք է համաժամացվեն:
    • Ավելացվել է FQ-PIE (Flow Queue PIE) ցանցային հերթերի կառավարման ալգորիթմի ներդրում, որն ուղղված է միջանկյալ փաթեթների բուֆերացման բացասական ազդեցության նվազեցմանը եզրային ցանցային սարքավորումների վրա (bufferbloat): FQ-PIE-ն ցուցադրում է բարձր արդյունավետություն, երբ օգտագործվում է մալուխային մոդեմներով համակարգերում:
  • Սկավառակի ենթահամակարգ, I/O և ֆայլային համակարգեր
    • Btrfs ֆայլային համակարգի համար ավելացրել է DISCARD գործողության ասինխրոն իրականացում (նշելով ազատված բլոկները, որոնք այլևս ֆիզիկապես պահպանման կարիք չունեն): Սկզբում DISCARD գործողությունները կատարվում էին համաժամանակյա, ինչը կարող էր հանգեցնել աշխատանքի վատթարացման՝ համապատասխան հրամանների ավարտին սպասող կրիչների պատճառով: Ասինխրոն իրականացումը թույլ է տալիս չսպասել սկավառակի ավարտին DISCARD-ը և կատարել այս գործողությունը հետին պլանում:
    • XFS-ում իրականացվել է Մաքրել կոդը, որն օգտագործում էր հին 32-բիթանոց ժամանակի հաշվիչները (time_t տեսակը փոխարինվել է time64_t-ով), ինչը հանգեցրեց 2038 թվականի խնդրին: Ուղղվել են 32-բիթանոց հարթակներում տեղի ունեցած սխալները և հիշողության խաթարումը: Կոդը վերամշակվել է ընդլայնված ատրիբուտների հետ աշխատելու համար:
    • Դեպի ext4 ֆայլային համակարգ մտել է Կատարման օպտիմիզացում՝ կապված կարդալու և գրելու գործողությունների ընթացքում ինոդի կողպման հետ: Բարելավված վերագրման կատարումը Direct I/O ռեժիմում: Խնդիրների ախտորոշումը պարզեցնելու համար առաջին և վերջին սխալի կոդերը պահվում են սուպերբլոկում:
    • F2FS ֆայլային համակարգի վրա իրականացվել է տվյալների սեղմված ձևով պահելու ունակություն. Անհատական ​​ֆայլի կամ գրացուցակի համար սեղմումը կարող է միացված լինել՝ օգտագործելով «chattr +c file» կամ «chattr +c dir; հպեք dir/file»: Ամբողջ բաժանումը սեղմելու համար կարող եք օգտագործել «-o compress_extension=ext» տարբերակը mount կոմունալում:
    • Միջուկը ներառում է ֆայլային համակարգ ZoneFS, որը հեշտացնում է ցածր մակարդակի աշխատանքը գոտիավորված պահեստավորման սարքերի հետ: Գոտիավորված կրիչներ նշանակում են սարքեր կոշտ մագնիսական սկավառակների կամ NVMe SSD-ների վրա, որոնց պահեստային տարածքը բաժանված է գոտիների, որոնք կազմում են բլոկների կամ հատվածների խմբեր, որոնցում թույլատրվում է միայն տվյալների հաջորդական ավելացում՝ թարմացնելով բլոկների ամբողջ խումբը: FS ZoneFS-ը մշակվել է Western Digital-ի կողմից և սկավառակի յուրաքանչյուր գոտի կապում է առանձին ֆայլի հետ, որը կարող է օգտագործվել տվյալների հում ռեժիմում պահելու համար՝ առանց սեկտորի և բլոկի մակարդակում մանիպուլյացիայի, այսինքն. Թույլ է տալիս հավելվածներին օգտագործել ֆայլի API՝ ioctl-ի միջոցով բլոկ սարքին ուղղակիորեն մուտք գործելու փոխարեն:
    • NFS-ում UDP-ի վրա միջնորմների տեղադրումը լռելյայն անջատված է: Ավելացված է աջակցություն սերվերների միջև ֆայլերը ուղղակիորեն պատճենելու ունակության համար, որը սահմանված է NFS 4.2 բնութագրում: Ավելացրել է նոր «softreval» մոնտաժային տարբերակ, որը թույլ է տալիս օգտագործել քեշավորված հատկանիշի արժեքները սերվերի ձախողման դեպքում: Օրինակ, այս տարբերակը նշելիս, սերվերի անհասանելի լինելուց հետո հնարավոր է մնում NFS բաժանման ուղիներով շարժվել և մուտք գործել քեշում տեղավորված տեղեկություններ:
    • Իրականացվել է fs-verity մեխանիզմի աշխատանքի օպտիմիզացում, որն օգտագործվում է առանձին ֆայլերի ամբողջականությունը և իսկությունը վերահսկելու համար: Մեծացել է հաջորդական ընթերցման արագությունը՝ շնորհիվ Merkle hash ծառի օգտագործման: FS_IOC_ENABLE_VERITY-ի աշխատանքը օպտիմիզացվել է, երբ քեշում տվյալներ չկան (կիրառվել է տվյալների հետ էջերի կանխարգելիչ ընթերցում):
  • Վիրտուալացում և անվտանգություն
    • Գործարկման ընթացքում SELinux մոդուլն անջատելու հնարավորությունը հնացել է, և արդեն ակտիվացված SELinux-ի բեռնաթափումը հետագայում կարգելվի: SELinux-ն անջատելու համար անհրաժեշտ է միջուկի հրամանի տողում փոխանցել «selinux=0» պարամետրը:
    • Ավելացված է ժամանակի համար անվանատարածքների աջակցություն (ժամանակի անվանատարածքներ), որը թույլ է տալիս համակարգի ժամացույցի վիճակը կապել կոնտեյների հետ (CLOCK_REALTIME,
      CLOCK_MONOTONIC, CLOCK_BOOTTIME), օգտագործեք ձեր սեփական ժամանակը կոնտեյներով և, երբ բեռնարկղը տեղափոխում եք այլ հոսթ, համոզվեք, որ CLOCK_MONOTONIC և CLOCK_BOOTTIME ընթերցումները մնան անփոփոխ (հաշվի առեք բեռնումից հետո ժամանակը, քնի ռեժիմում լինելով կամ առանց հաշվի առնելու): )

    • /dev/ պատահական արգելափակման լողավազանը հեռացվել է: /dev/random-ի վարքագիծը նման է /dev/urandom-ին` լողավազանի սկզբնավորումից հետո էնտրոպիայի արգելափակումը կանխելու տեսանկյունից:
    • Հիմնական միջուկը ներառում է դրայվեր, որը թույլ է տալիս VirtualBox-ով աշխատող հյուր համակարգերին տեղադրել դիրեկտորիաներ, որոնք արտահանվում են հյուրընկալող միջավայրի կողմից (VirtualBox Shared Folder):
    • BPF ենթահամակարգին ավելացվել է մի շարք patches (BPF դիսպետչեր), երբ օգտագործվում է Retpoline մեխանիզմը Spectre V2 դասի հարձակումներից պաշտպանվելու համար, այն թույլ է տալիս բարձրացնել BPF ծրագրերի կանչի արդյունավետությունը, երբ դրանց հետ կապված իրադարձություններ են տեղի ունենում (օրինակ, այն հնարավորություն է տալիս արագացնել XDP մշակողների կանչը, երբ ցանցի փաթեթը ժամանում է):
    • Ավելացվեց վարորդ՝ AMD APU-ներում ներկառուցված TEE-ին (Trusted Execution Environment) աջակցելու համար:
  • Հիշողության և համակարգի ծառայություններ
    • BPF-ն ավելացրել է աջակցություն գլոբալ գործառույթների համար: Մշակումն իրականացվում է որպես BPF ծրագրերում ընդգրկված գործառույթների գրադարաններին աջակցություն ավելացնելու նախաձեռնության մաս: Հաջորդ քայլը կլինի դինամիկ ընդլայնումների աջակցությունը, որոնք թույլ են տալիս բեռնել գլոբալ գործառույթները, ներառյալ գոյություն ունեցող գլոբալ գործառույթների փոխարինումը, երբ դրանք օգտագործվում են: BPF ենթահամակարգը նաև աջակցություն է ավելացնում քարտեզի գործողության տարբերակին (օգտագործվում է մշտական ​​տվյալների պահպանման համար), որն աջակցում է կատարումը խմբաքանակի ռեժիմում:
    • Ավելացված է «cpu_cooling» սարքը թույլ է տալիս սառեցնել գերտաքացած պրոցեսորը՝ այն կարճ ժամանակով անգործուն վիճակում դնելով:
    • Ավելացվեց համակարգային զանգ openat2 (), որն առաջարկում է մի շարք լրացուցիչ դրոշներ՝ ֆայլի ուղիների լուծումը սահմանափակելու համար (մոնտաժային կետերի հատման արգելում, խորհրդանշական հղումներ, կախարդական հղումներ (/proc/PID/fd), «../» բաղադրիչներ):
    • Big.LITTLE ճարտարապետության վրա հիմնված տարասեռ համակարգերի համար, որոնք միավորում են հզոր և պակաս արդյունավետ էներգաարդյունավետ պրոցեսորի միջուկները մեկ չիպի մեջ, uclamp_min պարամետրը սահմանվում է իրական ժամանակում առաջադրանքները կատարելիս (հայտնվեց միջուկում 5.3 կա բեռը ապահովելու մեխանիզմ): Այս պարամետրը ապահովում է, որ առաջադրանքը ժամանակացույցի կողմից կտեղադրվի CPU միջուկի վրա, որն ունի բավարար կատարում:
    • Միջուկն ազատվում է 2038 թվականի խնդիրները. Փոխարինեց մնացած վերջին մշակիչները, որոնք օգտագործում էին 32-բիթանոց (ստորագրված int) տիպը ժամանակաշրջանային ժամանակաչափի համար, որը, հաշվի առնելով 1970 թվականի հաշվետվությունը, պետք է լցվի 2038 թվականին։
    • Asynchronous I/O ինտերֆեյսի շարունակական բարելավում io_uringորտեղ տրամադրվում է աջակցություն նոր գործողությունների համար՝ IORING_OP_FALLOCATE (դատարկ տարածքների ամրագրում), IORING_OP_OPENAT,
      IORING_OP_OPENAT2,
      IORING_OP_CLOSE (ֆայլերի բացում և փակում),
      IORING_OP_FILES_UPDATE (ֆայլերի ավելացում և հեռացում արագ մուտքի ցանկից),
      IORING_OP_STATX (ֆայլի տեղեկատվության հարցում),
      IORING_OP_READ,
      IORING_OP_WRITE (IORING_OP_READV-ի և IORING_OP_WRITEV-ի պարզեցված անալոգներ),
      IORING_OP_FADVISE,
      IORING_OP_MADVISE (posix_fadvise և madvise զանգերի ասինխրոն տարբերակներ), IORING_OP_SEND,
      IORING_OP_RECV (ցանցային տվյալների ուղարկում և ստացում),
      IORING_OP_EPOLL_CTL (գործողություններ կատարել epoll ֆայլերի նկարագրիչների վրա):

    • Ավելացվեց համակարգային զանգ pidfd_getfd (), որը թույլ է տալիս գործընթացին առբերել բաց ֆայլի ֆայլի նկարագրիչը մեկ այլ գործընթացից:
    • Իրականացվել է «bootconfig» մեխանիզմը, որը թույլ է տալիս, բացի հրամանի տողի տարբերակներից, պարամետրերի ֆայլի միջոցով որոշել միջուկի պարամետրերը: Այսպիսի ֆայլեր initramfs պատկերին ավելացնելու համար առաջարկվում է bootconfig կոմունալ: Այս հատկությունը կարող է օգտագործվել, օրինակ, բեռնման ժամանակ kprobes-ը կարգավորելու համար:
    • Վերանախագծված անանուն խողովակներում տվյալների գրելու և կարդալու սպասման մեխանիզմ: Փոփոխությունը թույլ տվեց արագացնել այնպիսի առաջադրանքներ, ինչպիսիք են խոշոր նախագծերի զուգահեռ հավաքումը: Այնուամենայնիվ, օպտիմիզացումը կարող է հանգեցնել մրցավազքի վիճակի GNU make-ում 4.2.1 թողարկման սխալի պատճառով, որը շտկվել է 4.3 տարբերակում:
    • Ավելացվեց PR_SET_IO_FLUSHER դրոշը prctl(-ին), որը կարող է օգտագործվել հիշողության ազատ գործընթացները նշելու համար, որոնք չպետք է ենթարկվեն սահմանափակումների, երբ համակարգում հիշողությունը քիչ է:
    • Android-ում օգտագործվող ION հիշողության բաշխման համակարգի հիման վրա ներդրվել է ենթահամակարգ dma-buf կույտեր, որը թույլ է տալիս վերահսկել DMA բուֆերների տեղաբաշխումը վարորդների, հավելվածների և տարբեր ենթահամակարգերի միջև հիշողության տարածքները կիսելու համար:
  • Սարքավորումների ճարտարապետություններ
    • Ավելացվել է աջակցություն E0PD ընդլայնման համար, որը հայտնվել է ARMv8.5-ում և թույլ է տալիս պաշտպանել հարձակումներից՝ կապված պրոցեսորի վրա հրահանգների սպեկուլյատիվ կատարման հետ: E0PD-ի վրա հիմնված պաշտպանությունը հանգեցնում է ավելի ցածր ծախսերի, քան KPTI-ի (միջուկի էջի աղյուսակի մեկուսացում) պաշտպանությունը:
    • ARMv8.5 ճարտարապետության վրա հիմնված համակարգերի համար ավելացվել է RNG հրահանգի աջակցություն՝ ապահովելով ապարատային կեղծ պատահական թվերի գեներատորի հասանելիություն: Միջուկում RNG հրահանգն օգտագործվում է էնտրոպիա առաջացնելու համար միջուկի կողմից տրամադրված կեղծ պատահական թվերի գեներատորը սկզբնավորելիս:
    • Հեռացվել է միջուկում ավելացված MPX-ի (Հիշողության պաշտպանության ընդլայնումներ) աջակցությունը 3.19 և թույլ է տալիս կազմակերպել ցուցիչների ստուգում՝ համոզվելու համար, որ հիշողության տարածքների սահմանները պահպանվում են: Այս տեխնոլոգիան լայնորեն չի կիրառվել կոմպիլյատորներում և հանվել է GCC-ից:
    • RISC-V ճարտարապետության համար ներդրվել է KASan (Kernel address sanitizer) վրիպազերծման գործիքի աջակցությունը, որն օգնում է հայտնաբերել հիշողության հետ աշխատելիս սխալները:
  • սարքավորում
    • Տեխնիկական աջակցություն իրականացվել է USB 4.0, որը հիմնված է Thunderbolt 3 արձանագրության վրա և ապահովում է թողունակություն մինչև 40 Գբիտ/վրկ՝ միաժամանակ պահպանելով հետընթաց համատեղելիությունը USB 2.0-ի և USB 3.2-ի հետ: Ըստ անալոգիայի Կայծակի հարված USB 4.0 ինտերֆեյսը թույլ է տալիս թունել տարբեր արձանագրություններ միակցիչով մեկ մալուխի վրա Type-C- ն, ներառյալ PCIe-ը, Display Port-ը և USB 3.x-ը, ինչպես նաև արձանագրությունների ծրագրային ներդրումը, օրինակ, ցանցային կապերի կազմակերպման համար հոսթերների միջև: Իրականացումը հիմնված է Thunderbolt դրայվերի վրա, որն արդեն ներառված է Linux միջուկում և այն հարմարեցնում է USB4-ի հետ համատեղելի հոստերների և սարքերի հետ աշխատելու համար: Փոփոխությունները նաև ավելացնում են Thunderbolt 3 սարքերի աջակցությունը Connection Manager-ի ծրագրային ներդրմանը, որը պատասխանատու է մեկ միակցիչի միջոցով բազմաթիվ սարքեր միացնելու համար թունելներ ստեղծելու համար:
    • amdgpu վարորդում ավելացրել է HDCP 2.x (High-bandwidth Digital Content Protection) պատճենահանման պաշտպանության տեխնոլոգիայի նախնական աջակցություն: Ավելացվել է աջակցություն AMD Pollock ASIC չիպի համար, որը հիմնված է Raven 2-ի վրա: Իրականացրել է GPU-ի վերակայման հնարավորությունը Renoir և Navi ընտանիքների համար:
    • DRM վարորդ Intel վիդեո քարտերի համար ավելացրել է Ice Lake և Tiger Lake միկրոճարտարապետության վրա հիմնված չիպերի DSI VDSC աջակցությունը, ներդրվել է LMEM mmap (սարքի տեղական հիշողություն), VBT (Video BIOS Table) վերլուծությունը բարելավվել է, HDCP 2.2 աջակցությունը ներդրվել է Coffee Lake չիպերի համար:
    • Աշխատանքները շարունակվեցին amdkfd վարորդի կոդը (դիսկրետ GPU-ների համար, ինչպիսիք են Ֆիջին, Տոնգան, Polaris-ը) amdgpu վարորդի հետ միավորելու ուղղությամբ:
    • K10temp դրայվերը վերամշակվել է՝ ավելացնելով AMD Zen պրոցեսորների համար լարման և հոսանքի պարամետրերի ցուցադրման աջակցություն, ինչպես նաև Zen և Zen 2 պրոցեսորներում օգտագործվող ջերմաստիճանի տվիչների ընդլայնված տեղեկատվությունը:
    • Nouveau driver-ում ավելացրել է Աջակցություն NVIDIA GPU-ների համար հաստատված որոնվածի բեռնման ռեժիմին, որը հիմնված է Թյուրինգի միկրոճարտարապետության վրա (GeForce RTX 2000), ինչը հնարավորություն է տվել այս քարտերի եռաչափ արագացման աջակցությունը (պահանջվում է NVIDIA թվային ստորագրությամբ պաշտոնական որոնվածը ներբեռնելը): Ավելացվել է աջակցություն TU3x գրաֆիկական շարժիչի համար: HD Audio-ի հետ կապված խնդիրները լուծված են:
    • Ավելացվել է տվյալների սեղմման աջակցություն DisplayPort MST (Multi-Stream Transport) միջոցով փոխանցելիս:
    • Ավելացվեց նոր վարորդ"ath11k» Qualcomm անլար չիպերի համար, որոնք աջակցում են 802.11ax:
      Վարորդը հիմնված է mac80211 stack-ի վրա և աջակցում է մուտքի կետի, աշխատակայանի և ցանցային ցանցի հանգույցի ռեժիմները:

    • sysfs-ի միջոցով ապահովվում է ժամանակակից կոշտ սկավառակների և SSD-ների վրա օգտագործվող ընթեռնելի ջերմաստիճանի ցուցիչների ընթերցումների հասանելիությունը:
    • Ներկայացված է էական փոփոխություններ ALSA ձայնային համակարգում, որոնց նպատակն է ազատել կոդը 2038 թվականի խնդիրները (խուսափելով 32-բիթանոց time_t տիպի օգտագործումից snd_pcm_mmap_status և snd_pcm_mmap_control ինտերֆեյսներում): Ավելացվեց նոր աուդիո կոդեկների աջակցություն
      Qualcomm WCD9340/WCD9341, Realtek RT700, RT711, RT715, RT1308, Ingenic JZ4770:

    • Ավելացված է LCD վահանակների վարորդներ Logic PD 28, Jimax8729d MIPI-DSI, igenic JZ4770, Sony acx424AKP, Leadtek LTK500HD1829, Xinpeng XPP055C272, AUO B116XAK01, GiantPlus GPM940
      BOE NV140FHM-N49,
      Satoz SAT050AT40H12R2,
      Սուր LS020B1DD01D.

    • Ավելացված է աջակցություն ARM տախտակների և Gen1 հարթակների համար Amazon Echo (OMAP3630-ի վրա հիմնված), Samsung Galaxy S III mini (GT-I8190), Allwinner Emlid Neutis, Libre Computer ALL-H3-IT, PineH64 Model B, Aibretech Amlogic GX PC,
      Armada SolidRun Clearfog GTR, NXPGateworks GW59xx,
      Tolino Shine 3 էլեկտրոնային գրքերի ընթերցող,
      Embedded Artists COM (i.MX7ULP), SolidRun Clearfog CX/ITX և HoneyComb (LX2160A), Google Coral Edge TPU (i.MX8MQ),
      Rockchip Radxa Dalang Carrier, Radxa Rock Pi N10, VMARC RK3399Pro SOM
      ST Ericsson HREF520, Inforce 6640, SC7180 IDP, Atmel/Microchip AM9X60 (ARM926 SoC, Kizboxmini), ST stm32mp15, AM3703/AM3715/DM3725, ST Ericsson ab8505, QuoSCal.9863, Unis. Ավելացված է աջակցություն Raspberry Pi 7180-ում օգտագործվող PCIe կարգավորիչի համար:

Միաժամանակ Լատինական Ամերիկայի Ազատ Ծրագրային ապահովման հիմնադրամը ձեւավորվել է
տարբերակը ամբողջովին անվճար միջուկ 5.6 - Linux-libre 5.6-gnu, մաքրված որոնվածից և վարորդի տարրերից, որոնք պարունակում են ոչ ազատ բաղադրիչներ կամ ծածկագրի բաժիններ, որոնց շրջանակը սահմանափակված է արտադրողի կողմից: Նոր թողարկումն անջատում է AMD TEE-ի, ATH11K-ի և Mediatek SCP-ի դրայվերների բլբի բեռնումը: Թարմացված բլոբի մաքրման կոդը AMD PSP, amdgpu և nouveau դրայվերներում և ենթահամակարգերում:

Source: opennet.ru

Добавить комментарий