5.2.2. 업데이트된 커널 매개변수

intel_iommu = [DMAR]

Intel IOMMU 드라이버 DMAR(Direct Memory Access Remapping).

옵션은 다음과 같습니다.

  • sm_on [Default Off] - 하드웨어에서 확장 가능한 모드 변환을 지원한다고 알려도 기본적으로 확장 가능한 모드 모드가 비활성화됩니다. 이 옵션을 설정하면 지원하려는 하드웨어에서 확장 가능 모드가 사용됩니다.
isolcpus = [KNL,SMP,ISOL]

이 매개변수는 지정된 CPU 세트를 방해하지 않도록 격리합니다.

  • managed_irq - 분리된 CPU를 포함하는 인터럽트 마스크가 있는 관리 인터럽트에서 격리된 CPU를 대상으로 하지 못하게 하는 하위 매개 변수입니다. 관리되는 인터럽트의 선호도는 커널에서 처리하며 /proc/irq/* 인터페이스를 통해 변경할 수 없습니다.

    이러한 격리는 최상의 노력이며, 장치 큐의 자동으로 할당된 인터럽트 마스크에 분리 및 하우스키핑 CPU가 포함된 경우에만 효과적입니다. 하우스키핑 CPU가 온라인 상태인 경우 이러한 인터럽트가 하우스키핑 CPU로 전달되어 하우스키핑 CPU에 제출된 I/O가 분리된 CPU를 방해할 수 없습니다.

    큐의 선호도 마스크에 격리된 CPU만 포함된 경우 이 매개변수는 인터럽트 라우팅 결정에 영향을 미치지 않습니다. 그러나 인터럽트는 격리된 CPU에서 실행되는 작업이 I/O를 제출할 때만 전달됩니다. 하우스키핑 CPU에서 제출된 I/O는 해당 큐에 영향을 미치지 않습니다.

mds = [X86,INTEL]

옵션 변경 사항:

  • 꺼짐 - TSX Async Abort (TAA) 영향을 받는 시스템에서 mds=off 는 두 취약점이 동일한 메커니즘으로 완화되므로 활성 TAA 완화로 방지할 수 있습니다. 따라서 이 완화 기능을 비활성화하려면 tsx_async_abort=off 커널 매개변수도 지정해야 합니다.

이 매개 변수를 지정하지 않는 것은 mds=full 과 동일합니다.

자세한 내용은 업스트림 커널 설명서를 참조하십시오.

mem_encrypt = [X86-64]

AMD SME(Secure Memory Encryption) 제어

메모리 암호화를 활성화할 수 있는 시기에 대한 자세한 내용은 업스트림 커널 설명서 를 참조하십시오.

완화 방법 =

옵션 변경 사항:

  • off - 모든 선택적 CPU 완화를 비활성화합니다. 이로 인해 시스템 성능이 향상되지만 여러 CPU 취약점에 사용자가 노출될 수도 있습니다.

    다음과 같습니다.

    • nopti [X86,PPC]
    • kpti=0 [ARM64]
    • nospectre_v1 [X86,PPC]
    • nobp=0 [S390]
    • nospectre_v2 [X86,PPC,S390,ARM64]
    • spectre_v2_user=off [X86]
    • spec_store_bypass_disable=off [X86,PPC]
    • ssbd=force-off [ARM64]
    • l1tf=off [X86]
    • mds=off [X86]
    • tsx_async_abort=off [X86]
    • kvm.nx_huge_pages=off [X86]

      예외:

      kvm.nx_huge_pages=force인 경우 kvm.nx_huge_pages =force 에는 아무 영향도 미치지 않습니다.

  • auto,nosmt - 모든 CPU 취약점을 완화하여 필요한 경우 SMT(동시 멀티 스레드)를 비활성화합니다. 이 옵션은 SMT를 손실하는 것을 의미하더라도 항상 완전히 완화하려는 사용자를 위한 것입니다.

    다음과 같습니다.

    • l1tf=flush,nosmt [X86]
    • mds=full,nosmt [X86]
    • tsx_async_abort=full,nosmt [X86]
rcutree.jiffies_till_sched_qs = [KNL]

이 매개 변수는 RCU(읽기 복사 업데이트)가 rcu_note_context_switch() 및 cond_resched() 함수에서 quigrad-state 도움말을 요청하기 전에 지정된 유예 기간에 필요한 기간을 설정합니다. 지정되지 않은 경우 커널은 rcutree.jiffies_current_ first_fqs 및 rcutree.jiffies_ still_next_fqs 커널 매개 변수의 최신 설정을 기반으로 값을 계산합니다.

계산된 이 값은 rcutree.jiffies_to_sched_qs 커널 매개 변수에서 볼 수 있습니다. rcutree.jiffies_to_sched_qs를 설정하려는 모든 시도가 덮어쓰기됩니다.

tsc =

이 매개 변수는 TSC(Time Stamp Counter)에 대한 클록 소스 안정성 검사를 비활성화합니다.

형식: <string>

옵션은 다음과 같습니다.

  • reliable [x86] - TSC 클록소스를 신뢰할 수 있는 것으로 표시합니다. 이 옵션은 런타임 시 클록 소스 확인 및 부팅 시 수행되는 안정성 검사를 비활성화합니다. 또한 이 옵션을 사용하면 이전 하드웨어와 가상화 환경에서 고해상도 타이머 모드를 사용할 수 있습니다.
  • noirqtime [x86] - TSC를 사용하여IRQ(Interrupt Request) 회계를 수행하지 마십시오. RDTSC (Read Time-Stamp Counter)가 느리고 이 회계는 오버헤드를 추가할 수 있는 모든 플랫폼에서 IRQ_TIME_ACCOUNTING 을 비활성화하는 데 사용됩니다.
  • unstable [x86] - TSC 클럭소스를 불안정한 것으로 표시합니다. 이 옵션은 부팅 시 무조건 불안정한 TSC를 표시하며, TSC 감시 알림이 있으면 추가 차단을 방지합니다.
  • nowatchdog [x86] - clocksource watchdog를 비활성화합니다. 옵션은 클럭소스 워치독에서 중단이 허용되지 않는 엄격한 대기 시간 요구 사항이 있는 경우에 사용됩니다.