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


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

새 커널 매개변수

numa_cma=<node>:nn[MG][,<node>:nn[MG]]

[KNL,CMA]

연속 메모리 할당의 커널 numa 메모리 영역 크기를 설정합니다. 지정된 노드에 대해 CMA 영역을 예약합니다.

numa CMA를 사용하면 노드 nid의 Cryostat 사용자는 먼저 노드 nid에 있는 numa 영역에서 버퍼를 할당하려고 합니다. 할당이 실패하면 글로벌 기본 메모리 영역으로 대체됩니다.

reg_file_data_sampling=

[x86]

Register File Data Sampling (RFDS) 취약점의 완화 조치를 제어합니다. CryostatDS는 사용자 공간이 부동 소수점 레지스터, 벡터 레지스터 또는 정수 레지스터에 이전에 저장된 커널 데이터 값을 추측할 수 있는 CPU 취약점입니다. CryostatDS는 Intel Atom 프로세서에만 영향을 미칩니다.

값:

  • On :: 완화 상태 설정
  • off :: 완화 기능을 해제하십시오.

이 매개변수는 CONFIG_MITIGATION_RFDS로 설정된 컴파일 시간을 재정의합니다. MDS와 같은 다른 VERW 기반 완화 기능을 활성화하면 완화 기능을 비활성화할 수 없습니다. CryostatDS 완화를 비활성화하려면 모든 VERW 기반 완화 기능을 비활성화해야 합니다.

자세한 내용은 Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst를 참조하십시오.

locktorture.acq_writer_lim=

[KNL]

잠금 취득에 대한 jiffies에서 시간 제한을 설정합니다. 이 제한을 초과하는 인수는 완료 후 스플릿이 발생합니다.

locktorture.bind_readers=

[KNL]

판독기를 바인딩할 CPU 목록을 지정합니다.

locktorture.bind_writers=

[KNL]

작성자가 바인딩할 CPU 목록을 지정합니다.

locktorture.call_rcu_chains=

[KNL]

설정할 self-propagating call_rcu() 체인 수를 지정합니다. 이는 언제든지 RCU 유예 기간이 발생할 가능성이 높도록 하기 위해 사용됩니다. 기본값은 0으로, 이러한 call_rcu() 체인을 비활성화합니다.

locktorture.long_hold=

[KNL]

경우에 따라 long-duration 잠금 보류 시간에 기간을 밀리초 단위로 지정합니다. 기본값은 100밀리초입니다. 비활성화하려면 0 을 선택합니다.

locktorture.nested_locks=

[KNL]

최대 잠금 중첩 깊이를 최대 8 개(MAX_NESTED_LOCKS)로 지정합니다. 비활성화하려면 0 을 지정합니다. 이 매개변수는 중첩된 인수를 지원하지 않는 잠금 유형에서는 효과가 없습니다.

workqueue.default_affinity_scope=

바인딩되지 않은 작업 큐에 사용할 기본 선호도 범위를 선택합니다. "cpu", "smt", "cache", "numa" 및 "system" 중 하나일 수 있습니다. 기본값은 "cache"입니다. 자세한 내용은 Documentation/core-api/workqueue.rst 의 유사성 범위 섹션을 참조하십시오.

일치하는 /sys/module/workqueue/parameters 파일에 작성하여 부팅 후 변경할 수 있습니다. "default" 선호도 범위가 있는 모든 workqueues는 적절하게 업데이트됩니다.

locktorture.rt_boost=

[KNL]

실시간 잠금 우선 순위 향상에 대한 정기적인 테스트를 수행합니다. 비활성화하려면 0, 1 을 선택하여 rt_mutex만 승격하고 2 를 선택하여 조건적으로 승격합니다. 기본값은 2 로, 이는 홀수적인 선택이지만 선점 비활성화로 인해 비실시간 회전에는 무해해야 합니다. 비실시간 뮤지스트는 부스트를 사용하지 않습니다.

locktorture.writer_fifo=

[KNL]

sched_set_fifo() 실시간 우선 순위에서 write-side locktorture kthreads를 실행합니다.

locktorture.rt_boost_factor=

[KNL]

우선 순위가 얼마나 자주 그리고 얼마나 오래 진행되었는지를 결정하는 번호입니다. 이는 작성자 수에 의해 축소되므로 단위 시간당 지원 횟수는 작성자 수가 증가함에 따라 거의 일정하게 유지됩니다. 반면 각 부스터의 기간은 작성자의 수에 따라 증가합니다.

microcode.force_minrev=

[X86]

형식: <bool>

런타임 마이크로 코드 로더에 대한 마이크로 코드 최소 리버전을 활성화하거나 비활성화합니다.

module.async_probe=<bool>

[KNL]

true로 설정하면 모듈은 기본적으로 async 프로빙을 사용합니다. 특정 모듈에 대해 비동기 프로빙을 활성화/비활성화하려면 <module> .async_probe 에 설명된 모듈 별 제어를 사용합니다. module.async_probe 및 < module>.async_probe 가 모두 지정되면 < module>.async_probe 가 특정 모듈에 대해 우선합니다.

module.enable_dups_trace

[KNL]

CONFIG_MODULE_DEBUG_AUTOLOAD_DUPS 가 설정되면 중복 request_module() 호출이 pr_warn() 대신 WARN_ON() 을 트리거합니다. MODULE_DEBUG_AUTOLOAD_DUPS_TRACE 가 설정된 경우 WARN_ON() 은 항상 발행되며 이 옵션은 아무 작업도 수행하지 않습니다.

nfs.delay_retrans=

[NFS]

서버에서 NFS4ERR_DELAY를 응답한 후 EAGAIN 오류를 반환하기 전에 NFSv4 클라이언트가 요청을 재시도하는 횟수를 지정합니다. softerr 마운트 옵션이 활성화되어 있고 지정된 값이 >= 0 인 경우에만 적용됩니다.

rcutree.do_rcu_barrier=

[KNL]

rcu_barrier() 에 대한 호출을 요청합니다. 이렇게 하면 사용자 공간 테스트가 선택한 경우 sysfs 변수에 안전하게 중단될 수 있습니다. RCU grace-period machine이 완전히 활성화되기 전에 트리거되면 EAGAIN으로 오류가 발생합니다.

rcuscale.minruntime=

[KNL]

최소 테스트 실행 시간을 초 단위로 설정합니다. 이는 데이터 수집 간격에 영향을 미치지 않지만 대신 CPU 소비와 같은 항목을 더 효과적으로 측정할 수 있습니다.

rcuscale.writer_holdoff_jiffies=

[KNL]

유예 기간 간 추가 쓰기 측 유지되지만 jiffies에서 사용합니다. 기본값은 holdoff를 의미합니다.

rcupdate.rcu_cpu_stall_notifiers=

[KNL]

RCU CPU stall notifiers를 제공하지만 RCU_CPU_STALL_NOTIFIER Kconfig 옵션의 도움말 텍스트에서 경고를 참조하십시오. TL;DR: rcupdate.rcu_cpu_stall_notifiers를 원하지 않습니다.

rcupdate.rcu_task_lazy_lim=

[KNL]

해당 CPU에서 laziness를 취소할 지정된 CPU의 콜백 수입니다. laziness의 취소를 비활성화하려면 -1 을 사용하지만, 이렇게 하면 콜백 플러드로 인해 OOM의 위험이 증가할 것을 권장합니다.

rcupdate.rcu_tasks_lazy_ms= ++

[KNL]

call_rcu_tasks() 에 대한 RCU Tasks 비동기 콜백 일괄 처리를 밀리초 단위로 설정합니다. 음수 값은 기본값을 사용합니다. 값이 0이면 일괄 처리가 비활성화됩니다. synchronize_rcu_tasks() 에 대해 일괄 처리는 항상 비활성화되어 있습니다.

rcupdate.rcu_tasks_rude_lazy_ms=

[KNL]

시간 초과를 밀리초 단위로 설정합니다. RCU Tasks는 call_rcu_tasks_rude() 에 대한 비동기 콜백 일괄 처리를 수행합니다. 음수 값은 기본값을 사용합니다. 값이 0이면 일괄 처리가 비활성화됩니다. synchronize_rcu_tasks_rude() 에 대해 일괄 처리는 항상 비활성화되어 있습니다.

rcupdate.rcu_tasks_trace_lazy_ms=

[KNL]

시간 초과를 밀리초 단위로 설정합니다. RCU Tasks는 call_rcu_tasks_trace()에 대한 비동기 콜백 일괄 처리를 추적합니다. 음수 값은 기본값을 사용합니다. 값이 0이면 일괄 처리가 비활성화됩니다. synchronize_rcu_tasks_trace()에 대해 일괄 처리는 항상 비활성화되어 있습니다.

spectre_bhi=

[X86]

분기 기록(BHI) 취약점의 완화를 제어합니다. 이 설정은 HW BHI 제어 및 SW BHB 삭제 시퀀스의 배포에 영향을 미칩니다.

값:

On
(기본값) 필요에 따라 HW 또는 SW 완화 기능을 활성화합니다.
off
완화 기능을 비활성화합니다.

unwind_debug

[X86-64]

unwinder 디버그 출력을 활성화합니다. 이는 손상된 스택 및 성능 저하/하이퍼 메타데이터를 포함하여 특정 unwinder 오류 조건을 디버깅하는 데 유용할 수 있습니다.

workqueue.cpu_intensive_thresh_us=

이 임계값보다 오래 실행되는cpu별 작업 항목은 자동으로 CPU 집약적으로 간주되고 다른 per-cpu 작업 항목이 눈에 띄게 지연되지 않도록 동시성 관리에서 제외됩니다. 기본값은 10000 (10ms)입니다.

CONFIG_WQ_CPU_INTENSIVE_REPORT 가 설정된 경우 커널은 이 임계값을 위반하는 작업 함수를 반복적으로 보고합니다. 대신 WQ_UNBOUND 워크 큐를 사용하는 데 적합한 후보자가 될 수 있습니다.

workqueue.cpu_intensive_warning_thresh=<uint> CONFIG_WQ_CPU_INTENSIVE_REPORT 가 설정된 경우 커널은 intensive_threshold_us 를 반복적으로 위반하는 작업 기능을 보고합니다. spurious 경고를 방지하기 위해 작업 함수가 임계값을 위반하는 경우에만 인쇄를 시작합니다.

기본값은 4 번입니다. 0 에서는 경고를 비활성화합니다.

workqueue.default_affinity_scope=

바인딩되지 않은 작업 큐에 사용할 기본 선호도 범위를 선택합니다. "cpu", "smt", "cache", "numa" 및 "system" 중 하나일 수 있습니다. 기본값은 "cache"입니다. 자세한 내용은 Documentation/core-api/workqueue.rst의 유사성 범위 섹션을 참조하십시오.

일치하는 /sys/module/workqueue/parameters 파일에 작성하여 부팅 후 변경할 수 있습니다. "default" 선호도 범위가 있는 모든 workqueues는 적절하게 업데이트됩니다.

xen_msr_safe=

[X86,XEN]

형식: <bool>

Cryostat PV 게스트로 실행할 때 항상 비Fulting (safe) MSR 액세스 기능을 사용할지 여부를 선택합니다. 기본값은 CONFIG_XEN_PV_MSR_SAFE 에서 제어합니다.

업데이트된 커널 매개변수

clearcpuid=

X[,X...] [X86]

커널의 CPUID 기능 X를 비활성화합니다. 숫자 X를 참조하십시오.

Linux별 비트는 커널 옵션보다 안정적인 것은 아니지만 벤더별 비트는 다음과 같아야 합니다. X는 위의 불안정성 문제가 없는 /proc/cpuinfo 의 flags: 행에 나타나는 문자열일 수도 있습니다. 그러나 /proc/cpuinfo 의 모든 기능에 이름이 있는 것은 아닙니다. 이 옵션을 사용하면 커널에 영향을 미칩니다.

또한 사용자 프로그램은 CPUID를 직접 호출하거나 아무것도 확인하지 않고 기능을 사용하면 여전히 볼 수 있습니다. 이렇게 하면 커널에서 사용할 수 없거나 /proc/cpuinfo 에 표시되지 않습니다. 일부 중요한 비트를 비활성화하면 커널이 오작동할 수 있습니다.

cma_pernuma=nn[MG]

[KNL,CMA]

연속 메모리 할당의 커널 단위 메모리 영역을 설정합니다. 값이 0 이면 숫자 CMA가 모두 비활성화됩니다. 이 옵션을 지정하지 않으면 기본값은 0 입니다. 노드 nid의 per-numa CMA를 사용하면 먼저 노드 nid에 있는 pernuma 영역에서 버퍼를 할당하려고 합니다. 할당이 실패하면 글로벌 기본 메모리 영역으로 대체됩니다.

csdlock_debug=

[KNL]

CPU 간 함수 호출 처리의 디버그 애드온을 활성화합니다. 켜지면 중단 CPU가 감지되는 경우 추가 디버그 데이터가 콘솔에 출력되고 중단 상황을 해결하기 위해 CPU가 다시 ping됩니다. 이 옵션의 기본값은 CSD_LOCK_WAIT_DEBUG_DEFAULT Kconfig 옵션에 따라 다릅니다.

<module>.async_probe[=<bool>]

[KNL]

< bool > 값이 지정되지 않거나 지정된 값이 유효한 < bool >이 아닌 경우 이 모듈에서 비동기 프로브를 활성화합니다. 그렇지 않으면 < bool> 값에 표시된 대로 이 모듈에서 비동기 프로브를 활성화/비활성화합니다. module.async_probe도 참조하십시오.

earlycon=

[KNL]

초기 콘솔 장치 및 옵션을 출력합니다.

옵션을 사용하지 않는 경우 초기 콘솔은 장치 트리에서 선택한 노드의 stdout-path 속성 또는 플랫폼에서 지원하는 경우 ACPI SPCR 테이블에 의해 결정됩니다.

CDNs,<addr>[,options] 지정된 주소에서 Cadence (xuartps) 직렬 포트에서 초기 폴링 모드 콘솔을 시작합니다. 지원되는 옵션은 baud 비율입니다. baud 속도를 지정하지 않으면 직렬 포트가 이미 설정되어 구성되어 있어야 합니다.

UART [8250],io,<addr>[,options[,uartclk]]uart[8250],<addr>[,options[,uartclk]] uart[8250],mmio32,<addr>[,options[,uartclk]]uart[,uartclk]] uart[8250], uart[,uartclk]]uart[8250] mmio32be,<addr>[,options[,uartclk]]uart[8250],0x<addr>[,options]

지정된 I/O 포트 또는 MMIO 주소에서 8250/16550 UART에서 초기 폴링 모드 콘솔을 시작합니다. MMIO 상호 등록 주소 stride는 8비트(mmio) 또는 32비트(mmio32 또는 mmio32be)입니다. [io|mmio|mmio32|mmio32be] 중 하나가 없는 경우 < addr >은 'mmio'와 동일한 것으로 간주됩니다. 'options'는 "console=ttyS<n>"에 대해 설명된 것과 동일한 형식으로 지정됩니다 . 지정되지 않은 경우 h/w는 uart 클럭 빈도입니다. 미정이 해제된 경우 'uartclk'가 'BASE 16BA'로 설정됩니다.

earlyprintk=

[X86,SH,ARM,M68k,S390]

earlyprintk=vga earlyprintk=sclp earlyprintk=xen earlyprintk=serial[,ttySn[,baudrate]] earlyprintk=serial[,0x…​[,baudrate]] earlyprintk=ttySn[,baudrate] earlyprintk=dbgp [debugController#] earlyprintk=pciserial, force],bus:device.function[,baudrate] earlyprintk=xdbc[xhciController#]

earlyprintk는 일반 콘솔을 초기화하기 전에 커널이 충돌할 때 유용합니다. 몇 가지 문제가 있기 때문에 기본적으로 활성화되어 있지 않습니다.

실제 콘솔을 사용할 때 비활성화하지 않도록 ",keep"를 추가합니다.

한 번에 vga,efi, serial 또는 usb 디버그 포트 중 하나만 사용할 수 있습니다.

현재 ttyS0 및 ttyS1만 이름으로 지정할 수 있습니다. 다음과 같이 ttySn을 I/O 포트 주소로 교체하여 일부 아키텍처(x86 및 arm)에서 명시적으로 지정할 수 있습니다. earlyprintk=serial,0x1008,115200200 /proc/tty/driver/serial: 2: uart:ST16650V2 포트:000010050V2:00001008:

표준 직렬 드라이버와의 상호 작용은 좋지 않습니다.

결국 VGA 및 EFI 출력을 실제 콘솔에서 덮어씁니다.

xen 옵션은 Cryostat 도메인에서만 사용할 수 있습니다.

sclp 출력은 s390에서만 사용할 수 있습니다.

선택적 "force" to "pciserial"을 사용하면 클래스 코드가 UART 클래스가 아닌 경우에도 PCI 장치를 사용할 수 있습니다.

iommu.strict=

[ARM64, X86, S390]

TLB 무효화 동작을 구성합니다.

형식: { "0" | "1" }

0 - 지연 모드
장치 격리 감소에 따른 처리량 증가를 위해 하드웨어 TLB의 지연되지 않은 작업을 사용하도록 요청 관련 IOMMU 드라이버에서 지원하지 않는 경우 strict 모드로 대체됩니다.
1 - 엄격한 모드
Cryostat 비맵 작업은 IOMMU 하드웨어 TLB를 동기적으로 무효화합니다.
unset
CONFIG_IOMMU_DEFAULT_DMA_{LAZY,STRICT} 값을 사용합니다.
참고

x86에서는 기존 드라이버별 옵션 중 하나를 통해 지정된 엄격한 모드가 우선합니다.

mem_encrypt=

[x86_64]

AMD STS(Secure Memory Encryption) 제어.

유효한 인수: on, off

기본값: off

mem_encrypt=on: SME mem_encrypt=off: SME를 활성화하지 마십시오.

완화 방법=

[X86,PPC,S390,ARM64]

CPU 취약점에 대한 선택적 완화 조치를 제어합니다. 이는 선별된 아키텍처 독립적인 옵션 세트이며, 각 옵션은 기존 아키텍처별 옵션을 집계합니다.

값: off

모든 선택적 CPU 완화 기능을 비활성화합니다. 이렇게 하면 시스템 성능이 향상되지만 사용자가 여러 CPU 취약점에 노출될 수도 있습니다. 와 동일: nokaslr then kpti=0 [ARM64] gather_data_sampling=off [X86] kvm.nx_huge_pages=off [X86] l1tf=off [X86] mds=off [X86] mmio_stale_data=off [X86] no_entry_flush [PPC] no_uaccess_flush [PPC] nobp=0 [S390] nopti [X86, PPC] nospectre_bhb [ARM64] nospectre_v1 [X86,PPC] nospectre_v2 [X86,PPC,S390,ARM64] reg_file_data_sampling=off [X86] retbleed =off [X86] spec_rstack_overflow =off [X86] PPC] spectre_bhi=off [X86] spectre_v2_user=off [X86] srbds=off [X86,INTEL] ssbd=force-off [ARM64] tsx_async_abort=off [X86]

nosmap

[PPC]

프로세서에서 지원하는 경우에도 SMAP(Supervisor Mode Access Prevention)을 비활성화합니다.

nosmep

[PPC64s]

프로세서에서 지원하는 경우에도 SMEP(Supervisor Mode Execution Prevention)를 비활성화합니다.

nox2apic

[x86_64,APIC]

x2APIC 모드를 활성화하지 마십시오.

참고

이 매개변수는 IA32_XAPIC_DISABLE_STATUS MSR 에 설정된 LEGACY_XAPIC_DISABLED 비트가 있는 시스템에서 무시됩니다.

panic_print=

패닉이 발생할 때 시스템 정보를 인쇄하기 위한 비트 마스크. 사용자는 다음 비트의 조합을 선택할 수 있습니다.

  • 비트 0: 모든 작업 정보를 인쇄
  • 비트 1: 시스템 메모리 정보 인쇄
  • 비트 2: 인쇄 타이머 정보
  • 비트 3: CONFIG_LOCKDEP가 있는 경우 잠금 정보를 인쇄
  • 비트 4: ftrace 버퍼 인쇄
  • 비트 5: 버퍼에 있는 모든 인쇄 메시지를 인쇄
  • 비트 6: 모든 CPU backtrace 출력 (arch에서 사용 가능한 경우)
중요

이 옵션은 많은 행을 출력할 수 있으므로 로그에 이전 메시지가 손실될 위험이 있습니다. 이 옵션을 신중하게 사용하여 "log_buf_len"과 함께 더 큰 로그 버퍼를 설정할 수 있습니다.

pcie_aspm=

[PCIE]

PCIe Active State Power Management를 강제로 활성화하거나 무시합니다.

값:

off
WWWM 구성을 전혀 사용하지 마십시오. 펌웨어에서 수행한 구성은 변경하지 않고 그대로 둡니다.
force
지원하지 않을 장치에서도 SETM을 활성화합니다.
주의

에 대해 SETM을 강제 적용하면 시스템 잠금이 발생할 수 있습니다.

s390_iommu=

[HW,S390]

s390 IOTLB 플러시 모드를 설정합니다.

값:

Strict
모든 unmap 작업을 엄격하게 플러시하면 IOTLB 플러시가 발생합니다.
기본
재사용 전에 지연 플러시가 수행되므로 더 빠릅니다.
더 이상 사용되지 않음
iommu.strict=1과 동일합니다.

spectre_v2=

[x86]

Spectre variant 2 (Indirect branch speculation) 취약점의 완화 조치를 제어합니다. 기본 작업은 사용자 공간 공격으로부터 커널을 보호합니다.

값:

On
무조건 활성화는 spectre_v2_user=on을 의미합니다.
off
무조건 비활성화하면 spectre_v2_user=off가 포함됩니다.
auto
커널은 CPU 모델이 취약한지 여부를 감지합니다.

'on' will 및 'auto'를 선택하면 CPU, 사용 가능한 마이크로 코드, CONFIG_MITIGATION_RETPOLINE 구성 옵션, 커널이 빌드된 컴파일러에 따라 런타임 시 완화 방법을 선택할 수 있습니다.

usbcore.quirks=

[USB]

내장된 usb 코어 quirk 목록을 보강하는 quirk 항목 목록입니다. 목록 항목은 쉼표로 구분됩니다. 각 항목은 VendorID:ProductID:Flags 형식으로 되어 있습니다. ID는 4자리 16진수이며 플래그는 문자 집합입니다. 각 문자는 내장된 quirk를 변경하고, 설정되어 있는 경우 이를 명확하게 설정하고 지웁니다. 문자는 다음과 같은 의미가 있습니다.

  • a = USB_QUIRK_STRING_FETCH_255 (문자열 설명자는 255바이트 읽기를 사용하여 가져올 수 없음)
  • b = USB_QUIRK_RESET_RESUME (장치가 올바르게 다시 시작할 수 없으므로 대신 재설정할 수 없음);
  • C = USB_QUIRK_NO_SET_INTF (장치는 Set-Interface 요청을 처리할 수 없음)
  • D = USB_QUIRK_CONFIG_INTF_STRINGS (장치에서 구성 또는 인터페이스 문자열을 처리할 수 없음)
  • e = USB_QUIRK_RESET (장치를 재설정할 수 없음 (예: 모형 장치) 재설정을 사용하지 마십시오.
  • f = USB_QUIRK_HONOR_BNUMINTERFACES (장치에는 bNumInterfaces 수보다 더 많은 인터페이스 설명이 있으며 이러한 인터페이스와의 대화를 처리할 수 없습니다).
  • G = USB_QUIRK_DELAY_INIT (장치 디스크립터를 읽은 후 초기화 중에 장치를 일시 중지해야 함);
  • H = USB_QUIRK_LINEAR_UFRAME_INTR_BINTERVAL(고속 속도 인터럽트 끝점의 경우 USB 2.0 및 USB 3.0 사양은 마이크로 프레임의 간격 (1 마이크로 프레임 = 125 마이크로초)이 interval = 2 ^ (bInterval-1)으로 계산되어야 합니다. 이 quirk가 있는 장치는 계산에 사용된 지수 변수 대신 이 계산의 결과로서 bInterval을 보고합니다.
  • I = USB_QUIRK_DEVICE_QUALIFIER (장치 can't handle device_qualifier descriptor requests);
  • J = USB_QUIRK_IGNORE_REMOTE_WAKEUP (장치는 스포크 업을 생성하고 원격 레이업 기능을 무시함)
  • k = USB_QUIRK_NO_LPM (장치는 링크 전원 관리를 처리할 수 없음)
  • L = USB_QUIRK_LINEAR_FRAME_INTR_BINTERVAL (장치는 USB 2.0 계산 대신 bInterval을 선형 프레임으로 보고함)
  • m = USB_QUIRK_DISCONNECT_SUSPEND (SUSPEND를 방지하기 위해 장치를 일시 중단해야 함)
  • N = USB_QUIRK_DELAY_CTRL_MSG (장치는 모든 제어 메시지 후에 일시 중지가 필요)
  • O = USB_QUIRK_HUB_SLOW_RESET (Hub은 포트를 재설정한 후 추가 지연이 필요)
  • P = USB_QUIRK_SHORT_SET_ADDRESS_REQ_TIMEOUT ( SET_ADDRESS 요청의 시간 초과를 5000 ms에서 500ms로 줄임);

예: quirks=0781:5580:bk,0a5c:5834:gij

제거된 커널 매개변수

  • [BUGS=X86] noclflush:: CLFLUSH 명령을 사용하지 마십시오.
  • Workqueue.disable_numa
  • [X86] noexec
  • [BUGS=X86-32] nosep:: x86 SYSENTER/SYSEXIT 지원을 비활성화합니다.
  • [X86] nordrand: RDRAND 커널 사용을 비활성화합니다.
  • thermal.nocrt

새로운 sysctl 매개변수

oops_limit

panic_on_oops 가 설정되지 않은 경우 커널이 패닉해야 하는 커널 oopses 수입니다. 이 값을 0 으로 설정하면 개수 확인이 비활성화됩니다. 이 값을 1 로 설정하면 panic_on_oops=1 설정과 동일한 효과가 있습니다. 기본값은 10000 입니다.

warn_limit

panic_on_warn 이 설정되지 않은 경우 커널이 패닉해야 하는 커널 경고 수입니다. 이 값을 0 으로 설정하면 경고 수를 확인하지 않습니다. 이 값을 1 로 설정하면 panic_on_warn=1 을 설정하는 것과 동일한 효과가 있습니다. 기본값은 0입니다.

kexec_load_limit_panic

이 매개 변수는 크래시 이미지를 사용하여 syscalls kexec_loadkexec_file_load 를 호출할 수 있는 횟수에 대한 제한을 지정합니다. 현재 값보다 제한적인 값으로만 설정할 수 있습니다.

값:

-1
kexec에 대한 무제한 호출입니다. 이 설정은 기본 설정입니다.
N
남아 있는 호출 수입니다.

kexec_load_limit_reboot

kexec_load_limit_panic 과 유사한 기능이지만 일반 이미지의 경우입니다.

numa_balancing_promote_rate_limit_MBps

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

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

업데이트된 sysctl 매개변수

kexec_load_disabled

syscalls kexec_loadkexec_file_load 가 비활성화되었는지 여부를 나타내는 토글입니다. 이 값은 기본적으로 0 (false: kexec_*load enabled)이지만 1 (true: kexec_*load 비활성화)으로 설정할 수 있습니다.

true인 경우 kexec를 더 이상 사용할 수 없으며 토글을 다시 false 로 설정할 수 없습니다. 이렇게 하면 syscall을 비활성화하기 전에 kexec 이미지를 로드할 수 있으므로 시스템이 변경되지 않고 이미지를 설정(및 나중에 사용)할 수 있습니다. 일반적으로 'modules_disabled'_ sysctl과 함께 사용됩니다.

panic_print

패닉이 발생할 때 시스템 정보를 인쇄하기 위한 비트 마스크. 사용자는 다음 비트의 조합을 선택할 수 있습니다.

  • 비트 0 모든 작업 정보를 인쇄
  • 비트 1 인쇄 시스템 메모리 정보
  • 비트 2 인쇄 타이머 정보
  • CONFIG_LOCKDEP 가 있는 경우 비트 3 인쇄 잠금 정보
  • 비트 4 인쇄 ftrace 버퍼
  • 비트 5 버퍼에 모든 인쇄 메시지를 인쇄
  • 비트 6 모든 CPU backtrace 출력 (arch에서 사용 가능한 경우)

sched_energy_aware

EAS(Evolving Aware Scheduling)를 활성화/비활성화합니다. EAS는 실행할 수 있는 플랫폼에서 자동으로 시작됩니다(즉, 비대칭 CPU 토폴로지가 있고 energy model을 사용할 수 있는 플랫폼). 플랫폼이 EAS 요구 사항을 충족하지만 사용하지 않으려면 이 값을 0 으로 변경하십시오. 비EAS 플랫폼에서 쓰기 작업이 실패하고 읽기는 아무 것도 반환하지 않습니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.