검색

11.8. 커널

download PDF

커널 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-0x31ffffff ff 메모리 영역에 액세스할 수 있으며 해당 메모리 영역을 PCI Enhanced Configuration Access Mechanism(ECAM)에 적절하게 할당할 수 있습니다. 다음 출력을 사용하여 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-0x31ffffff ff not reserved in ACPI namespace" 를 참조하십시오.

Bugzilla:1868526[1]

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

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

Bugzilla:1609288[1]

HP NMI 워치독이 항상 크래시 덤프를 생성하는 것은 아닙니다.

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

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

  1. iLO(Integrated Lights-Out) 서버 관리 소프트웨어에서 NMI 생성 버튼이 있습니다. 이 버튼은 사용자가 트리거합니다.
  2. hpwdt 워치독입니다. expiration는 기본적으로 NMI를 서버로 보냅니다.

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

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

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

두 번째 경우 (2.)에서 누락된 NMI는 9초 후에 자동화된 시스템 복구(ASR)에서 재설정됩니다.

HPE generates9 서버 라인은 이 문제를 한 자리 백분율로 경험합니다. 더 작은 빈도로 설정합니다.

Bugzilla:1602962[1]

동일한 충돌 확장을 다시 로드하면 세그먼트 오류가 발생할 수 있습니다.

이미 로드된 크래시 확장 파일의 사본을 로드하면 세그먼트 오류가 발생할 수 있습니다. 현재 크래시 유틸리티는 원본 파일이 로드되었는지 여부를 탐지합니다. 결과적으로 크래시 유틸리티에 존재하는 두 개의 동일한 파일로 인해 네임스페이스 충돌이 발생하여 크래시 유틸리티가 트리거되어 세그먼트 오류가 발생합니다.

충돌 확장 파일을 한 번만 로드하여 문제를 해결할 수 있습니다. 결과적으로 설명된 시나리오에서는 세그먼트 오류가 더 이상 발생하지 않습니다.

Bugzilla:1906482

가상 머신에 가상 기능을 연결할 때 연결 실패

ionic 장치 드라이버를 사용하는 Pensando 네트워크 카드는 VLAN 태그 구성 요청을 자동으로 수락하고 네트워크 연결을VM(가상 머신)에 연결하는 동안 네트워크 연결 구성을 시도합니다. 이 기능은 카드 펌웨어에서 아직 지원되지 않으므로 이러한 네트워크 연결이 실패합니다.

Bugzilla:1930576[1]

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

OPEN Message Passing Interface(OPEN MPI) 구현 4.0.x 시리즈, UCS(Unified Communication X)는 기본 PML(point-to-point Communicator)입니다. OPEN MPI 4.0.x 시리즈의 최신 버전은 더 이상 사용되지 않는 openib Cryostat Transfer Layer (BTL)입니다.

그러나 OPEN MPI는 동종 클러스터(동일 하드웨어 및 소프트웨어 구성)를 통해 실행될 때 UCX는 여전히 MPI 일회성 작업에 openib BTL을 사용합니다. 이로 인해 실행 오류가 발생할 수 있습니다. 이 문제를 해결하려면 다음을 수행합니다.

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

여기서,

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

OPEN MPI는 이기종 클러스터(하드웨어 및 소프트웨어 구성)를 통해 실행될 때 UCX를 기본 PML으로 사용합니다. 그 결과 OPEN MPI 작업이 비정상적인 성능, 응답하지 않는 동작 또는 충돌 실패로 실행될 수 있습니다. 이 문제를 해결하려면 UCX 우선 순위를 다음과 같이 설정합니다.

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

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

Bugzilla:1866402[1]

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

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

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

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

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

# systemctl restart kdump.service

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

Bugzilla:1793389[1]

irqpoll 을 사용하면 vmcore 생성 실패

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

  1. /etc/sysconfig/kdump 파일의 KDUMP_COMMANDLINE_REMOVE 변수에 irqpoll 을 추가합니다.

    # KDUMP_COMMANDLINE_REMOVE="hugepages hugepagesz slub_debug quiet log_buf_len swiotlb"
  2. /etc/sysconfig/kdump 파일의 KDUMP_COMMANDLINE_APPEND 변수에서 irqpoll 을 제거합니다.

    # KDUMP_COMMANDLINE_APPEND="irqpoll nr_cpus=1 reset_devices cgroup_disable=memory udev.children-max=2 panic=10 swiotlb=noforce novmcoredd"
  3. kdump 서비스를 다시 시작하십시오.

    # systemctl restart kdump

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

Amazon Web Services Graviton 2 및 Amazon Web Services Graviton 3 프로세서는 /etc/sysconfig/kdump 파일에서 irqpoll 매개변수를 수동으로 제거할 필요가 없습니다.

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

이 알려진 문제에 대한 관련 정보는 irqpoll 커널 명령줄 매개변수로 인해 vmcore 생성 실패 문서를 참조하십시오.

Bugzilla:1654962[1]

코어가 큰 시스템에서 실시간 커널의 하드웨어 인증으로 skew-tick=1 부팅 매개변수를 전달해야 할 수 있습니다.

다수의 소켓과 대규모 코어 개수가 있는 대규모 또는 중간 규모의 시스템은 시간 보관 시스템에 사용되는 xtime_lock 의 잠금 경합으로 인해 대기 시간이 급증할 수 있습니다. 결과적으로 멀티프로세싱 시스템에서 대기 시간이 급증하고 하드웨어 인증 지연이 발생할 수 있습니다. 이 문제를 해결하려면 skew_tick=1 부팅 매개변수를 추가하여 CPU당 타이머 눈금을 다른 시간에 시작할 수 있습니다.

잠금 충돌을 방지하려면 skew_tick=1 을 활성화합니다.

  1. grubby 를 사용하여 skew_tick=1 매개변수를 활성화합니다.

    # grubby --update-kernel=ALL --args="skew_tick=1"
  2. 변경 사항을 적용하려면 재부팅하십시오.
  3. 부팅 중에 전달하는 커널 매개변수를 표시하여 새 설정을 확인합니다.

    cat /proc/cmdline

skew_tick=1 을 활성화하면 전력 소비가 크게 증가하므로 대기 시간에 민감한 실시간 워크로드를 실행하는 경우에만 활성화해야 합니다.

Jira:RHEL-9318[1]

디버그 커널이 RHEL 8에서 크래시 캡처 환경에서 부팅되지 않음

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

Bugzilla:1659609[1]

부팅 시 크래시 커널 메모리 할당 실패

일부 Ampere Altra 시스템에서 BIOS 설정에서 32비트 영역이 비활성화되면 부팅 중에 크래시 커널 메모리를 할당하지 못합니다. 결과적으로 kdump 서비스가 시작되지 않습니다. 이는 4GB 미만의 리전의 메모리 조각화로 인해 발생하며 충돌 커널 메모리를 포함할 수 있을 만큼 조각화되지 않습니다.

이 문제를 해결하려면 다음과 같이 BIOS에서 32비트 메모리 영역을 활성화합니다.

  1. 시스템에서 BIOS 설정을 엽니다.
  2. Chipset 메뉴를 엽니다.
  3. 메모리 구성에서 Slave 32비트 옵션을 활성화합니다.

결과적으로 32비트 리전 내의 크래시 커널 메모리 할당이 성공하고 kdump 서비스가 예상대로 작동합니다.

Bugzilla:1940674[1]

QAT 관리자는 LKCF에 대한 예비 장치를 남기지 않습니다.

Intel® QuickAssist Technology(QAT) 관리자(qatmgr)는 기본적으로 시스템의 모든 QAT 장치를 사용하는 사용자 공간 프로세스입니다. 그 결과 Linux LKCF(커널 암호화 프레임워크)용으로 QAT 장치가 남아 있지 않습니다. 이 동작이 예상되고 대부분의 사용자가 사용자 공간의 가속을 사용하므로 이 상황을 해결할 필요가 없습니다.

Bugzilla:1920086[1]

Solarflare가 최대 VF(가상 기능) 수를 생성하지 못합니다.

Solarflare NIC는 리소스가 부족하여 최대 VF 수를 생성하지 못합니다. PCIe 장치가 /sys/bus/pci/devices/PCI_ID/sriov_totalvfs 파일에서 생성할 수 있는 최대 VF 수를 확인할 수 있습니다. 이 문제를 해결하려면 VF 수 또는 VF Cryostat 인터럽트 값을 시작 시 Solarflare Boot Manager 에서 더 낮은 값으로 조정하거나 Solarflare sfboot 유틸리티를 사용할 수 있습니다. 기본 VF Cryostat 인터럽트 값은 8 입니다.

  • sfboot 를 사용하여 VF Cryostat 인터럽트 값을 조정하려면 다음을 수행합니다.
# sfboot vf-msix-limit=2
참고

VF Cryostat 인터럽트 값을 조정하면 VF 성능에 영향을 미칩니다.

적절하게 조정할 매개변수에 대한 자세한 내용은 solarflare 서버 어댑터 사용자 가이드를 참조하십시오.

Bugzilla:1971506[1]

page_poison=1 을 사용하면 커널이 충돌할 수 있습니다.

page_poison=1 을 결함이 있는 EFI 구현에서 커널 매개변수로 사용하는 경우 운영 체제에서 커널이 충돌할 수 있습니다. 기본적으로 이 옵션은 비활성화되어 있으며 특히 프로덕션 시스템에서 활성화하지 않는 것이 좋습니다.

Bugzilla:2050411[1]

iwl7260-firmware 는 Intel Wi-Fi 6 AX200, AX210 및 CryostatPad P1 Cryostat 4에서 Wi-Fi를 분리합니다.

iwl7260-firmware 또는 iwl7260-wifi 드라이버를 RHEL 8.7 이상에서 제공하는 버전으로 업데이트한 후 하드웨어가 잘못된 내부 상태가 됩니다. 상태를 잘못 보고합니다. 결과적으로 Intel Wifi 6 카드가 작동하지 않을 수 있으며 오류 메시지가 표시됩니다.

kernel: iwlwifi 0000:09:00.0: Failed to start RT ucode: -110
kernel: iwlwifi 0000:09:00.0: WRT: Collecting data: ini trigger 13 fired (delay=0ms)
kernel: iwlwifi 0000:09:00.0: Failed to run INIT ucode: -110

확인되지 않은 작업은 시스템의 전원을 끄고 다시 켜는 것입니다. 재부팅하지 마십시오.

Bugzilla:2106341[1]

IBM Power Systems에서 보안 부팅은 마이그레이션을 지원하지 않습니다.

현재 IBM Power Systems에서 PV(물리 볼륨) 마이그레이션 후 논리 파티션(LPAR)이 부팅되지 않습니다. 결과적으로 파티션에서 보안 부팅이 활성화된 모든 유형의 자동화된 마이그레이션이 실패합니다.

Bugzilla:2126777[1]

kmod 의 약한 모듈이 모듈 상호 의존과 함께 작동하지 않음

kmod 패키지에서 제공하는 weak-modules 스크립트는 설치된 커널과 kABI와 호환되는 모듈을 결정합니다. 그러나 모듈의 커널 호환성을 확인하는 동안 약한 모듈은 빌드된 커널의 상위 릴리스에서 더 낮은 릴리스까지 종속성을 기호화합니다. 결과적으로 다른 커널 릴리스에 빌드된 상호 종속 관계가 있는 모듈은 호환되지 않는 것으로 해석될 수 있으므로 이 시나리오에서는 weak-modules 스크립트가 작동하지 않을 수 있습니다.

이 문제를 해결하려면 새 커널을 설치하기 전에 최신 커널에 대해 추가 모듈을 빌드하거나 배치하십시오.

Bugzilla:2103605[1]

Ampere Altra 서버의 kdump 가 OOM 상태가 됨

Ampere Altra 및 Altra Max 서버의 펌웨어로 인해 현재 커널이 너무 많은 이벤트, 인터럽트 및 명령 대기열을 할당하여 메모리를 많이 사용합니다. 그 결과 kdump 커널은 OOM(Out of memory) 상태가 됩니다.

이 문제를 해결하려면 crashkernel= 커널 옵션의 값을 640M 으로 늘려 kdump 에 대한 추가 메모리를 예약합니다.

Bugzilla:2111855[1]

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.