5.4.7. 커널
하위 섹션 메모리 핫플러그가 완전히 지원됨
이전에는 일부 플랫폼은 DMM(Dual In-Line Modules)과 같은 실제 메모리 영역을 조정하고 인터리브 세트를 64MiB 메모리 경계로 조정했습니다. 그러나 Linux 핫플러그 하위 시스템은 128MiB의 메모리 크기를 사용하므로 새 장치를 핫플러그하면 여러 메모리 영역이 단일 핫플러그 메모리 창에서 중복되었습니다. 이로 인해 다음 또는 유사한 호출 추적을 사용하여 사용 가능한 영구 메모리 네임스페이스가 나열되지 않았습니다.
WARNING: CPU: 38 PID: 928 at arch/x86/mm/init_64.c:850 add_pages+0x5c/0x60 [..] RIP: 0010:add_pages+0x5c/0x60 [..] Call Trace: devm_memremap_pages+0x460/0x6e0 pmem_attach_disk+0x29e/0x680 [nd_pmem] ? nd_dax_probe+0xfc/0x120 [libnvdimm] nvdimm_bus_probe+0x66/0x160 [libnvdimm]
이번 업데이트에서는 문제를 해결하고 Linux 핫플러그 하위 시스템을 지원하여 여러 메모리 지역이 단일 핫플러그 메모리 창을 공유할 수 있도록 합니다.
(BZ#1724969)
데이터 손상으로 인해 WARN 메시지 대신 BUG가 트리거됩니다.
이번 개선된 기능을 통해 lib/list_debug.c
의 목록 손상이 이제 vmcore
가 포함된 보고서를 생성하는 BUG가 트리거됩니다. 이전 버전에서는 데이터 손상이 발생하면 눈에 띄지 않은 간단한 WARN이 생성되었습니다. CONFIG_BUG_ON_DATA_CORRUPTION을 설정하면
이제 커널에서 충돌을 생성하고 데이터 손상에 대한 응답으로 BUG를 트리거합니다. 이로 인해 추가 손상을 방지하고 보안 위험을 줄입니다. kdump
는 이제 데이터 손상 버그 보고를 개선하는 vmcore
를 생성합니다.
(BZ#1714330)
Intel Valsville 카드 지원은
사용할 수 있지만 RHEL 8.2에서 확인되지 않았습니다.
Intel Valsville
카드 지원은 제공되지만 Red Hat Enterprise Linux 8.2에서는 테스트되지 않았습니다.
(BZ#1720227)
RPS 및 XPS가 더 이상 분리된 CPU에 작업을 배치하지 않음
이전에는 RPM(Receive Packet Buildering) 소프트웨어 대기열 메커니즘과 XPS(Transmit Packet Trackering) 전송 대기열 선택 메커니즘이 격리된 CPU를 포함하여 모든 CPU 세트에서 할당된 작업을 수행했습니다. 결과적으로 대기 시간에 민감한 워크로드가 RPS 또는 XPS 작업이 실행 중인 동일한 CPU를 사용하는 경우 실시간 환경에서 예기치 않은 대기 시간이 급증할 수 있었습니다. 이번 업데이트를 통해 store_rps_map()
함수에는 RPS 구성을 위해 격리된 CPU가 포함되지 않습니다. 마찬가지로 XPS 구성에 사용되는 커널 드라이버는 CPU 격리를 사용합니다. 결과적으로 RPS 및 XPS가 설명된 시나리오에서 격리된 CPU에 더 이상 작업을 배치하지 않습니다. /sys/devices/pci*/net/dev/queues/rx-*/rps_cpus
파일에서 격리된 CPU를 구성하는 경우 다음 오류가 나타납니다.
Error: "-bash: echo:write error: Invalid argument"
그러나 /sys/devices/pci*/net/dev/queues/tx-*/xps_cpus
파일에서 격리된 CPU를 수동으로 구성하면 분리된 CPU에 XPS 작업이 성공적으로 할당됩니다.
격리된 CPU가 있는 환경의 네트워킹 워크로드에는 몇 가지 성능 변형이 발생할 수 있습니다.
(BZ#1867174)