← Documents Documentation/ABI/testing/sysfs-bus-intel_th-devices-msc GitHub 원문 ↗

Linux 6.18.37 · ABI / testing

Intel Trace Hub MSC buffers

Intel TH MSC의 wrapping·동작 모드·page/window 할당·window 전환과 buffer 포화 정책을 설명합니다.

Source pathDocumentation/ABI/testing/sysfs-bus-intel_th-devices-msc
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

Wrapping and sink mode

sysfs-bus-intel_th-devices-msc:1-22

wrap은 순환 기록을 제어하고 mode는 single, multi, ExI, debug 또는 로드된 sink를 선택합니다. 활성 사용자나 tracing이 있으면 모드 변경이 실패합니다.

Pages and windows

sysfs-bus-intel_th-devices-msc:23-46

single은 2의 거듭제곱 page 수 하나, multi는 window별 page 수 목록을 사용합니다. win_switch에 1을 쓰면 multi 모드 window를 전환합니다.

Stop or wrap

sysfs-bus-intel_th-devices-msc:47-54

stop_on_full은 마지막 window가 찼을 때 trace를 멈출지, wrapping해 계속할지 선택합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/wrap
2 Date: June 2015
3 KernelVersion: 4.3
4 Contact: Alexander Shishkin <alexander.shishkin@linux.intel.com>
5 Description: (RW) Configure MSC buffer wrapping. 1 == wrapping enabled.
6
7 What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/mode
8 Date: June 2015
9 KernelVersion: 4.3
10 Contact: Alexander Shishkin <alexander.shishkin@linux.intel.com>
11 Description: (RW) Configure MSC operating mode:
12
13 - "single", for contiguous buffer mode (high-order alloc);
14 - "multi", for multiblock mode;
15 - "ExI", for DCI handler mode;
16 - "debug", for debug mode;
17 - any of the currently loaded buffer sinks.
18
19 If operating mode changes, existing buffer is deallocated,
20 provided there are no active users and tracing is not enabled,
21 otherwise the write will fail.
22
23 What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/nr_pages
24 Date: June 2015
25 KernelVersion: 4.3
26 Contact: Alexander Shishkin <alexander.shishkin@linux.intel.com>
27 Description: (RW) Configure MSC buffer size for "single" or "multi" modes.
28
29 In single mode, this is a single number of pages, has to be
30 power of 2. In multiblock mode, this is a comma-separated list
31 of numbers of pages for each window to be allocated. Number of
32 windows is not limited.
33
34 Writing to this file deallocates existing buffer (provided
35 there are no active users and tracing is not enabled) and then
36 allocates a new one.
37
38 What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/win_switch
39 Date: May 2019
40 KernelVersion: 5.2
41 Contact: Alexander Shishkin <alexander.shishkin@linux.intel.com>
42 Description: (RW) Trigger window switch for the MSC's buffer, in
43 multi-window mode. In "multi" mode, accepts writes of "1", thereby
44 triggering a window switch for the buffer. Returns an error in any
45 other operating mode or attempts to write something other than "1".
46
47 What: /sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/stop_on_full
48 Date: March 2020
49 KernelVersion: 5.7
50 Contact: Alexander Shishkin <alexander.shishkin@linux.intel.com>
51 Description: (RW) Configure whether trace stops when the last available window
52 becomes full (1/y/Y) or wraps around and continues until the next
53 window becomes available again (0/n/N).
54
55

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

MSC buffer wrapping

1-6
항목한국어 전문 번역
What/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/wrap
Date2015년 6월
KernelVersion4.3
ContactAlexander Shishkin <alexander.shishkin@linux.intel.com>
Description(RW) MSC buffer wrapping을 구성합니다. 1이면 wrapping을 활성화합니다.

MSC 동작 모드

7-22
항목한국어 전문 번역
What/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/mode
Date2015년 6월
KernelVersion4.3
ContactAlexander Shishkin <alexander.shishkin@linux.intel.com>
Description(RW) MSC 동작 모드를 구성합니다. 동작 모드를 바꾸면 활성 사용자가 없고 tracing이 활성화되지 않은 경우 기존 buffer를 할당 해제합니다. 그렇지 않으면 쓰기가 실패합니다.
모드의미
single연속 buffer 모드(high-order allocation)
multiMultiblock 모드
ExIDCI handler 모드
debugDebug 모드
loaded buffer sink현재 로드된 buffer sink 가운데 하나

MSC buffer page 수

23-37
항목한국어 전문 번역
What/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/nr_pages
Date2015년 6월
KernelVersion4.3
ContactAlexander Shishkin <alexander.shishkin@linux.intel.com>
Description(RW) "single" 또는 "multi" 모드의 MSC buffer 크기를 구성합니다. Single 모드에서는 하나의 page 수이며 2의 거듭제곱이어야 합니다. Multiblock 모드에서는 할당할 각 window의 page 수를 쉼표로 구분한 목록입니다. Window 수에는 제한이 없습니다. 이 파일에 쓰면 활성 사용자가 없고 tracing이 활성화되지 않은 경우 기존 buffer를 할당 해제한 뒤 새 buffer를 할당합니다.

MSC multi-window 전환

38-46
항목한국어 전문 번역
What/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/win_switch
Date2019년 5월
KernelVersion5.2
ContactAlexander Shishkin <alexander.shishkin@linux.intel.com>
Description(RW) Multi-window 모드에서 MSC buffer의 window 전환을 시작합니다. "multi" 모드에서는 "1" 쓰기를 받아 buffer window를 전환합니다. 다른 동작 모드이거나 "1" 이외의 값을 쓰려고 하면 오류를 반환합니다.

마지막 window 포화 시 동작

47-54
항목한국어 전문 번역
What/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/stop_on_full
Date2020년 3월
KernelVersion5.7
ContactAlexander Shishkin <alexander.shishkin@linux.intel.com>
Description(RW) 마지막 사용 가능 window가 가득 찼을 때 trace를 중지할지(1/y/Y), wrapping해 다음 window를 다시 사용할 수 있을 때까지 계속할지(0/n/N) 구성합니다.