6.2.6. Núcleo

El script huge_page_setup_helper.py ahora funciona correctamente

Se ha eliminado accidentalmente un parche que actualizaba el script huge_page_setup_helper . py para Python 3. En consecuencia, tras ejecutar huge_page_setup_helper.py, aparecía el siguiente mensaje de error:

SyntaxError: Faltan paréntesis en la llamada a 'print'

Con esta actualización, el problema se ha solucionado actualizando el archivo libhugetlbfs.spec. Como resultado, huge_page_setup_helper.py no muestra ningún error en el escenario descrito.

(BZ#1823398)

Los scripts bcc ahora compilan con éxito un módulo BPF

Durante la compilación del código de script para crear un módulo Berkeley Packet Filter (BPF), el kit de herramientas bcc utilizaba las cabeceras del kernel para la definición del tipo de datos. Algunas cabeceras del kernel necesitaban que se definiera la macro KBUILD_MODNAME. En consecuencia, los scripts de bcc que no añadían KBUILD_MODNAME, podían fallar al compilar un módulo BPF en varias arquitecturas de CPU. Los siguientes scripts bcc se veían afectados:

  • bindsnoop
  • sofdsnoop
  • escuchar
  • tcpaccept
  • tcpconnect
  • tcpconnlat
  • tcpdrop
  • tcpretrans
  • tcpsubnet
  • tcptop
  • tcptracer

Con esta actualización, el problema se ha solucionado añadiendo KBUILD_MODNAME al parámetro cflags por defecto para bcc. Como resultado, este problema ya no aparece en el escenario descrito. Además, los scripts de los clientes tampoco necesitan definir KBUILD_MODNAME por sí mismos.

(BZ#1837906)

bcc-tools y bpftrace funcionan correctamente en IBM Z

Anteriormente, un backport de características introdujo la opción del kernel ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE. Sin embargo, el paquete bcc-tools y el paquete de lenguaje de rastreo bpftrace para arquitecturas IBM Z no tenían el soporte adecuado para esta opción. En consecuencia, la llamada al sistema bpf() fallaba con la excepción de argumento inválido y bpftrace fallaba con un error que indicaba Error loading program al intentar cargar el programa BPF. Con esta actualización, la opción ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE se ha eliminado. Como resultado, el problema ya no aparece en el escenario descrito.

(BZ#1847837, BZ#1853964)

El proceso de arranque ya no falla por falta de entropía

Anteriormente, el proceso de arranque fallaba por falta de entropía. Ahora se utiliza un mecanismo mejor para permitir que el kernel reúna entropía al principio del proceso de arranque, que no depende de ninguna interrupción específica del hardware. Esta actualización soluciona el problema asegurando la disponibilidad de suficiente entropía para asegurar la generación aleatoria en el arranque temprano. Como resultado, la corrección evita el tiempo de espera del kickstart o los arranques lentos y el proceso de arranque funciona como se espera.

(BZ#1778762)

Los reinicios repetidos usando kexec ahora funcionan como se espera

Anteriormente, durante el reinicio del kernel en la plataforma Amazon EC2 Nitro, no se llamaba al módulo remove(rmmod) durante la llamada shutdown() de la ruta de ejecución del kernel. En consecuencia, los reinicios repetidos del kernel utilizando la llamada al sistema kexec provocaban un fallo. Con esta actualización, el problema se ha solucionado añadiendo el manejador PCI shutdown () que permite la ejecución segura del kernel. Como resultado, los reinicios repetidos utilizando kexec en las plataformas Amazon EC2 Nitro ya no fallan.

(BZ#1758323)

Los reinicios repetidos utilizando la memoria vPMEM como objetivo de volcado ahora funcionan como se espera

Anteriormente, el uso de espacios de nombres de memoria virtual persistente (vPMEM) como destino de volcado para kdump o fadump hacía que el módulo papr_scm desmapeara y reasignara la memoria respaldada por vPMEM y volviera a añadir la memoria a su mapa lineal.

En consecuencia, este comportamiento desencadenó llamadas del hipervisor (HCalls) al hipervisor POWER. Como resultado, esto ralentiza considerablemente el arranque del kernel de captura y tarda mucho tiempo en guardar el archivo de volcado. Esta actualización soluciona el problema y el proceso de arranque ahora funciona como se espera en el escenario descrito

(BZ#1792125)

Ya no falla el intento de añadir el puerto NIC del controlador ICE a una interfaz maestra de enlace en modo 5

Anteriormente, al intentar añadir el puerto NIC del controlador ICE a una interfaz maestra de enlace en modo 5(balance-tlb) se producía un fallo con un error Maestro 'bond0', Esclavo 'ens1f0': Error: Enslave failed. En consecuencia, se producía un fallo intermitente al añadir el puerto NIC a la interfaz maestra de enlace. Esta actualización soluciona el problema y la adición de la interfaz ya no falla.

(BZ#1791664)