FreeBSD Q2019 XNUMX Tlaleho ea Tsoelo-pele

e hatisitsoeng tlaleha ka nts'etsopele ea projeke ea FreeBSD ho tloha ka Mmesa ho isa Phuptjane 2019. Har'a liphetoho tseo re ka li hlokomelang:

  • Litaba tse akaretsang le tsa tsamaiso
    • Sehlopha sa Core se ile sa etsa qeto ea ho theha sehlopha se sebetsang ho hlahloba monyetla oa ho tsamaisa khoutu ea mohloli ho tloha tsamaisong e bohareng ea Subversion ho ea tsamaisong ea Git.
    • E entse tlhahlobo ea fuzz ea kernel ea FreeBSD e sebelisa sistimi syzkaller mme palo ya diphoso tse hlwauweng di ile tsa lokiswa. E kentse lesela bakeng sa tlhahlobo e makatsang ea lilaeborari bakeng sa ho lumellana le tikoloho ea 32-bit lits'ebetsong tse nang le 64-bit kernel. E kentse tšebetsong bokhoni ba ho tsamaisa syzkaller ka mechini e thehiloeng ho bhyve. Mokhahlelong o latelang, ho reriloe ho holisa tšireletso ea tlhahlobo ea mohala oa sistimi, sebelisa sanitizer ea LLVM ho lekola kernel, sebelisa netdump ho boloka lithōle tsa kernel nakong ea likotsi nakong ea liteko tsa fuzzing, jj.
    • Mosebetsi o se o qalile ho ntlafatsa ts'ebetsong ea zlib boemong ba kernel. Bakeng sa phihlello ea kernel ho khoutu ea zlib, bukana ea contrib/zlib e ile ea rehoa lebitso la sys/contrib/zlib, 'me file ea hlooho ea crc.h e ile ea boela ea rehoa lebitso ho qoba likhohlano le zlib/crc.h. E hloekisitse khoutu ea lefa e itšetlehileng ka zlib le inflate. Ka mor'a moo, ho reriloe ho fana ka bokhoni ba ho haha ​​​​kernel ka nako e le 'ngoe le zlib ea khale le e ncha bakeng sa ho fetisetsa butle-butle phetolelong e ncha ea mesebetsi e sebelisang compression;
    • Lisebelisoa tsa ho etsisa tikoloho ea Linux (Linuxulator) li nchafalitsoe. Tšehetso e eketsehileng bakeng sa lisebelisoa tsa ho lokisa Linux tse kang strace utility. Sephutheloana sa linux-c7-strace se kenyellelitsoe likoung, tse ka sebelisoang ho ts'oara lifaele tsa Linux tse sebetsang sebakeng sa lits'ebeletso tse tloaelehileng tsa truss le ktrace, tse seng li sa khone ho khetholla lifolakha le meaho e itseng ea Linux. Ho feta moo, sephutheloana sa linux-ltp se nang le li-executable tsa Linux Test Project se kentsoe 'me litaba tsa tšebelisano le li-executable tse amanang le mefuta e mecha ea glibc li rarollotsoe;
    • Ts'ebetsong ea ts'ebetso ea ho lieha ho sebetsa ka mokhoa oa pmap e fetiselitsoe ho sebelisoa ha algorithm ea queue processing e sebetsang ntle le liloko, e leng se entseng hore ho khonehe ho rarolla mathata a scalability ha ho etsoa palo e kholo ea ts'ebetso e tšoanang ea unmap;
    • Mochine oa ho thibela vnode nakong ea ho etsoa ha mehala ea tsamaiso ea lelapa la execve() o fetotsoe, e leng se entseng hore ho khonehe ho finyella katleho e eketsehileng ha ka nako e le 'ngoe ho etsoa execve () bakeng sa faele e tšoanang (mohlala, ha ho etsoa mesebetsi ea kopano ka parallelization. ea ho qala komporo);
  • Tshireletso
    • The hyve hypervisor e ntse e tsoela pele ho ntlafatsa ts'ehetso bakeng sa phalliso ea Live ea maemo a baeti ho tloha ho moamoheli e mong ho ea ho o mong le ts'ebetso ea Boloka / Khutlisa, e u lumellang ho emisa sistimi ea baeti, ho boloka mmuso faeleng, ebe o qala ts'ebetso hape.
    • Ka tšebeliso ea laebrari ea libvdsk, bhyve e kentse tšehetso ea litšoantšo tsa disk ka mokhoa oa QCOW2. E hloka hore ho kenngoe ho sebetsa
      fetotsoe ka ho khetheha mofuta oa bhyve, o fetotsoeng ho sebelisa lisebelisuoa tsa ts'ebetso ea lifaele tse ipapisitseng le libvdsk. Nakong ea tlaleho, libvdsk e boetse e entse mosebetsi oa ho nolofatsa kopanyo ea tšehetso bakeng sa lifomate tse ncha, ts'ebetso e ntlafalitsoeng ea ho bala le ho ngola, le tšehetso e eketsehileng bakeng sa Copy-On-Write. Har'a mesebetsi e setseng, ho kopanngoa ha libvdsk mohahong o ka sehloohong oa bhyve ho hlokomeloa;

    • Mokhoa oa ho bokella tlhahisoleseding ea sephethephethe o kenyelelitsoe likoung
      Maltrail, e leng se u lumellang hore u thehe maraba bakeng sa likōpo tse mpe tsa marang-rang (li-IP le libaka tse tsoang ho li-blacklists li hlahlojoa) le ho romela tlhahisoleseding e mabapi le ts'ebetso e fumanoeng ho seva se bohareng bakeng sa ho thibela kapa ho hlahloba liteko tse latelang tsa tlhaselo;

    • Li-platform li kenyelelitsoe likoung bakeng sa ho lemoha litlhaselo, ho hlahloba li-log le ho shebella botšepehi ba lifaele Wazuh (fork ea Ossec ka tšehetso ea ho hokahana le ELK-Stack);
  • Sistimi e nyane ea marang-rang
    • Mokhanni oa ena o nchafalitsoe ho ts'ehetsa moloko oa bobeli oa li-adapter tsa marang-rang tsa ENAv2 (Elastic Network Adapter) tse sebelisoang mohahong oa motheo oa Elastic Compute Cloud (EC2) ho hlophisa puisano pakeng tsa EC2 nodes ka lebelo la ho fihla ho 25 Gb / s. Ts'ehetso ea NETMAP e kentsoe ho mokhanni oa ena.
    • FreeBSD HEAD e amohela stack e ncha ea MMC/SD, e ipapisitseng le moralo oa CAM le ho u lumella ho hokahanya lisebelisoa ka sebopeho sa SDIO (Secure Digital I/O). Ka mohlala, SDIO e sebelisoa ho WiFi le Bluetooth modules bakeng sa liboto tse ngata, tse kang Raspberry Pi 3. Stack e ncha e boetse e lumella sebopeho sa CAM hore se sebelisoe ho romela litaelo tsa SD ho tloha lits'ebetsong sebakeng sa mosebedisi, e leng se etsang hore ho khonehe ho theha sesebelisoa. bakhanni ba sebetsang boemong ba basebelisi. Mosebetsi o se o qalile ho theha bakhanni ba li-chips tse se nang mohala tsa Broadcom tse sebetsang ka mokhoa oa FullMAC (ka lehlakoreng la chip e tsamaisa sebopeho sa sistimi ea eona ea ts'ebetso ka ts'ebetsong ea 802.11 stack ea eona e se nang mohala);
    • Mosebetsi o ntse o tsoela pele ho kenya tšebetsong NFSv4.2 (RFC-7862) bakeng sa FreeBSD. Phetolelo e ncha ea NFS e eketsa tšehetso bakeng sa posix_fadvise, posix_fallocate mesebetsi, mekhoa ea SEEKHOLE/SEEKDATA ho lseek, le ts'ebetso ea ho kopitsa likarolo tsa faele ho seva (ntle le ho fetisetsa ho mofani).

      FreeBSD hajoale e fana ka tšehetso ea mantlha bakeng sa ts'ebetso ea LayoutError, IOAdvise, Allocate, le Copy. Ho setseng ke ho kenya tšebetsong tšebetso ea Batla e hlokahalang ho sebelisa lseek(SEEKHOLE/SEEKDATA) le NFS. Tšehetso ea NFSv4.2 e reriloe bakeng sa FreeBSD 13;

  • Litsamaiso tsa polokelo le lifaele
    • Morero oa ho lokisa mokhanni bakeng sa FUSE (File system in USerspace) subsystem, e lumellang ho theha ts'ebetsong ea litsamaiso tsa lifaele sebakeng sa basebelisi, o haufi le ho phethoa. Mokhanni ea faneng ka eona o siiloe ke nako 'me o na le likokoana-hloko tse ngata. E le karolo ea morero oa ntlafatso ea mokhanni, ts'ehetso ea protocol ea FUSE 7.23 e ile ea kenngoa ts'ebetsong (e fetileng mofuta oa 7.8, o lokollotsoeng lilemo tse 11 tse fetileng o ne o tšehetsoa), khoutu e ile ea eketsoa ho hlahloba litokelo tsa phihlello ka lehlakoreng la kernel ("-o default_permissions"). VOP_MKNOD, VOP_BMAP le VOP_ADVLOCK li kenyelelitsoe, bokhoni ba ho sitisa ts'ebetso ea FUSE, tšehetso e eketsehileng bakeng sa liphaephe tse sa boleloang ka mabitso le li-sockets tsa unix ka fusefs, bokhoni ba ho sebelisa kqueue bakeng sa / dev / fuse, ho lumelloa ho ntlafatsa mekhahlelo ea thaba ka "mount -u", tšehetso e eketsehileng. bakeng sa ho romela li-fusef ka NFS, ho kenyelelitsoe tlaleho ea RLIMIT_FSIZE, ho kenyeletsoa lifolakha tsa FOPEN_KEEP_CACHE le FUSE_ASYNC_READ, lintlafatso tse kholo tsa ts'ebetso li entsoe le mokhatlo oa caching o ntlafalitsoe;
    • Tšehetso bakeng sa ts'ebetso ea BIO_DELETE e kenyelelitsoe ho swap pager code, e leng se u lumellang hore u sebelise taelo ea TRIM ha u tlosa li-blocks ho li-drive tsa SSD ho eketsa bophelo ba bona ba tšebeletso.
  • Tšehetso ea lisebelisoa
    • Mosebetsi o ntse o tsoela pele ho kenya ts'ehetso bakeng sa ARM64 SoC Broadcom BCM5871X ka li-processor tsa ARMv8 Cortex-A57, tse reretsoeng ho sebelisoa ho li-routers, liheke le polokelo ea marang-rang. Nakong ea tlaleho, tšehetso ea libese tsa iProc PCIe tsa ka hare le tsa ka ntle li ile tsa ntlafatsoa, ​​tšehetso ea BNXT Ethernet e ile ea eketsoa, ​​​​'me mosebetsi o ntse o tsoela pele ho sebelisa mochine oa crypto o hahiloeng ho potlakisa IPsec. Ho lebeletsoe ho kopanngoa ha khoutu lekaleng la HEAD karolong ea bobeli ea selemo;
    • Mosebetsi o se o qalile ho ts'ehetsa 64-bit SoC NXP LS1046A e ipapisitseng le processor ea ARMv8 Cortex-A72 e nang le enjene ea ho potlakisa liphutheloana tsa marang-rang, 10 Gb Ethernet, PCIe 3.0, SATA 3.0 le USB 3.0. Tšehetso bakeng sa sethala sa motheo (SMP ea basebelisi ba bangata) le SATA 3.0 e se e kentsoe ts'ebetsong. Tšehetso ea USB 3.0, SD/MMC le I2C e ntse e ntlafatsoa. Merero e kenyelletsa tšehetso ea Ethernet, GPIO le QSPI. Ho phetheloa ha mosebetsi le ho kenyeletsoa lekaleng la HEAD ho lebelletsoe kotara ea bone ea 4.
    • Li-driver tse ntlafalitsoeng tsa mlx5en le mlx5ib bakeng sa Mellanox ConnectX-4 [Lx], ConnectX-5 [Ex], le li-adapter tsa ConnectX-6 [Dx] Ethernet le InfiniBand. Ts'ehetso e ekelitsoeng bakeng sa li-adapter tsa Mellanox Socket Direct (ConnectX-6), e lumellang hore ho fete ho fihla ho 200Gb/s beseng ea PCIe Gen 3.0. Bakeng sa li-chips tse ngata tsa BlueField, tšehetso bakeng sa mokhanni oa RShim e kentsoe. Sephutheloana sa mstflint se nang le lisebelisoa tsa tlhahlobo ea li-adapter tsa Mellanox se kentsoe likoung;
  • Likopo le tsamaiso ea boema-kepe
    • Likarolo tsa stack tsa Graphics li ntlafalitsoe. Mokhanni oa drm.ko (Direct Rendering Manager) o kentsoe ho tsoa ho Linux 5.0 kernel. Mokhanni enoa o nkuoa e le oa liteko mme o kentsoe sefateng sa likou joalo ka graphics/drm-devel-kmod. Kaha mokhanni o sebelisa moralo o ntlafalitsoeng oa Linux KPI hore o tsamaisane le Linux kernel DRM API, FreeBSD CURRENT e hlokahala ho sebetsa. Mokhanni oa vboxvideo.ko drm bakeng sa VirtualBox virtual GPU le eena o fetisitsoe ho tsoa Linux. Sephutheloana sa Mesa se nchafalitsoe ho lokolla 18.3.2 'me se fetotsoe ho sebelisa LLVM ho tloha devel/llvm80 port sebakeng sa devel/llvm60.
    • Sefate sa likoung tsa FreeBSD se fetile likoung tsa 37000, palo ea PRs e sa koaloang e ntse e le 2146. Nakong ea tlaleho, liphetoho tse 7837 li entsoe ho tsoa ho baetsi ba 172. Barupeluoa ba bacha ba bararo ba fumane litokelo tsa boipelaetso. Har'a lintlafatso tsa bohlokoa boemakepeng ke: MySQL 5.7, Python 3.6, Ruby 2.5, Samba 4.8, Julia 1.0, Firefox 68.0, Chromium 75.0.3770.100. All Go ports e fetotsoe ho sebelisa "USES=ea" folakha. E kentse folakha ea "USES=cabal" ho molaoli oa sephutheloana sa Cabal se sebelisetsoang khoutu ea Haskell. Mokhoa oa tšireletso oa stack o lumelletsoe. Mofuta oa kamehla oa Python ke 3.6 sebakeng sa 2.7.
    • Tokollo ea lisebelisoa e se e lokisitsoe nsysctl 1.0, e fanang ka analogue ho /sbin/sysctl e sebelisang libxo bakeng sa tlhahiso le ho fana ka sete e atolositsoeng ea likhetho. Nsysctl e ka sebelisoa ho lekola boemo ba boleng ba sysctl le ho hlahisa tlhahisoleseling ka lintho ka sebopeho se hlophisitsoeng. Sephetho ka liforomo tsa XML, JSON le HTML sea khoneha;

Source: opennet.ru

Eketsa ka tlhaloso