proc eventos não chegam através do conector netlink (forkstat)

0

Kernel 3.14 stable-79.

Desejo rastrear fork (2) e eventos relacionados usando forkstat . Para alguns razão nenhum evento chega sobre o soquete. strace mostra que trava indefinidamente em recv(2) :

fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 5), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb775d000
write(1, "Time     Event  PID  Info  Durat"..., 44Time     Event  PID  Info  Duration Process) = 44
sched_get_priority_max(SCHED_FIFO)      = 99
sched_setscheduler(17458, SCHED_FIFO, { 99 }) = 0
recv(3,

Em outra caixa com um kernel 4.4-ish, isso funciona muito bem.

O que está faltando aqui? Faz com que o conector exija alguns sysctl ?

    
por phg 03.01.2017 / 11:09

1 resposta

0

Foi a configuração. Acontece que CONFIG_PROC_EVENTS é um pré-requisito dessas coisas, mas não definido. Além disso, tive que trocar CONFIG_CONNECTOR de módulo para compilado em. Assim, a exigir a mudança para a configuração parece da seguinte forma:

-CONFIG_CONNECTOR=m
+# forkstat requires this
+CONFIG_CONNECTOR=y
+CONFIG_PROC_EVENTS=y
    
por 03.01.2017 / 13:36