Warbixinta Horumarinta ee FreeBSD ee rubuci hore ee 2020

la daabacay warbixin ku saabsan horumarinta mashruuca FreeBSD laga bilaabo Janaayo ilaa Maarso 2020. Waxaa ka mid ah isbeddellada waxaan ka xusi karnaa:

  • Arrimaha guud iyo nidaamka
    • Waxa laga saaray isku xidhka GCC ee geedka isha ee FreeBSD-CURRENT, iyo sidoo kale gperf, gcov iyo gtc (qalabka compiler) ee aan la isticmaalin. Dhammaan goobaha aan taageerin Clang waxaa loo beddelay isticmaalka qalabka dibadda ee lagu rakibo dekedaha. Nidaamka saldhiga waxa uu soo raray sii dayntii dhacday ee GCC 4.2.1, iyo is dhexgalka noocyo cusubna suurtagal ma ahayn sababtoo ah u gudubka 4.2.2 ee shatiga GPLv3, kaas oo loo arkay mid aan ku haboonayn qaybaha saldhiga FreeBSD. Siideynta hadda ee GCC, oo ay ku jirto GCC 9, ayaa wali lagu rakibi karaa xirmooyinka iyo dekedaha.
    • Kaabayaasha ku dayashada deegaanka Linux (Linuxulator) ayaa ku daray taageerada wicitaanka nidaamka dirida, qaabka TCP_CORK (oo looga baahan yahay nginx), iyo calanka MAP_32BIT (waxay xalliyaan dhibaatada soo saarista xirmooyinka Mono ee Ubuntu Bionic). Dhibaatooyinka xallinta DNS marka la isticmaalayo glibc ka cusub 2.30 (tusaale ahaan CentOS 8) waa la xalliyay.
      Kaabayaasha isdhexgalka ee joogtada ah ayaa bixiya awooda lagu socodsiiyo LTP (Mashruuca Tijaabada Linux) ee ku shaqeeya Linuxulator si loo tijaabiyo hagaajinta lagu sameeyay koodhka si loo taageero Linux. Qiyaastii 400 oo imtixaan ayaa ku guul darraystay oo u baahan hagaajin (qaladaadka qaarkood waxaa keena xaqiiqooyin been ah, qaar waxay u baahan yihiin hagaajin yar, laakiin waxaa jira kuwo kale oo u baahan in lagu daro taageerada wicitaanada nidaamka cusub si loo hagaajiyo). Shaqada ayaa la qabtay si loo nadiifiyo koodhka Linuxulator iyo fududaynta cilladaha. Xirmooyinka taageerada sifada fidsan iyo nidaamka fexecve waa la diyaariyay, laakiin aan wali dib loo eegin.

    • Kulamada kooxda shaqada ee loo abuuray si ay u fuliyaan guuritaanka koodhadhka isha ee nidaamka xakamaynta isha dhexe Jabinta nidaamka baahsanaanta Git ayaa sii socota. Warbixin xambaarsan soo jeedinta socdaalka ayaa ku guda jirta diyaarinta.
    • Π’ rtld (xidhiidhiyaha runtime) oo hagaajiyay qaabka fulinta tooska ah ("/libexec/ld-elf.so.1 {dariiqa} {arguments}").
    • Mashruuca tijaabada jahawareerka ee kernel-ka FreeBSD ee la isticmaalayo nidaamka syzkaller ayaa sii socda inuu horumariyo. Inta lagu jiro xilliga warbixinta, dhibaatooyinka xirmada shabakada iyo koodhka ku shaqeynta miisaska sharraxaadaha faylka ee la aqoonsaday iyadoo la isticmaalayo syzkaller ayaa meesha laga saaray. Ka dib ogaanshaha qaladka, isbeddelada ayaa lagu daray xirmada SCTP si loo fududeeyo cilladaha. Xeerar ayaa lagu daray stress2 dhigay si loo ogaado dib u soo noqoshada suurtagalka ah. Taageerada lagu daray ee tijaabinta fuzz ee wicitaanada nidaamka cusub, oo ay ku jiraan copy_file_range(), __realpathat()iyo Capsicum wicitaanada hab hoosaadka. Shaqadu waxay ku sii socotaa inay ku daboosho lakabka ku dayashada Linux oo leh tijaabo fuzz. Waxaan falanqeynay oo aan tirtirnay khaladaadkii lagu xusay warbixinadii ugu dambeeyay ee Coverity Scan.
    • Nidaamka isdhexgalka joogtada ah wuxuu u wareegay fulinta dhammaan imtixaanada laanta madaxa iyadoo la isticmaalayo qabiilg/lld. Markaad tijaabinayso RISC-V, samaynta sawir saxan oo dhamaystiran ayaa loo hubiyaa in lagu wado imtixaanada QEMU iyadoo la isticmaalayo OpenSBI. Waxaa lagu daray hawlo cusub oo lagu tijaabinayo sawirada iyo powerpc64 mashiinada farsamada (FreeBSD-head-powerpc64-images, FreeBSD-head-powerpc64-testvm).
    • Shaqada ayaa socota si loogu wareejiyo qolka tijaabada ee Kyua ee dekadaha (devel / kyua) nidaamka saldhigga si loo xalliyo dhibaatooyinka (baakado ayaa lagu rakibay si tartiib tartiib ah) kuwaas oo soo baxa marka la isticmaalayo Kyua ee naqshadaha cusub, horumarinta kaas oo lagu fuliyo isticmaalka emulator ama FPGA. Isku-dhafka nidaamka saldhigga ayaa si weyn u fududeyn doona tijaabinta aaladaha isku xiran iyo isdhexgalka nidaamyada is-dhexgalka joogtada ah.
    • Mashruuc ayaa la bilaabay si kor loogu qaado waxqabadka darawalka buundada shabakadda if_bridge, kaas oo isticmaala hal mutex si uu u xidho xogta gudaha, taas oo aan u oggolaan in lagu gaaro waxqabadka la rabo ee nidaamyada leh tiro badan oo deegaan xabsi ah ama mashiinno muuqaal ah oo ku midaysan hal shabakad. Marxaladdan, imtixaannada ayaa lagu daray koodhka si looga hortago dib-u-celinta inay dhacaan inta lagu jiro casriyeynta ee la shaqeynta qufulka. Suurtagalnimada isticmaalka ConcurrencyKit si loo barbar dhigo maamulayaasha wareejinta xogta (bridge_input(), bridge_output(), bridge_forward(), ...) ayaa la tixgelinayaa.
    • Waxaa lagu daray wicitaan cusub oo nadaamka sigfastblock si loogu ogolaado dunta si ay u qeexdo xannibaadda xusuusta ee maamulaha signallada degdegga ah si loo horumariyo waxqabadka kuwa wax ka qabanaya ka reeban.
    • Kernelku waxa uu ku darayaa taageerada LSE (Large System Extension) tilmaamaha atomiga ee ay taageerayaan nidaamyada ARMv8.1. Tilmaamahan waxaa looga baahan yahay si loo hagaajiyo waxqabadka marka ay ku shaqeynayaan Cavium ThunderX2 iyo AWS Graviton 2. Isbedelada dheeraadka ah waxay ogaanayaan taageerada LSE waxayna si firfircoon u awoodaan hirgelinta atomiga iyaga oo ku saleysan. Inta lagu jiro tijaabada, isticmaalka LSE ayaa suurtogal ka dhigay in la yareeyo wakhtiga processor-ka ee lagu kharash gareeyo marka la ururinayo kernel 15%.
    • Hagaajinta wax qabadka waa la fuliyay waxaana la balaadhiyey shaqaynta agabka agabka ee faylasha la fulin karo ee qaabka ELF.
      Taageero lagu daray kaydinta macluumaadka qaladka DWARF, la xalliyey mashaakilaadka ku jira yutiilitida elfcopy/objcopy, lagu daray habaynta DW_AT_ranges,
      readelf waxa ay fulisaa awooda lagu kala saaro PROTMAX_DISABLE, STKGAP_DISABLE iyo calamada WXNEEDED, iyo sidoo kale Xen iyo GNU Build-ID.

  • Amniga
    • Si loo hagaajiyo waxqabadka FreeBSD ee jawiga daruuraha Azure, shaqada ayaa socota si ay u bixiso taageerada habka HyperV Socket, kaas oo u oggolaanaya isticmaalka isdhexgalka godka ee isdhexgalka nidaamka martida iyo deegaanka martida loo yahay iyada oo aan la dejin shabakad.
    • Shaqada ayaa socota si loo bixiyo dhismayaal la soo celin karo oo ah FreeBSD, taasoo suurtogal ka dhigaysa in la hubiyo in faylasha la fulin karo ee qaybaha nidaamka si sax ah looga soo ururiyey koodka isha ee lagu dhawaaqay oo aanay ku jirin isbeddello ka baxsan.
    • Awoodda lagu xakameynayo ku darida hababka ilaalinta dheeraadka ah (ASLR, PROT_MAX, farqiga taranka, W + X khariidaynta) ee heerka hababka shakhsi ahaaneed ayaa lagu daray utility elfctl
  • Kaydinta iyo nidaamyada faylka
    • Shaqada ayaa socota si loo hirgeliyo awoodda NFS si ay ugu shaqeyso kanaal isgaarsiineed oo qarsoodi ah oo ku salaysan TLS 1.3, halkii la isticmaali lahaa Kerberos (sec=krb5p mode), kaas oo ku xaddidan sirta fariimaha RPC oo kaliya waxaana lagu fuliyaa kaliya software. Hirgelinta cusub waxay isticmaashaa kernel-ka ay bixiso TLS si ay awood ugu yeelato dardargelinta qalabka. NFS ee ka sarreeya koodka TLS wuxuu ku dhow yahay inuu diyaar u yahay tijaabinta, laakiin wuxuu weli u baahan yahay shaqo si uu u taageero shahaadooyinka macmiilka ee saxeexan oo la waafajiyo kaydka TLS ee kernel si loogu diro xogta NFS (patches si loo helo mar hore ayaa diyaar ah).
  • Taageerada qalabka
    • Shaqada ayaa socota si loogu daro taageerada Shiinaha x86 CPU Hygon oo ku salaysan tignoolajiyada AMD;
    • Iyada oo qayb ka ah CheriBSD, fargeeto FreeBSD ah oo loogu talagalay qaab-dhismeedka processor-ka cilmi-baarista CHERI (Awoodda Hardware Hagaajinta Tilmaamaha RISC), taageerada processor-ka ARM Morello ayaa sii socota in la hirgeliyo, kaas oo taageeri doona nidaamka xakamaynta marin-u-helidda xusuusta CHERI oo ku saleysan qaabka amniga mashruuca Capsicum. Morello chip ayaa qorsheynaya la sii daayo 2021. Shaqadu waxay hadda diiradda saareysaa ku darida taageerada Arm Neoverse N1 ee madal awood u leh Morello. Deked bilow ah oo CheriBSD ah oo loogu talagalay qaab dhismeedka RISC-V ayaa la soo bandhigay. Horumarinta CheriBSD waxay ku sii socotaa tusaalaha tixraaca CHERI ee ku salaysan qaab dhismeedka MIPS64.
    • Xakamaynta FreeBSD waxay ku sii socotaa 64-bit SoC NXP LS1046A iyadoo lagu saleynayo processor-ka ARMv8 Cortex-A72 oo leh mashiinka dardargelinta baakad isku-dhafan, 10 Gb Ethernet, PCIe 3.0, SATA 3.0 iyo USB 3.0. Hadda, darawallada QorIQ iyo LS1046A, GPIO, QorIQ LS10xx AHCI, VF610 I2C, Epson RX-8803 RTC, QorIQ LS10xx SDHCI ayaa loo diyaarinayaa wareejinta ugu weyn ee ka kooban FreeBSD.
    • Darawalka ena waxaa loo cusboonaysiiyay nooca 2.1.1 iyadoo la taageerayo jiilka labaad ee ENAv2 (Elastic Network Adapter) adabtarada shabakadaha loo isticmaalo kaabayaasha Elastic Compute Cloud (EC2) si loo habeeyo xidhiidhka u dhexeeya EC2 nodes ee xawaaraha ilaa 25 Gb/ s. Cusboonaysiinta ENA 2.2.0 ayaa la diyaarinayaa.
    • Hagaajinta dekeda FreeBSD ee madal powerpc64 ayaa sii socota. Diiradu waxay tahay bixinta waxqabadka tayada leh ee nidaamyada leh IBM POWER8 iyo POWER9 Processor. Inta lagu jiro xilliga warbixinta, FreeBSD-CURRENT ayaa loo wareejiyay si loo isticmaalo isu-duwaha LLVM/Clang 10.0 iyo ld linker beddelka GCC. Sida caadiga ah, nidaamyada powerpc64 waxay isticmaalaan ELFv2 ABI iyo taageerada ELFv1 ABI waa la joojiyay. FreeBSD-STABLE wali waxay leedahay gcc 4.2.1. Dhibaatooyinki virtio, acraid iyo ixl darawalada waa la xaliyay. Nidaamyada powerpc64 waxaa suurtagal ah in lagu socodsiiyo QEMU iyada oo aan la helin taageerada Bogagga Weyn.
    • Shaqadu waxay sii waddaa hirgelinta taageerada dhismaha RISC-V. Qaabkeeda hadda, FreeBSD waxay horeyba ugu guuleysatey boorka SiFive Hifive Unleashed, kaas oo darawalada loo diyaariyey
      UART, SPI iyo PRCI, waxay taageertaa OpenSBI iyo SBI 0.2 firmware. Muddada warbixinta, shaqada waxaa diiradda lagu saaray ka guurista GCC una guuri lahayd qabiil iyo ld.

  • Codsiyada iyo nidaamka dekedda
    • Ururinta dekedaha FreeBSD waxay ka gudubtay xadka 39 kun oo dekedood, tirada PR-yada aan la xidhin waxyar ayaa dhaaftay 2400, kuwaas oo 640 PRs aan wali la kala saarin. Muddada warbixinta, 8146 isbeddel ayaa laga sameeyay 173 horumariye. Afar ka mid ah ka-qaybgalayaasha cusub ayaa helay xuquuqaha go'aanka ah (LoΓ―c Bartoletti, Mikael Urankar, Kyle Evans, Lorenzo Salvadore). Lagu daray USES=qca calanka oo meesha laga saaray USES=calanka zope (sababo la xiriirta la'aanta Python 3). Shaqada ayaa socota sidii Python 2.7 looga saari lahaa geedka dekedaha - dhammaan dekedaha ku saleysan Python 2 waa in la geeyaa Python 3 ama waa laga saarayaa. Maareeyaha xirmada pkg waa la cusboonaysiiyay si loo sii daayo 1.13.2.
    • Qaybaha xidhmooyinka garaafyada ee la cusboonaysiiyay iyo dekedaha la xidhiidha xorg
      Adeegga X.org ayaa loo cusboonaysiiyay nooca 1.20.8 (horay loogu soo raray laanta 1.18), kaas oo u oggolaaday FreeBSD in ay si caadi ah u isticmaasho udev/evdev backend si ay ula tacaasho aaladaha wax soo galinta. Xirmada Mesa waxa loo beddelay in la isticmaalo kordhinta DRI3 halkii laga isticmaali lahaa DRI2 si caadi ah. Shaqadu waxay socotaa si loo ilaaliyo darawalada garaafyada, kaydinta qalabka galinta, iyo qaybaha drm-kmod (deked awood u siinaysa hawlgalka amdgpu, i915 iyo radeon modules DRM, iyadoo la adeegsanayo qaab dhismeedka linuxkpi si ay ula jaanqaado maamulaha tooska ah ee kernel Linux) ilaa hadda.

    • Desktop-ka KDE Plasma, Qaab-dhismeedka KDE, Codsiyada KDE iyo Qt waa lala socdaa oo waa la cusboonaysiiyaa siidooyinkii ugu dambeeyay. Kstars codsi cusub (star atlas) ayaa lagu daray dekedaha.
    • Shaqada ayaa la qabtay si loo baabi'iyo isbeddellada dib-u-cusboonaaday ee maamulaha daaqadda xfwm4 ee soo muuqday ka dib markii la cusboonaysiiyay Xfce nooca 4.14 (tusaale, farshaxanku waxay soo muuqdeen markii la qurxinayey daaqadaha).
    • Dekedda Khamriga waa la cusboonaysiiyay si loo sii daayo Khamriga 5.0 (horay 4.0.3 ayaa la bixiyay).
    • Laga bilaabo nooca 1.14, isku-duwaha luqadda Go wuxuu ku daray taageerada rasmiga ah ee dhismaha ARM64 ee FreeBSD 12.0.
    • OpenSSH ee nidaamka saldhiga waa la cusboonaysiiyay si loo sii daayo 7.9p1.
    • Maktabada sysctlmibinfo2 waa la hirgeliyay waxaana la dhigay dekedo (devel/libsysctlmibinfo2), iyadoo siinaya API-ga gelitaanka sysctl MIB iyo tarjumaada magacyada sysctl ee aqoonsiga shayga (OIDs).
    • Cusboonaysiinta qaybinta ayaa la sameeyay NomadBSD 1.3.1, kaas oo ah daabacaadda FreeBSD oo loo habeeyey in loo isticmaalo sidii desktop-ka la qaadan karo ee laga soo qaadi karo darawalka USB. Jawiga garaafku wuxuu ku salaysan yahay maamulaha daaqada Furo furan. Loo isticmaalo rakibaadda wadiiqooyinka DSBMD (kordhinta CD9660, FAT, HFS+, NTFS, Ext2/3/4 waa la taageeray), si loo habeeyo shabakad wireless - wifimgr, iyo in la xakameeyo mugga - DSBMixer.
    • La bilaabay shaqo markuu u qorayo dukumeenti dhamaystiran maamulaha deegaanka xabsiga dheri. Dheriga 0.11.0 ayaa loo diyaarinayaa siidaynta, kaas oo ay ku jiraan agabka lagu maareeyo xidhmooyinka shabakada

Source: opennet.ru

Add a comment