5.7.6. 커널


tboot-1.9.12-2 유틸리티로 인해 RHEL 8에서 부팅에 실패합니다.

버전 1.9.12-2의 tboot 유틸리티로 인해 TPM (Trusted Platform Module) 2.0이 있는 일부 시스템이 기존 모드에서 부팅되지 않습니다. 그 결과 시스템은 tboot Grand Unified Bootloader (GRUB) 항목에서 부팅하려고 하면 시스템이 중단됩니다. 이 문제를 해결하려면 버전 1.9.10의 tboot 로 다운그레이드하십시오.

(BZ#1947839)

커널이 IBM Z 시스템에서 오탐 경고 반환

RHEL 8에서는 사용자가 액세스할 수 있도록 IBM Z 시스템에 ZONE_DMA 메모리 영역에 대한 화이트리스트 항목이 누락되었습니다. 결과적으로 커널은 다음과 같은 오탐(false positive) 경고를 반환합니다.

...
Bad or missing usercopy whitelist? Kernel memory exposure attempt detected from SLUB object 'dma-kmalloc-192' (offset 0, size 144)!
WARNING: CPU: 0 PID: 8519 at mm/usercopy.c:83 usercopy_warn+0xac/0xd8
...

sysfs 인터페이스를 통해 특정 시스템 정보에 액세스할 때 경고가 표시됩니다. 예를 들어, debuginfo.sh 스크립트를 실행합니다.

이 문제를 해결하려면 hardened_usercopy=off 매개 변수를 커널 명령줄에 추가합니다.

따라서 설명된 시나리오에는 경고 메시지가 표시되지 않습니다.

(BZ#1660290)

대기 중인 The rngd 서비스가 FIPS 모드에서 총 CPU 사용량을 발생

버전 4.18.0-193.10부터 커널에 FIPS 모드용 새 커널 엔트로피 소스가 추가되었습니다. 결과적으로 FIPS 모드에서 the rngd 서비스는 /dev/random 장치에 대한 poll() 시스템 호출에서 대기하므로 CPU 시간의 100%가 소비됩니다. 이 문제를 해결하려면 다음을 실행하여 중지 및 비활성화하십시오.

# systemctl stop rngd
# systemctl disable rngd

따라서 Rng d는 설명된 시나리오에서 poll() 에 대한 대기를 더 이상 사용하지 않습니다.

(BZ#1884857)

softirq 변경으로 인해 로드가 많은 경우 localhost 인터페이스에서 UDP 패킷이 삭제될 수 있습니다.

서비스 거부(DOS) 영향을 줄이기 위해 Linux 커널 소프트웨어 인터럽트(softirq) 처리의 변경이 수행됩니다. 결과적으로 localhost 인터페이스가 많은 로드에서 UDP(User Datagram Protocol) 패킷을 삭제하는 상황이 발생합니다.

이 문제를 해결하려면 네트워크 장치 백로그 버퍼의 크기를 6000 값으로 늘립니다.

echo 6000 > /proc/sys/net/core/netdev_max_backlog

Red Hat 테스트에서 이 값은 패킷 손실을 방지하기에 충분했습니다. 더 많이 로드되는 시스템에는 더 큰 백로그 값이 필요할 수 있습니다. 향상된 백로그는 localhost 인터페이스에서 잠재적으로 대기 시간을 증가시키는 영향을 미칩니다.

결과적으로 버퍼를 늘리고 더 많은 패킷이 처리 대기하도록 허용하므로 localhost 패킷이 삭제될 가능성이 줄어듭니다.

(BZ#1779337)

메모리 핫플러그 또는 언플러그 작업 후 vmcore 캡처가 실패합니다.

메모리 핫플러그 또는 핫 플러그 해제 작업을 수행한 후에는 메모리 레이아웃 정보가 포함된 장치 트리를 업데이트한 후 이벤트가 제공됩니다. 따라서 makedumpfile 유틸리티는 존재하지 않는 실제 주소에 액세스를 시도합니다. 다음 모든 조건이 충족되면 문제가 표시됩니다.

  • RHEL 8을 실행하는 IBM Power System의 little-endian 변형.
  • kdump 또는 fadump 서비스가 시스템에서 활성화됩니다.

결과적으로 메모리 핫플러그 또는 핫 플러그 작업 후에 커널 충돌이 트리거되면 캡처 커널이 vmcore 를 저장하지 못합니다.

이 문제를 해결하려면 핫 플러그 또는 핫 플러그 후 kdump 서비스를 다시 시작하십시오.

# systemctl restart kdump.service

결과적으로 설명된 시나리오에 vmcore 가 성공적으로 저장됩니다.

(BZ#1793389)

irqpoll 을 사용하면 vmcore 생성에 실패합니다.

AWS(Amazon Web Services) 클라우드 플랫폼에서 실행되는 64비트 ARM 아키텍처의 nvme 드라이버에 대한 기존 문제로 인해 첫 번째 커널에 irqpoll 커널 명령줄 매개변수를 제공할 때 vmcore 생성이 실패합니다. 결과적으로 커널 충돌 후 /var/crash/ 디렉토리에 vmcore 파일이 덤프되지 않습니다. 이 문제를 해결하려면 다음을 수행합니다.

  1. /etc/sysconfig/kdump 파일의 KDUMP_COMMANDLINE_REMOVE 키에 irqpoll 을 추가합니다.
  2. systemctl restart kdump 명령을 실행하여 kdump 서비스를 다시 시작합니다.

결과적으로 첫 번째 커널이 올바르게 부팅되고 vmcore 파일이 커널 충돌 시 캡처될 것으로 예상됩니다.

kdump 서비스는 상당한 양의 크래시 커널 메모리를 사용하여 vmcore 파일을 덤프할 수 있습니다. 캡처 커널에 kdump 서비스에 사용할 수 있는 메모리가 충분한지 확인합니다.

(BZ#1654962)

RHEL 8의 크래시 캡처 환경에서 커널을 부팅하지 못했습니다.

디버그 커널의 메모리 수요 특성으로 인해 디버그 커널이 사용 중이고 커널 패닉이 트리거되면 문제가 발생합니다. 결과적으로 디버그 커널은 캡처 커널로 부팅할 수 없으며 대신 스택 추적이 생성됩니다. 이 문제를 해결하려면 크래시 커널 메모리를 적절하게 늘립니다. 결과적으로 디버그 커널이 크래시 캡처 환경에서 성공적으로 부팅됩니다.

(BZ#1659609)

zlib 일부 압축 함수에서 vmcore 캡처 속도가 느려질 수 있습니다.

kdump 구성 파일은 기본적으로 lzo 압축 형식(makedumpfile -l)을 사용합니다. zlib 압축 형식(makedumpfile -c)을 사용하여 구성 파일을 수정할 때 vmcore 캡처 프로세스의 속도를 저하시키는 대신 압축 요인이 향상될 수 있습니다. 그 결과 lzo 에 비해 kdumpzlib 를 사용하여 vmcore 를 캡처하는 데 최대 4배 더 걸립니다.

따라서 속도가 주요 추진 요인인 경우에는 기본 lzo 를 사용하는 것이 좋습니다. 그러나 대상 시스템이 사용 가능한 공간이 부족한 경우 zlib 가 더 나은 옵션입니다.

(BZ#1790635)

HP NMI 워치독이 항상 크래시 덤프를 생성하지는 않음

경우에 따라 HP NMI 워치독의 hpwdt 드라이버는 perfmon 드라이버에서 NMI(maskable interrupt)를 사용했기 때문에 HPE 워치독 타이머에서 생성한 NMI(NMI)를 요청할 수 없습니다.

누락된 NMI는 다음 두 가지 조건 중 하나로 시작됩니다.

  1. iLO(Integrated Lights-Out) 서버 관리 소프트웨어에서 Generate NMI 버튼. 이 버튼은 사용자가 트리거합니다.
  2. hpwdt watchdog. 만료는 기본적으로 서버로 NMI를 보냅니다.

두 시퀀스 모두 시스템이 응답하지 않는 경우 일반적으로 발생합니다. 정상적인 상황에서 이러한 두 상황에 대한 NMI 핸들러는 커널 panic() 함수를 호출하고 구성된 경우 kdump 서비스에서 vmcore 파일을 생성합니다.

그러나 누락된 NMI로 인해 kernel panic() 은 호출되지 않으며 vmcore 는 수집되지 않습니다.

첫 번째 사례(1.)에서 시스템이 응답하지 않은 경우 그대로 유지됩니다. 이 시나리오를 수행하려면 virtual Power(가상 전원 ) 버튼을 사용하여 서버를 재설정하거나 전원을 켭니다.

두 번째 경우(2.) 누락된 NMI는 AAS(Automated System Recovery)에서 9초 후에 재설정됩니다.

HPE Gen9 Server 라인은 이 문제를 한 자리 숫자 비율로 경험합니다. Gen10은 훨씬 더 작은 빈도입니다.

(BZ#1602962)

tuned-adm profile powersave 명령을 사용하면 시스템이 응답하지 않습니다.

tuned-adm profile powersave 명령을 실행하면 이전 Thunderx(CN88x) 프로세서가 있는 Penguin Valkymaster 2000 2소켓 시스템이 응답하지 않는 상태가 됩니다. 그 결과 시스템을 재부팅하여 작동을 재개합니다. 이 문제를 해결하려면 시스템에서 언급된 사양과 일치하는 경우 powersave 프로필을 사용하지 마십시오.

(BZ#1609288)

기본값 7 4 1 7 printk 값으로 인해 임시 시스템이 응답하지 않는 경우가 있습니다.

기본값 7 4 1 7 printk 값을 사용하면 커널 활동을 더 효과적으로 디버깅할 수 있습니다. 그러나 직렬 콘솔과 결합되는 경우 이 출력으로 인해 I/O 버스트가 발생하여 RHEL 시스템이 일시적으로 응답하지 않을 수 있습니다. 이 문제를 해결하기 위해 새로운 optimize-serial-console TuneD 프로파일을 추가하여 기본 인쇄 장치 값을 4 4 1 7 로 줄였습니다. 사용자는 다음과 같이 시스템을 계측할 수 있습니다.

# tuned-adm profile throughput-performance optimize-serial-console

재부팅 시 인쇄자 값을 영구적으로 유지하면 시스템이 중단될 가능성이 줄어듭니다.

이 설정은 추가 디버깅 정보를 손실하는 대신 발생합니다.

새로 추가된 기능에 대한 자세한 내용은 printk 값을 줄여서 I/O를 직렬 콘솔로 줄이는 새로운 optimize-serial-console TuneD 프로파일 을 참조하십시오.

(JIRA:RHELPLAN-28940)

커널 ACPI 드라이버는 PCIe ECAM 메모리 리전에 액세스할 수 없음을 보고합니다.

펌웨어에서 제공하는 ACPI(Advanced Configuration and Power Interface) 표는 PCI 버스 장치의 현재 리소스 설정(_CRS) 방법의 PCI 버스에서 메모리 영역을 정의하지 않습니다. 결과적으로 시스템 부팅 중에 다음 경고 메시지가 발생합니다.

[    2.817152] acpi PNP0A08:00: [Firmware Bug]: ECAM area [mem 0x30000000-0x31ffffff] not reserved in ACPI namespace
[    2.827911] acpi PNP0A08:00: ECAM at [mem 0x30000000-0x31ffffff] for [bus 00-1f]

그러나 커널이 0x30000000-0x31ffff 메모리 영역에 계속 액세스할 수 있으며 해당 메모리 지역을 PCI ECAM(Enhanced Configuration Access Mechanism)에 올바르게 할당할 수 있습니다. 다음 출력으로 256바이트 오프셋을 통해 PCIe 구성 공간에 액세스하여 PCI ECAM이 올바르게 작동하는지 확인할 수 있습니다.

03:00.0 Non-Volatile memory controller: Sandisk Corp WD Black 2018/PC SN720 NVMe SSD (prog-if 02 [NVM Express])
 ...
        Capabilities: [900 v1] L1 PM Substates
                L1SubCap: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2+ ASPM_L1.1- L1_PM_Substates+
                          PortCommonModeRestoreTime=255us PortTPowerOnTime=10us
                L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
                           T_CommonMode=0us LTR1.2_Threshold=0ns
                L1SubCtl2: T_PwrOn=10us

결과적으로 경고 메시지를 무시할 수 있습니다.

문제에 대한 자세한 내용은 "Firmware Bug를 참조하십시오. ECAM 영역 mem 0x30000000-0x31ffffffffffff ff in ACPI namespace"는 시스템 부팅 솔루션 중에 표시됩니다.

(BZ#1868526)

OPEN MPI 라이브러리는 기본 PML을 사용하여 런타임 오류를 트리거할 수 있습니다.

OPEN MPI(Open Message Passing Interface) 구현 4.0.x 시리즈에서 UKX(Unified Communication X)는 기본 PML(Point-to-Point Communicator)입니다. 최신 버전의 OPEN MPI 4.0.x 시리즈의 경우 openib Byte Transfer Layer(BTL)가 더 이상 사용되지 않습니다.

그러나 동일 하드웨어 및 소프트웨어 구성 ( 동일한 하드웨어 및 소프트웨어 구성)을 통해 실행되는 경우, UCX는 여전히 MPI 단면 작업에 openib BTL을 사용합니다. 결과적으로 실행 오류가 발생할 수 있습니다. 이 문제를 해결하려면 다음을 수행합니다.

  • 다음 매개변수를 사용하여 mpirun 명령을 실행합니다.
-mca btl openib -mca pml ucx -x UCX_NET_DEVICES=mlx5_ib0

다음과 같습니다.

  • m ca btl openib 매개 변수는 openib BTL을 비활성화합니다.
  • m ca pml ucx 매개 변수는 OPEN MPI를 구성하여 PM L을 사용합니다.
  • x UCX_NET_DEVICES= 매개변수는 지정된 장치를 사용하도록 UCX를 제한합니다.

OPEN MPI는 이기종 클러스터(다양한 하드웨어 및 소프트웨어 구성)를 통해 실행할 때 UCX를 기본 PML으로 사용합니다. 결과적으로 OPEN MPI 작업이 잘못된 성능, 응답 없는 동작 또는 크래시 오류로 실행될 수 있습니다. 이 문제를 해결하려면 UCX 우선 순위를 다음과 같이 설정합니다.

  • 다음 매개변수를 사용하여 mpirun 명령을 실행합니다.
-mca pml_ucx_priority 5

결과적으로 OPEN MPI 라이브러리는 UCX를 통해 사용 가능한 대체 전송 계층을 선택할 수 있습니다.

(BZ#1866402)

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동