ftrace

커널 공간에서 파일 권한/액세스 결정은 언제(그리고 어떻게) 이루어 집니까?
ftrace

커널 공간에서 파일 권한/액세스 결정은 언제(그리고 어떻게) 이루어 집니까?

나는 Linux 권한이 작동하는 방식(기존 Unix DAC 권한 및 표시 방식, 프로세스 관련 보안 컨텍스트(예: 자격 증명 구조, 기능 등), LSM 후크 등)에 대해 상대적으로 잘 이해하고 있습니다. (E)UID/E(GID) 등에 대한 링크 내가 이해하지 못하고 커널 코드에서 찾기 어려운 점은 ftrace(pass trace-cmd)를 사용하여 이러한 검사가 실제로 커널 공간에서 (아마도) 수행되는 때입니다.어느 지점실제로 액세스 결정이 내려집니다. 상세 설명: /dir루트 chmod가 소유한 디...

Admin

Linux에서 Ftrace를 사용하여 예약 지연을 얻는 방법은 무엇입니까?
ftrace

Linux에서 Ftrace를 사용하여 예약 지연을 얻는 방법은 무엇입니까?

ftrace는 활성화되어 있지만 .ftrace는 활성화되지 않은 임베디드 Linux(kernel-5.10.24) 시스템을 개발 중입니다 perf. 시스템에서 추적을 확인한 결과 다음과 같은 정보를 얻었습니다. # ls /sys/kernel/tracing/events/sched/ -l total 0 -rw-r--r-- 1 root root 0 Jan 1 1970 enable -rw-r--r-- 1 root root 0 Jan 1 ...

Admin

ftrace와 blktrace 추적점의 차이점은 무엇입니까?
ftrace

ftrace와 blktrace 추적점의 차이점은 무엇입니까?

예를 들어 기본적으로 IO 완료 추적 지점인 /sys/kernel/debug/tracing/events/block/block_bio_completeand가 있다고 생각합니다 . 이를 사용하면 다음과 같은 줄을 볼 수 있습니다.block_rq_completeftracesudo blktrace -d /dev/sdb1 -o - | blkparse -i - 8,33 1 3 0.001086286 0 C RA 1158137880 + 8 [0] ...

Admin

사용자 정의 프로브 기능에서 추적된 이벤트의 CPU 번호를 얻는 방법은 무엇입니까?
ftrace

사용자 정의 프로브 기능에서 추적된 이벤트의 CPU 번호를 얻는 방법은 무엇입니까?

이벤트 추적을 위한 프로브 기능을 등록하기 위해 커널 모듈을 사용하고 있습니다. 예를 들어, sched_kthread_stop 이벤트를 추적하는 프로브 함수는 다음과 같습니다. void handle_kthread_stop(void *data, struct task_struct *t) 다음을 사용하여 등록합니다. tracepoint_probe_register() 이제 추적 버퍼의 실제 추적은 다음과 같습니다. bash-9002 [000] d..5 2145.303974: sched_wak...

Admin

다중 추적 이벤트 리더
ftrace

다중 추적 이벤트 리더

질문 Linux에서 이벤트를 추적하기 위한 추적 파이프라인이 동시 판독기를 허용합니까? 문맥 RAS일부 벤치마크를 실행하는 동안 하위 시스템에서 추적 정보를 얻으려고 합니다 . 이 하위 시스템은 추적 이벤트를 사용하여 하드웨어 오류 이벤트를 보고합니다. 이벤트를 가져오는 데 사용하는 도구RAS 데몬도구. 나는 이 도구가 tracing_pipe_raw각 CPU에서 FIFO를 구독한다는 것을 알고 있습니다. 또한 벤치마크는 성능 이벤트를 구독합니다.나는 믿는다, 또한 동일한 채널을 통해 광고합니...

Admin

/proc/pid/stat의 Linux 작업 상태가 예약된 이벤트의 Ftrace 출력과 다릅니다.
ftrace

/proc/pid/stat의 Linux 작업 상태가 예약된 이벤트의 Ftrace 출력과 다릅니다.

작업이 D/S/R 상태(무중단/중단 가능/실행 중)에 들어가는 지점을 이해하기 위해 코드 조각의 흐름을 추적하려고 합니다. 각 상태가 무엇을 의미하는지 이해하지만, 연습을 실행하면 혼란스러운 결과가 나타났고 지금까지는 그 이유를 알 수 없었습니다. 내가 실행 중인 코드 조각: void foo() { pthread_setname_np(pthread_self(), "lock_func/1"); while(quit == false) { for(int64_t idx=...

Admin

debugfs에서 제어 ftrace를 작성하는 방법은 무엇입니까?
ftrace

debugfs에서 제어 ftrace를 작성하는 방법은 무엇입니까?

Ftrace는 디버그 fs 파일을 작동하여 제어됩니다. 그런데 이것이 어떻게 가능합니까? 커널은 이 파일의 쓰기를 어떻게 알고 필요한 작업을 시작합니까? 예를 들어, tracing_on에 1을 쓰면 커널이 추적을 켭니다. 특별한 파일 구조나 debugfs에 대한 커널 구독 변경과 관련이 있습니까? 아니면 분명한 것이 빠졌습니까? ...

Admin

시스템 호출 이벤트 추적 출력 형식을 ftrace로 변경
ftrace

시스템 호출 이벤트 추적 출력 형식을 ftrace로 변경

sys_enter_openat 시스템 호출에 대해 ftrace 이벤트 추적을 활성화했습니다. events/syscalls/sys_enter_openat/format에 제공된 해당 출력 형식은 다음과 같습니다. print fmt: "dfd: 0x%08lx, filename: 0x%08lx, flags: 0x%08lx, mode: 0x%08lx", ((unsigned long)(REC->dfd)), ((unsigned long)(REC->filename)), ((unsigned long)(R...

Admin

ftrace의 Trace_stat 폴더에 있는 함수 폴더
ftrace

ftrace의 Trace_stat 폴더에 있는 함수 폴더

저는 ftrace를 배우고 있는데 다음 링크에서 "function_profile_enabled" 파일을 사용하여 함수 프로파일링을 활성화할 수 있다는 것을 배웠습니다. mount -t tracefs nodev /sys/kernel/tracing cd /sys/kernel/tracing echo 1 > function_profile_enabled echo "function" > current_tracer https://www.kernel.org/doc/html/v4.18/trace/ft...

Admin

function_trace 커널 모듈 인터럽트에 ftrace를 사용하는 방법은 무엇입니까?
ftrace

function_trace 커널 모듈 인터럽트에 ftrace를 사용하는 방법은 무엇입니까?

ftrace 커널 디버깅 옵션이 활성화된 Debian 커널을 실행하는 2개 코어(1.2GHz)가 있는 Banana Pi Arm 장치가 있습니다. 커널 모듈 기능에 소요되는 시간을 확인하고 싶습니다. 이 함수의 형태는 static irq_handler_t vtgpio_irq_handler(unsigned int irq, void *dev_id, struct pt_regs *regs); 모듈을 로드한 후 디버그 파일 시스템에서 이름이 필터로 노출된 것을 볼 수 있습니다. 모든 기능을 추적하고 있습니...

Admin

커널/사용자 공간 실행 추적의 타임라인 보기를 표시하는 도구
ftrace

커널/사용자 공간 실행 추적의 타임라인 보기를 표시하는 도구

ftrace 도구를 사용했습니다.추적 명령스케줄링 추적점 및 시스템 호출 추적점을 기록하는 데 사용됩니다. 다음을 사용하여 시각적으로 검사할 수 있습니다.커널 샤크그래픽 사용자 인터페이스 프로그램. 아래 스크린샷과 같이 코어별 타임라인과 작업별 타임라인을 표시합니다. 인터럽트가 발생하는 시기, 스케줄러가 호출되는 시기, 시스템 호출이 이루어지는 시기, 반환되는 시기를 확인할 수 있습니다. 그러나 시스템 호출을 할 때 kernelshark는 사용자 공간에서 실행되는 작업과 커널 공간에서 실행되는 ...

Admin

PMU 및 추적 지점
ftrace

PMU 및 추적 지점

추적점 생성 메커니즘에 대한 정보를 찾고 있습니다. 이 주제로 시작하세요perf_events 목록의 커널 PMU 이벤트는 무엇입니까?그리고 이 블로그브렌든 레그추적점이 활성화될 때 호출되는 커널 코드의 일부 매크로라는 것을 알고 있지만 추적점이 PMU에 어떻게 연결되는지(두 링크 모두에서 언급한 대로) 약간 혼란스럽습니다. ...

Admin

ftrace를 사용하여 멀티 코어 플랫폼의 특정 PID에 대한 기능 분석 수행
ftrace

ftrace를 사용하여 멀티 코어 플랫폼의 특정 PID에 대한 기능 분석 수행

위에서 언급한 대로 ftrace를 사용하여 function_profile_enabled를 기반으로 함수 프로파일링을 수행하려고 합니다.여기. 동일한 링크에서 언급한 대로 set_ftrace_pid를 사용하여 특정 PID에 대한 함수 호출만 캡처하고 싶습니다. 그러나 PID를 설정하고 function_profile_enabled를 수행하면 여전히 모든 CPU에서 함수 호출이 캡처됩니다. 따라서 /sys/kernel/debug/tracing/trace_stat/function*에서 원치 않는 CPU를 필...

Admin