5장. 외부 커널 매개변수에 대한 중요한 변경 사항


이 장에서는 시스템 관리자에게 Red Hat Enterprise Linux 9.4와 함께 배포된 커널의 중요한 변경 사항에 대한 요약을 제공합니다. 이러한 변경으로는 proc 항목, sysctlsysfs 기본값, 부팅 매개 변수, 커널 구성 옵션 또는 눈에 띄는 동작 변경과 같은 추가 또는 업데이트된 동작 변경이 포함될 수 있습니다.

새 커널 매개변수

accept_memory=

[MM]

값:

lazy (기본값)
기본적으로 승인되지 않은 메모리는 긴 부팅 시간을 피하기 위해 lazily가 허용됩니다. lazy 옵션은 모든 메모리가 수락될 때까지 일부 런타임 오버헤드를 추가합니다. 대부분의 경우 오버헤드는 무시할 수 있습니다.
eager
일부 워크로드 또는 디버깅 용도의 경우 accept_memory=eager 를 사용하여 부팅 중에 한 번에 모든 메모리를 허용할 수 있습니다.

arm64.nomops

[ARM64]

무조건 메모리 복사 및 메모리 세트 지침이 지원됩니다.

cgroup_favordynmods=

[KNL]

favordynmods 를 활성화하거나 비활성화합니다.

값:

  • true
  • false

기본값은 CONFIG_CGROUP_FAVOR_DYNMODS 입니다.

early_page_ext

[KNL]

더 초기 부팅 할당을 처리하기 위해 page_ext 초기화를 이전 단계에 적용합니다.

부작용으로 일부 최적화는 비활성화되어 있을 수 있습니다. 예를 들어 병렬화된 메모리 초기화는 비활성화되어 있습니다. 따라서 특히 메모리가 많은 시스템에서 부팅 프로세스가 더 오래 걸릴 수 있습니다.

CONFIG_PAGE_EXTENSION=y 에서 사용할 수 있습니다.

fw_devlink.sync_state=

[KNL]

프로브할 수 있는 모든 장치가 프로빙을 완료하면 이 매개변수는 아직 sync_state() 호출을 수신하지 않은 장치에서 수행할 작업을 제어합니다.

값:

strict (기본값)
소비자가 성공적으로 프로브를 계속 기다립니다.
timeout
소비자에서 대기하고 deferred_probe_timeout 이 만료되었거나 CONFIG_MODULESfalse 인 경우 late_initcall()sync_state() 호출을 아직 수신하지 않은 모든 장치에서 sync_state() 를 호출합니다.

ia32_emulation=

[X86-64]

값:

true
32비트 프로그램을 로드하고 32비트 syscall을 실행할 수 있으므로 기본적으로 부팅 시 IA32_EMULATION_DEFAULT_DISABLED 를 덮어씁니다.
false
무조건 IA32 에뮬레이션을 비활성화합니다.

kunit.enable=

[KUNIT]

KUnit 테스트 실행을 활성화합니다. CONFIG_KUNIT 을 완전히 활성화하도록 설정해야 합니다.

KUNIT_DEFAULT_ENABLED 를 사용하여 기본값을 재정의할 수 있습니다.

기본값은 1입니다(활성화).

mtrr=debug

[X86]

부팅 시 MTRR 레지스터와 관련된 디버그 정보를 출력할 수 있습니다.

rcupdate.rcu_cpu_stall_cputime=

[KNL]

샘플링 기간 동안 CPU 시간과 인터럽트 및 작업 수에 대한 통계를 제공합니다. 연속 RCU stalls의 경우 모든 샘플링 기간은 첫 번째 RCU의 절반 시간 제한에서 시작됩니다.

rcupdate.rcu_exp_stall_task_details=

[KNL]

빠른 RCU CPU가 경고하는 동안 현재 RCU 유예 기간을 차단하는 모든 작업의 스택 덤프를 출력합니다.

spec_rstack_overflow=

[X86]

AMD Cryostat CPU에서 RAS 오버플로 완화 기능을 제어합니다.

값:

off
완화 비활성화
마이크로 코드
마이크로 코드 완화만 활성화합니다.
safe-ret (기본값)
소프트웨어 전용 보안 RET 완화 기능을 활성화합니다.
ibpb
커널 항목에서 IBPB를 실행하여 완화 기능을 활성화합니다.
ibpb-vmexit
VMEXIT에서만 IBPB를 발행합니다. 이 완화 방법은 클라우드 환경에 따라 다릅니다.

workqueue.unbound_cpus=

[KNL,SMP]

바인딩되지 않은 작업 큐에서 사용할 하나 또는 일부 CPU를 제한하려면 을 지정합니다.

value: CPU 목록입니다.

기본적으로 모든 온라인 CPU는 바인딩되지 않은 작업 큐에 사용할 수 있습니다.

업데이트된 커널 매개변수

amd_iommu=

[HW, X86-64]

시스템의 AMD IOMMU 드라이버에 매개변수를 전달합니다.

값:

fullflush
더 이상 사용되지 않는 iommu.strict=1.
off
시스템에 있는 AMD IOMMU를 초기화하지 마십시오.
force_isolation
모든 장치에 대해 장치 격리를 강제 적용합니다. IOMMU 드라이버는 더 이상 필요에 따라 격리 요구 사항을 대체할 수 없습니다. 이 옵션은 iommu=pt 를 덮어쓰지 않습니다.
force_enable
IOMMU가 활성화된 버그로 알려진 플랫폼에서 IOMMU를 강제로 활성화합니다. 이 옵션을 주의해서 사용하십시오.
new: pgtbl_v1 (기본값)
Cryostat-API에 버전 1 페이지 테이블을 사용합니다.
new: pgtbl_v2
Cryostat-API에 버전 2 페이지 테이블을 사용합니다.
new: irtcachedis
IRT(Interrupt Remapping Table) 캐싱을 비활성화합니다.

nosmt

[KNL, PPC, S390]

대칭 멀티스레딩(SMT)을 비활성화합니다. smt=1 과 동일합니다.

[KNL, X86, PPC]

대칭 멀티스레딩(SMT)을 비활성화합니다.

nosmt=force
강제 SMT를 비활성화합니다. sysfs 제어 파일을 사용하여 실행 취소할 수 없습니다.

page_reporting.page_reporting_order=

[KNL]

최소 페이지 보고 순서.

값: integer.

최소 페이지 보고 순서를 조정합니다.

new: 페이지 보고는 MAX_ORDER 를 초과하면 비활성화되어 있습니다.

tsc=

TSC에 대한 클럭 소스 안정성 검사를 비활성화합니다.

값:

[x86] 신뢰할 수 있는
tsc 클럭 소스를 신뢰할 수 있음으로 표시합니다. 이렇게 하면 런타임 시 클럭 소스 확인이 비활성화되고 부팅 시 수행되는 안정성 검사가 비활성화됩니다. 이전 하드웨어 및 가상화 환경에서 해상도가 높은 타이머 모드를 활성화하는 데 사용됩니다.
[x86] noirqtime
irq 계정을 수행하는 데 TSC를 사용하지 마십시오. 시간을 실행하는 데 사용하면 RDTSC가 느리고 이 회계에서 오버헤드가 증가할 수 있는 모든 플랫폼에서 IRQ_TIME_ACCOUNTING 을 비활성화합니다.
[x86] 불안정
TSC 클럭 소스를 불안정으로 표시합니다. 이는 부팅시 TSC가 무조건 불안정하게 표시하며, TSC 워치(TSC 워치)가 명시된 후 추가 허블을 방지할 수 있습니다.
[x86] nowatchdog
클럭 소스 워치독을 비활성화합니다. 클럭 소스 워치독의 중단이 허용되지 않는 엄격한 대기 시간 요구 사항이 있는 상황에서 사용됩니다.
[x86] recalibrate
TSC 주파수가 MSR 또는 CPUID(0x15)를 사용하여 HW 또는 FW에서 얻은 시스템의 HW 타이머(HPET 또는 PM 타이머)에 대한 강제 재조정. 차이가 500 ppm 이상인 경우 경고합니다.
새로운 기능: [x86] 워치독

TSC를 다른 HW 타이머(HPET 또는 PM 타이머)를 확인하기 위해 워치독 클럭소스로 사용하지만 TSC가 신뢰할 수 있는 것으로 간주되는 시스템에서만 사용합니다.

이전 tsc=nowatchdog 은 이를 비활성화합니다. 나중에 tsc=nowatchdog 이 이를 재정의합니다. 콘솔 메시지는 이러한 억제 또는 덮어쓰기에 플래그를 지정합니다.

usbcore.authorized_default=

[USB]

기본 USB 장치 권한 부여.

값:

New: -1 (기본값)
권한 부여(동일 1).
0
권한이 없습니다.
1
권한 부여.
2
장치가 내부 포트에 연결된 경우 권한이 부여됩니다.

제거된 커널 매개변수

  • cpu0_hotplug
  • sysfs.deprecated

새로운 sysctl 매개변수

io_uring_group

값:

1
io_uring 인스턴스를 생성하려면 프로세스가 권한이 있어야 합니다(CAP_SYS_ADMIN) 또는 io_uring_group 그룹에 있어야 합니다.
-1 (기본값)
CAP_SYS_ADMIN 기능이 있는 프로세스만 io_uring 인스턴스를 생성할 수 있습니다.

numa_balancing_promote_rate_limit_MBps

서로 다른 메모리 유형 간의 승격 또는 강등 처리량이 너무 높으면 애플리케이션 대기 시간이 저하될 수 있습니다. 이 매개변수를 사용하여 승격 처리량을 평가할 수 있습니다. 노드당 최대 승격 처리량(MB/s)은 설정된 값 이상으로 제한됩니다.

엄지엄 규칙은 이를 PMEM 노드 쓰기 대역폭의 1/10 미만으로 설정하는 것입니다.

업데이트된 sysctl 매개변수

io_uring_disabled

모든 프로세스에서 새 io_uring 인스턴스를 생성하지 못하도록 합니다. 이를 활성화하면 커널의 공격 면적이 줄어듭니다.

값:

새로운 기능: 0
모든 프로세스는 io_uring 인스턴스를 정상적으로 생성할 수 있습니다.
새로운 기능: 1

io_uring 생성은 io_uring_group 그룹에 없는 권한이 없는 프로세스에 대해 비활성화되어 있습니다. io_uring_setup()-EPERM. 기존 io_uring 인스턴스를 계속 사용할 수 있습니다.

자세한 내용은 io_uring_group 설명서를 참조하십시오.

새로운 기능: 2 (기본값)
모든 프로세스에 대해 io_uring 생성이 비활성화됩니다. io_uring_setup() 은 항상 -EPERM. 기존 io_uring 인스턴스를 계속 사용할 수 있습니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.