FreeBSD Development Lipoti mo le kuata muamua o le 2020

lomia faasalalau lipoti i le atinaʻeina o le FreeBSD poloketi mai Ianuari ia Mati 2020. Faatasi ai ma suiga e mafai ona tatou matauina:

  • Fa'afitauli lautele ma fa'alapotopotoga
    • Aveese le GCC compiler seti mai le FreeBSD-CURRENT source tree, faʻapea foʻi ma le gpperf, gcov ma le gtc (devicetree compiler) e leʻi faʻaaogaina. O tulaga uma e le lagolagoina Clang ua suia i le faʻaogaina o meafaigaluega faufale fafo faʻapipiʻi mai ports. O le faiga faavae na lafoina se faʻasalalauga tuai o le GCC 4.2.1, ma le tuʻufaʻatasia o lomiga fou na le mafai ona o le suiga o le 4.2.2 i le laisene GPLv3, lea na manatu e le talafeagai mo vaega autu o le FreeBSD. O fa'asalalauga nei o le GCC, e aofia ai le GCC 9, e mafai lava ona fa'apipi'i mai afifi ma ports.
    • O le Linux environment emulation infrastructure (Linuxulator) ua faʻaopoopoina le lagolago mo le sendfile system call, TCP_CORK mode (manaʻomia mo nginx), ma le MAP_32BIT fuʻa (foia le faʻafitauli i le faʻalauiloaina o afifi ma Mono mai le Ubuntu Bionic). Faʻafitauli ile DNS resolution pe a faʻaogaina le glibc fou nai lo le 2.30 (mo se faʻataʻitaʻiga mai CentOS 8) ua foia.
      O le fa'aauauina o atina'e tu'ufa'atasia e maua ai le agava'a e fa'atino ai galuega LTP (Linux Testing Project) e fa'atino ai le Linuxulator e fa'ata'ita'i fa'alelei na faia i le code e lagolago ai Linux. E tusa ma le 400 suʻega e le manuia ma manaʻomia le faʻaleleia (o nisi mea sese e mafua mai i mea sese, o nisi e manaʻomia ni faʻaleleia le taua, ae o loʻo i ai isi e manaʻomia le faʻaopoopoina o le lagolago mo telefoni fou e faʻaleleia). Ua maeʻa galuega e faʻamamā ai le Linuxulator code ma faʻafaigofie le faʻaogaina. Patches ma lagolago mo uiga faʻalautele ma le fexecve system call ua uma ona saunia, ae leʻi toe iloiloina.

    • Fonotaga a le vaega galue na faia e faʻatino ai le femalagaiga o tulafono faʻavae mai le faʻaogaina o le faʻaogaina o le faʻaogaina o le faʻaogaina o le Subversion i le decentralized system Git faʻaauau. O lo'o fa'agasolo tapenaga se lipoti o lo'o iai ni talosaga mo femalagaiga.
    • В rtld (runtime linker) fa'aleleia le faiga fa'atino sa'o ("/libexec/ld-elf.so.1 {ala} {finauga}").
    • O loʻo faʻaauau pea ona atiaʻe le poloketi mo le suʻeina o le FreeBSD kernel e faʻaaoga ai le syzkaller system. I le vaitaimi o lipoti, o faʻafitauli i le faʻapipiʻi fesoʻotaʻiga ma le code mo le galue ma faila faʻamatalaga laulau faʻamaonia na faʻaaogaina syzkaller na faʻaumatia. I le mae'a ai o le su'esu'ega sese, ua fa'aopoopoina suiga ile fa'aputuga o le SCTP ina ia fa'afaigofie ai le fa'aogaina. O tulafono ua fa'aopoopo i le stress2 seti e fa'ailoa ai fa'aletonu e ono tula'i mai. Fa'aopoopoina le lagolago mo su'ega fuzz o telefoni fou, e aofia ai kopi_file_range(), __realpathat() ma Capsicum subsystem telefoni. O loʻo faʻaauau pea galuega e ufiufi ai le Linux emulation layer i suʻega fuzz. Sa matou su'esu'eina ma fa'ate'aina mea sese na ta'ua i lipoti lata mai o Coverity Scan.
    • O le fa'aauauina o le tu'ufa'atasiga ua sui i le fa'atinoina o su'ega uma a le lala ulu na'o le fa'aogaina o le clang/lld. Pe a suʻesuʻe mo le RISC-V, o le faʻatulagaina o se ata atoa o le tisiketi e faʻamautinoa mo le faʻatinoina o suʻega i QEMU e faʻaaoga ai OpenSBI. Faʻaopoopo galuega fou mo le suʻeina o ata ma le powerpc64 masini komepiuta (FreeBSD-head-powerpc64-images, FreeBSD-head-powerpc64-testvm).
    • O loʻo faʻagasolo le galuega e faʻafeiloaʻi le Kyua suʻega suʻega mai ports (devel/kyua) i le faiga faavae e foia ai faʻafitauli (faʻapipiʻi faʻapipiʻi lemu) lea e tulaʻi mai pe a faʻaaogaina Kyua i luga o fausaga fou, atinaʻe lea e faʻaaogaina e faʻaaoga ai se emulator poʻo FPGA. O le tu'ufa'atasia i totonu o le faiga fa'avae o le a matua fa'afaigofieina ai le su'ega o fa'avae fa'apipi'i ma fa'aoga fa'atasi ma faiga fa'aauau fa'atasi.
    • Ua fa'alauiloa se poloketi e fa'asilisili ai le fa'atinoga o le ta'avale alalaupapa feso'ota'iga if_bridge, lea e faʻaaogaina ai se tasi mutex e loka ai faʻamatalaga i totonu, lea e le faʻatagaina ai le ausiaina o le manaʻoga faʻatinoga i luga o faiga faʻatasi ma le tele o siʻosiʻomaga falepuipui poʻo masini faʻapitoa e tuʻufaʻatasia i le tasi fesoʻotaʻiga. I lenei laʻasaga, ua faʻaopoopoina suʻega i le faʻailoga e puipuia ai faʻalavelave mai le tupu i le taimi o le faʻafouina o le galue ma loka. O le avanoa e fa'aoga ai le ConcurrencyKit e fa'atusaina ai fa'amatalaga fe'avea'i (bridge_input(), bridge_output(), bridge_forward(), ...) o lo'o iloiloina.
    • Ua fa'aopoopoina se telefoni sigfastblock system fou e fa'ataga ai se filo e fa'amaoti mai ai se poloka manatua mo se fa'ailoga vave e fa'aleleia ai le fa'atinoga o tagata fa'apitoa.
    • O le fatu faʻaopoopoina le lagolago mo LSE (Large System Extension) faʻatonuga atomic e lagolagoina e ARMv8.1 faiga. O nei faʻatonuga e manaʻomia e faʻaleleia ai le faʻatinoga pe a taʻavale i luga o laupapa Cavium ThunderX2 ma AWS Graviton 2. O suiga faʻaopoopo e iloa ai le lagolago a le LSE ma faʻamalosia le faʻatinoina o le atomic faʻavae i luga o latou. I le taimi o suʻega, o le faʻaaogaina o le LSE na mafai ai ona faʻaitiitia le taimi o le gaosiga e faʻaalu pe a faʻapipiʻi le fatu e 15%.
    • Ua mae'a fa'atinoina le fa'atinoina o galuega ma ua fa'alautele le fa'atinoga o le pusa meafaigaluega mo faila fa'atino i le fa'asologa o le ELF.
      Faʻaopoopo le lagolago mo le faʻaogaina o faʻamatalaga faʻapipiʻi DWARF, foia faʻafitauli i le elfcopy/objcopy utilities, faʻaopoopo DW_AT_ranges processing,
      e fa'atino e le readelf le agava'a e fa'aliliu ai fu'a PROTMAX_DISABLE, STKGAP_DISABLE ma WXNEEDED, fa'apea fo'i ma Xen ma GNU Build-ID.

  • Puipuiga
    • Ina ia faʻaleleia le faʻatinoga o le FreeBSD i le Azure cloud environments, o loʻo faagasolo galuega e tuʻuina atu le lagolago mo le HyperV Socket mechanism, lea e mafai ai ona faʻaogaina se fesoʻotaʻiga socket mo fegalegaleaiga i le va o le malo ma le siosiomaga talimalo e aunoa ma le setiina o se fesoʻotaʻiga.
    • O loʻo faʻagasolo galuega e tuʻuina atu ai le toe faʻaleleia o le FreeBSD, e mafai ai ona faʻamautinoa o faila faʻaogaina o vaega o le polokalama o loʻo tuʻufaʻatasia saʻo mai tulafono faʻaupuga faʻaalia ma e le o iai ni suiga faʻapitoa.
    • O le mafai ona pulea le faʻaofiina o isi puipuiga faʻapitoa (ASLR, PROT_MAX, stack gap, W + X mapping) i le tulaga o gaioiga taʻitasi ua faʻaopoopoina i le elfctl aoga.
  • Teuina ma faila faiga
    • O loʻo faʻagasolo galuega e faʻatino ai le gafatia mo le NFS e faʻaogaina i luga o se fesoʻotaʻiga fesoʻotaʻiga faʻailoga e faʻavae i luga o le TLS 1.3, nai lo le faʻaaogaina o Kerberos (sec=krb5p mode), lea e faʻatapulaʻa i le faʻailogaina o feʻau RPC ma e faʻatinoina naʻo le polokalama. O le faʻatinoga fou e faʻaaogaina ai le faʻapipiʻi TLS tuʻuina atu fatu e faʻaogaina ai le faʻavaveina o meafaigaluega. O le NFS i luga o le TLS code ua toeitiiti lava saunia mo le suʻega, ae o loʻo manaʻomia pea le galuega e lagolago ai tusi pasi saini a le tagata o tausia ma faʻafetaui le kernel TLS stack e lafo ai faʻamatalaga NFS (faʻapipiʻi mo le mauaina ua uma ona saunia).
  • Lagolago meafaigaluega
    • O loʻo faʻagasolo galuega e faʻaopoopo le lagolago mo Saina x86 CPU Hygon faʻavae i luga o tekinolosi AMD;
    • O se vaega o le CheriBSD, o se tui ole FreeBSD mo suʻesuʻega faʻataʻitaʻiga fausaga CHERI (Capability Hardware Enhanced RISC Instructions), lagolago mo le ARM Morello processor o loʻo faʻaauau pea ona faʻatinoina, lea o le a lagolagoina le CHERI memory access system e faʻavae i luga o le Capsicum project security model. Morello chip o lo'o fuafua tatala i le 2021. O loʻo taulaʻi nei le galuega i le faʻaopoopoina o le lagolago mo le Arm Neoverse N1 platform e faʻamalosia ai Morello. O se uafu muamua o CheriBSD mo le fausaga RISC-V ua tu'uina atu. O lo'o fa'aauau pea le atina'eina o le CheriBSD mo le fa'ata'ita'iga fa'ata'ita'iga a le CHERI e fa'atatau i le fausaga MIPS64.
    • O lo'o fa'aauau pea le fa'aogaina o le FreeBSD mo le 64-bit SoC NXP LS1046A e fa'avae i luga o le ARMv8 Cortex-A72 processor fa'atasi ai ma se masini fa'avavevave fa'apipi'i feso'otaiga, 10 Gb Ethernet, PCIe 3.0, SATA 3.0 ma le USB 3.0. I le taimi nei, avetaʻavale QorIQ ma LS1046A, GPIO, QorIQ LS10xx AHCI, VF610 I2C, Epson RX-8803 RTC, QorIQ LS10xx SDHCI o loʻo sauniuni mo le faʻafeiloaʻi i le autu autu o le FreeBSD.
    • O le avetaʻavale ena ua faʻafouina i le version 2.1.1 faʻatasi ai ma le lagolago mo le lona lua o augatupulaga o ENAv2 (Elastic Network Adapter) fesoʻotaʻiga fesoʻotaʻiga faʻaogaina i le Elastic Compute Cloud (EC2) atinaʻe e faʻapipiʻi fesoʻotaʻiga i le va o EC2 nodes i le saoasaoa e oʻo atu i le 25 Gb / s. O lo'o saunia se fa'afouga ile ENA 2.2.0.
    • Fa'aleleia atili i le FreeBSD uafu mo le powerpc64 tulaga fa'aauau. O le taulaiga o le tuʻuina atu o faʻatinoga lelei i faiga faʻatasi ma IBM POWER8 ma POWER9 processors. I le vaitaimi o lipoti, FreeBSD-CURRENT na faʻafeiloaʻi e faʻaoga le LLVM/Clang 10.0 compiler ma lld linker nai lo le GCC. Ona o le faaletonu, o faiga powerpc64 e faaaoga ai le ELFv2 ABI ma le lagolago mo le ELFv1 ABI ua le toe faaauauina. FreeBSD-STABLE o lo'o iai pea le gcc 4.2.1. Faʻafitauli i virtio, aacraid ma ixl avetaavale ua foia. I luga o le powerpc64 faiga e mafai ona fa'agaoioia QEMU e aunoa ma le lagolago tele itulau.
    • O lo'o fa'aauau pea galuega e fa'atino ai le lagolago mo le fausaga RISC-V. I lona tulaga o loʻo iai nei, ua maeʻa ona faʻaofuofu FreeBSD i luga o le SiFive Hifive Unleashed laupapa, lea ua saunia ai avetaavale.
      UART, SPI ma PRCI, lagolago OpenSBI ma SBI 0.2 firmware. I le vaitaimi o lipoti, sa taula'i le galuega ile femalaga'iga mai le GCC ile clang ma lld.

  • Talosaga ma faiga uafu
    • O le aoina o ports FreeBSD ua laasia le faitotoʻa o le 39 afe ports, o le numera o PRs e leʻi tapunia e sili atu nai lo le 2400, lea e 640 PRs e leʻi faʻavasegaina. I le vaitaimi o lipoti, 8146 suiga na faia mai le 173 atinaʻe. E toafa tagata fou na auai na mauaina aia tatau (Loïc Bartoletti, Mikael Urankar, Kyle Evans, Lorenzo Salvadore). Faʻaopoopo USES = qca fuʻa ma aveese USES = zope fuʻa (ona o le le fetaui ma le Python 3). O lo'o fa'agasolo galuega e aveese ai le Python 2.7 mai le la'au o ports - o ports uma e fa'avae i le Python 2 e tatau ona tu'u i le Python 3 pe o le a aveesea. Ua toe faafou le pule o pusa pkg e tatala le 1.13.2.
    • Fa'afouina vaega fa'aputu ata ma ports feso'ota'i xorg.
      O le X.org server ua toe faʻafouina i le version 1.20.8 (muamua na lafoina i luga o le 1.18 lala), lea na faʻatagaina ai le FreeBSD e faʻaaogaina le udev/evdev backend mo le faʻaogaina o masini faʻaoga. Ua suia le afifi Mesa e fa'aoga le fa'aopoopoga DRI3 nai lo le DRI2 ona o le faaletonu. O loʻo faʻagasolo galuega e faʻatumauina ai taʻavale ata, faʻapipiʻi masini faʻapipiʻi, ma vaega drm-kmod (o se taulaga e mafai ai ona faʻaogaina le amdgpu, i915 ma le radeon DRM modules, e faʻaaoga ai le linuxkpi framework mo le fetaui ma le Direct Rendering Manager o le Linux kernel) faailoa mai.

    • O le KDE Plasma desktop, KDE Frameworks, KDE Applications ma le Qt o lo'o fa'afou pea ma fa'afou i fa'amatalaga lata mai. O se talosaga fou kstars (star atlas) ua faaopoopo i ports.
    • Ua mae'a le galuega e fa'ate'aina suiga toe fa'afo'i ile xfwm4 window manager lea na aliali mai ina ua mae'a fa'afouina Xfce ile version 4.14 (mo se fa'ata'ita'iga, na fa'aalia mea fa'apitoa pe a teuteu fa'amalama).
    • Ua toe faafou le uafu uaina e tatala ai le uaina 5.0 (muamua 4.0.3 sa ofoina atu).
    • Amata i le version 1.14, o le Go language compiler na faʻaopoopoina le lagolago aloaia mo le ARM64 architecture mo FreeBSD 12.0.
    • OpenSSH i luga ole faiga faavae ua toe faʻafouina e faʻasaʻo le 7.9p1.
    • O le faletusi sysctlmibinfo2 ua faʻatinoina ma tuʻuina i ports (devel/libsysctlmibinfo2), saunia se API mo le faʻaogaina o le sysctl MIB ma le faʻaliliuina o igoa sysctl i faʻamatalaga mea (OIDs).
    • Ua faia se fa'afouga fa'asoa NomadBSD 1.3.1, o se lomiga o le FreeBSD ua fa'aogaina mo le fa'aogaina o se komepiuta feavea'i e mafai ona fa'aosoina mai se ta'avale USB. O le si'osi'omaga fa'akalafi e fa'avae i luga ole pule fa'amalama Tatala. Faʻaaogaina mo le faʻapipiʻiina o taʻavale DSBMD (faʻapipiʻi CD9660, FAT, HFS +, NTFS, Ext2/3/4 o loʻo lagolagoina), e faʻapipiʻi ai se fesoʻotaʻiga uaealesi - wifimgr, ma ia pulea le leo - DSBMixer.
    • Amata galuega i luga o le tusiaina o faamaumauga atoatoa mo le pule o le siosiomaga o le falepuipui ulo. Pot 0.11.0 o loʻo sauniuni mo le faʻamalolo, lea o le a aofia ai meafaigaluega mo le puleaina o le faaputuga fesoʻotaʻiga.

puna: opennet.ru

Faaopoopo i ai se faamatalaga