Llançament del nucli Linux 5.13

Després de dos mesos de desenvolupament, Linus Torvalds va publicar el nucli. Linux 5.13. Entre els canvis més destacats: sistema de fitxers EROFS, compatibilitat inicial amb xips Apple M1, controlador de grup c "misc", obsoleta la compatibilitat amb /dev/kmem, compatibilitat amb noves GPU Intel i AMD, capacitat de cridar directament funcions del nucli des de programes BPF, aleatorització de la pila del nucli per a cada crida al sistema, capacitat d'integrar Clang amb protecció CFI (Control Flow Integrity), mòdul Landlock LSM per a una limitació addicional de processos, dispositiu de so virtual basat en virtio, mode multi-shot a io_uring.

La nova versió inclou 17189 correccions de 2150 desenvolupadors (la més gran de la història), la mida del pedaç és de 60 MB (els canvis van afectar 12996 fitxers, s'han afegit 794705 línies de codi, s'han suprimit 399590 línies). Al voltant del 47% de tots els canvis introduïts a 5.13 estan relacionats amb controladors de dispositius, aproximadament el 14% dels canvis estan relacionats amb l'actualització de codi específic de les arquitectures de maquinari, el 13% estan relacionats amb la pila de xarxa, el 5% estan relacionats amb sistemes de fitxers i el 4% estan relacionats amb subsistemes interns del nucli.

Principals innovacions:

  • Subsistema de disc, E/S i sistemes de fitxers
    • S'ha afegit compatibilitat amb EROFS (Enhanced Read-Only File System), un sistema de fitxers proposat per Huawei per al seu ús en particions de només lectura. El nou sistema de fitxers admet l'emmagatzematge de dades comprimides i, en comparació amb Ext4, demostra un rendiment similar per a operacions de lectura seqüencial, però supera significativament Ext4 per a l'accés aleatori a dades. Per exemple, amb el nivell de compressió 4 i proves en servidor amb un disc dur, el sistema de fitxers EROFS va superar Ext4 en operacions de lectura aleatòria per més de sis vegades, i quan s'utilitzava Android- els telèfons intel·ligents amb memòria flash són gairebé tres vegades més ràpids. Com altres sistemes de fitxers de només lectura, l'estructura EROFS es simplifica significativament eliminant certes àrees de metadades, com ara el mapa de bits de bloc lliure, durant la implementació.
    • Per al sistema de fitxers SMB3, s'ha implementat l'opció de muntatge "rasize", amb la qual podeu determinar la mida de la finestra de lectura (readahead) per augmentar el rendiment de certs tipus de càrregues.
    • El sistema de fitxers ext4 assegura que els elements del directori es sobreescriuen quan s'eliminen els fitxers. ext4 també permet l'ús simultani dels modes de xifratge i que no distingeixen entre majúscules i minúscules.
    • L'exFAT FS ha afegit suport per a l'ordre FITRIM (descartar) ioctl per informar la unitat sobre els blocs no utilitzats a l'FS.
    • L'XFS FS ha afegit la possibilitat d'eliminar espai de l'últim grup de distribució de l'FS, que es va convertir en el primer enllaç en implementar la funció de reduir la mida de les particions existents amb l'XFS FS.
    • S'ha afegit una nova trucada al sistema quotactl_path, que es diferencia de quotactl perquè us permet gestionar les quotes no mitjançant un fitxer de dispositiu especial, sinó especificant el camí al punt de muntatge del sistema de fitxers.
    • El mecanisme de fanotify ha ampliat les capacitats disponibles per als usuaris sense privilegis. Per exemple, de manera similar a inotify sense els drets SYS_CAP_ADMIN, ara podeu supervisar els esdeveniments OPEN, ACCESS, MODIFY i CLOSE per a fitxers i directoris.
  • Serveis de memòria i sistema
    • S'ha afegit un nou controlador cgroup - "Misc" (CONFIG_CGROUP_MISC), dissenyat per limitar i fer un seguiment dels recursos escalars, que es poden controlar mitjançant un comptador simple i limitar-los mitjançant l'establiment de valors màxims permesos. Un exemple de l'ús del nou controlador cgroup és la gestió dels identificadors d'espai d'adreces utilitzats en el mecanisme AMD SEV (Secure Encrypted Virtualization).
    • La interfície d'E/S asíncrona io_uring per a sol·licituds POLL implementa un mode "multi-shot", en el qual POLL no s'elimina després de generar un esdeveniment, sinó que roman actiu i pot generar diversos esdeveniments.
    • El codi que proporciona el processament de les interrupcions generades pel programari als fils del nucli s'ha mogut de la branca en temps real del nucli, la qual cosa permet que siguin substituïdes per processos de prioritat més alta.
    • S'ha afegit la biblioteca interna netfs, que conté funcions típiques utilitzades en sistemes de fitxers de xarxa.
    • Per a l'arquitectura PowerPC, s'ha implementat suport per als espais de noms de temps, que us permet utilitzar el vostre propi temps al contenidor.
    • Per a l'arquitectura RISC-V, s'ha implementat suport per a kexec, crash dump, kprobe i llançament del nucli al seu lloc (execució al lloc, execució des del suport font, sense copiar a la RAM).
    • Els programes de traça de BPF ara tenen la capacitat d'utilitzar l'emmagatzematge local de tasques, que proporciona un rendiment més elevat mitjançant l'enllaç de dades a un gestor de BPF específic.
    • S'ha implementat un nou mecanisme per cridar directament funcions del nucli des de programes BPF, que ja s'ha utilitzat en la implementació d'algorismes de sobrecàrrega TCP. Per garantir la seguretat, les funcions cridades han d'estar explícitament a la llista blanca.
    • S'ha afegit l'opció func-no-repeats al sistema de seguiment de la funció ftrace, que us permet mostrar trucades de funcions seqüencials repetides en forma de comptador.
    • La crida al sistema userfaultfd(), dissenyada per gestionar errors de pàgina (accés a pàgines de memòria no assignades) a l'espai d'usuari, ara té la capacitat de gestionar errors parcials, en què hi ha una pàgina de memòria, però no hi ha cap entrada a la taula de pàgines de memòria. .
    • El fitxer especial /dev/kmem, que permet l'accés a tot l'espai d'adreces del nucli, ha estat interromput. Aquest fitxer es considera obsolet i presenta problemes de seguretat.
    • Per als xips Intel, s'ha implementat un nou controlador per controlar la refrigeració, que us permet reduir la freqüència del processador quan hi ha perill de sobreescalfament. A diferència del mecanisme d'activació TCC (circuit de control tèrmic) existent, el nou controlador manipula valors relatius, és a dir. pot reduir la freqüència en l'etapa de l'inici d'un augment significatiu de la temperatura, però sense esperar que es superi el valor crític del llindar.
  • Virtualització i seguretat
    • Inclou el mòdul d'aïllament d'aplicacions LSM Landlock, que permet limitar la interacció amb l'entorn extern d'un grup de processos i està dissenyat tenint en compte mecanismes d'aïllament com XNU Sandbox, FreeBSD Capsicum i OpenBSD Pledge/Unveil. La lògica de concessió d'accés es defineix mitjançant un programa BPF, però a diferència de seccomp-bpf, Landlock no filtra les trucades del sistema i els seus arguments, però us permet restringir l'ús d'objectes del nucli com ara les jerarquies de fitxers. Amb Landlock, qualsevol procés, inclòs els sense privilegis, pot aïllar-se de manera fiable i evitar la derivació d'aïllament si es detecten vulnerabilitats o canvis maliciosos a l'aplicació. Landlock permet un procés per crear entorns aïllats segurs, implementats com una capa addicional a la part superior dels mecanismes de control d'accés al sistema existents. Per exemple, un programa pot negar l'accés als fitxers fora del directori de treball.
    • S'ha afegit la possibilitat d'aleatoriar els desplaçaments a la pila del nucli quan es processen les trucades del sistema per tal de complicar els atacs a la pila. L'essència de la protecció proposada és triar un desplaçament de pila aleatori per a cada trucada del sistema, cosa que dificulta la determinació de la disposició de la pila a la memòria fins i tot si s'obté informació sobre les adreces, ja que l'adreça base de la pila canviarà amb el propera trucada al sistema. Per habilitar l'aleatorització, es proposen el paràmetre de línia d'ordres del nucli "randomize_kstack_offset=on/off" i la configuració CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT. S'estima que la pèrdua de rendiment és d'aproximadament un 1%.
    • S'ha afegit suport per muntar el nucli amb la inclusió del mecanisme de protecció CFI (Control Flow Integrity) al compilador Clang, que afegeix funcions de verificació abans de cada trucada indirecta per detectar algunes formes de comportament no definit que podria conduir a una violació de l'execució normal. ordre (flux de control) com a resultat de l'ús d'explotacions, modificant els punters de funció emmagatzemats a la memòria. Per habilitar CFI, s'ha proposat el paràmetre CONFIG_CFI_CLANG.
    • Al servei d'emmagatzematge de claus de xifratge del nucli (anell de claus), el mecanisme de claus de confiança ara cobreix no només les claus dels mòduls TPM, sinó també els entorns TEE (Trusted Execution Environment). Per controlar l'origen de les claus de confiança, s'ha proposat un paràmetre d'arrencada "trusted.source". A més, s'ha afegit la possibilitat de processar claus de confiança en format ASN.1.
    • S'ha afegit una opció per carregar prèviament la llista de revocació de certificats durant l'arrencada del nucli. S'ha resolt un problema (CVE-2020-26541) amb la llista negra UEFI Secure Boot ignorant els certificats subministrats en el format EFI_CERT_X509_GUID, que va permetre que el sistema arrenqués amb un certificat revocat.
    • S'ha afegit suport per verificar les signatures digitals ECDSA basades en corbes el·líptiques al subsistema criptogràfic del nucli.
    • S'ha implementat la capacitat de verificar les polítiques de SE.Linux utilitzant el subsistema IMA (Integrity Measurement Architecture), que manté una base de dades hash per verificar la integritat de les dades.
  • Subsistema de xarxa
    • S'ha eliminat el suport per a la tecnologia WiMAX, que ja no s'utilitza a les xarxes públiques, i al nucli l'únic controlador amb el qual es pot utilitzar WiMAX segueix sent el controlador Intel 2400m obsolet. El suport de WiMAX es va suspendre al configurador de xarxa NetworkManager el 2015. Actualment, WiMax està gairebé completament substituït per tecnologies com LTE, HSPA+ i Wi-Fi 802.11n.
    • S'ha afegit el controlador per a l'adaptador de xarxa MANA (Adaptador de xarxa de Microsoft Azure).
    • El controlador ath11k afegeix suport per als mòduls sense fil Qualcomm QCN9074 amb suport 802.11ax.
    • El controlador iwlwifi implementa la capacitat d'escanejar de manera passiva canals en el rang de 6 GHz. Per a Ucraïna, s'ha afegit suport per activar/desactivar IEEE 802.11ax en funció de la configuració de la BIOS.
    • El subsistema XDP (eXpress Data Path) s'ha optimitzat, permetent la manipulació dels paquets de xarxa abans que siguin processats per la pila de xarxa del nucli. LinuxLes proves realitzades demostren un augment del 4-8% en el rendiment de XDP. Per als dispositius Virtio, el guany de rendiment per al processament del programari AF_XDP pot arribar al 33%.
    • ICMP implementa suport per a missatges PROBE ampliats definits a RFC 8335.
    • Integració contínua al nucli MPTCP (MultiPath TCP), una extensió del protocol TCP per organitzar el funcionament d'una connexió TCP amb el lliurament de paquets simultàniament al llarg de diverses rutes a través de diferents interfícies de xarxa associades a diferents La meva adreça IPLa nova versió afegeix compatibilitat amb sockopt per configurar opcions TCP estàndard. S'ha implementat la capacitat de restablir subfluxos individuals.
    • Netfilter ha afegit suport per gestionar recursos mitjançant la jerarquia unificada cgroups v2.
    • ethtool proporciona una interfície per llegir estadístiques IEEE MIB amb suport per a mlx5 i bnxt. Els controladors de xarxa poden extreure dades arbitràries de l'EEPROM SFP manipulant no la combinació desplaçament + mida, sinó pàgines de memòria.
  • Оборудование
    • S'ha implementat el suport inicial per al xip Apple M1 ARM, que inclou el controlador d'interrupció, el temporitzador, les funcions UART, SMP, I/O i MMIO. L'enginyeria inversa de la GPU encara no s'ha completat; es proporciona suport de framebuffer i consola sèrie per a la sortida.
    • Es va continuar netejant el nucli dels controladors antics, es van eliminar la "junta" (Google ASIC), "sysace", "umem" i diversos controladors antics per als ports sèrie.
    • Després de 13 anys d'estar a la branca de la posada en escena, el controlador "comedi" es va estabilitzar i es va traslladar a la composició principal per donar suport als dispositius d'adquisició de dades.
    • S'ha afegit el controlador GUD (Generic USB Display) amb la implementació del controlador bàsic per a pantalles i adaptadors de TV connectats mitjançant la interfície USB. El controlador proporciona propietats DRM (Direct Rendering Manager) per a la rotació d'imatges, el control de la brillantor, l'accés EDID, la configuració del mode de vídeo i la connectivitat del televisor, que es poden utilitzar com a base per crear controladors específics del dispositiu.
    • S'ha afegit el controlador de so "virtio" amb la implementació d'un dispositiu de so virtual que es pot utilitzar en sistemes convidats per emetre i gravar so sense reenviar l'accés a la targeta de so i sense emulació.
    • El controlador amdgpu ha afegit suport inicial per a la GPU Aldebaran (gfx90a). Inclou suport inicial per a la tecnologia de sincronització adaptativa FreeSync per a HDMI (anteriorment disponible per a DisplayPort), que us permet ajustar la freqüència d'actualització de la informació a la pantalla. El suport ASSR (Alternate Scrambler Seed Reset) està habilitat. S'ha afegit ioctl a les capacitats de consulta relacionades amb la codificació i descodificació de vídeo. S'ha afegit el mode CONFIG_DRM_AMD_SECURE_DISPLAY per detectar canvis a les pantalles que mostren informació crítica. S'ha afegit suport per al mecanisme d'estalvi d'energia ASPM.
    • El controlador i915 per a targetes gràfiques Intel inclou suport per a xips Intel Alderlake-S. S'ha afegit suport per a eDP MSO (Operació DisplayPort Multi-SST integrat).
    • S'ha afegit suport per al controlador de joc Luna (Amazon), així com per a les pantalles tàctils Hycon HY46XX, ILITEK Lego Series i MStar MSG2638

Al mateix temps, la Fundació Llatinoamericana de Programari Lliure va crear una versió completament gratuïta del nucli 5.11 - Linux-libre 5.11-gnu, netejat d'elements de firmware i controlador que contenen components no lliures o seccions de codi amb abast restringit. Aquesta versió inclou una neteja del controlador comedi. La neteja dels controladors cyclades, isicom tty i i2400m wimax s'ha interromput i s'ha eliminat del nucli. S'ha actualitzat el codi de neteja de blobs per als controladors i subsistemes amdgpu, i915 csr, r8152 usb, mhi bus, x86 touchscreen i qualcomm arm64.

Font: opennet.ru

Compreu allotjament fiable per a llocs amb protecció DDoS, servidors VPS VDS 🔥 Compra allotjament web fiable amb protecció DDoS, servidors VPS VDS | ProHoster