Error de rendimiento: no se pudo realizar mmap con 25 (ioctl inadecuado para el dispositivo)

Error de rendimiento: no se pudo realizar mmap con 25 (ioctl inadecuado para el dispositivo)

Estoy intentando utilizar perf en un sistema con kernel Linux 3.8. Cuando utilicé el siguiente comando, ocurre un error:

$ perf record -c 100000 -e '{cycles,instructions}:S' ./nonloop 1000
failed to mmap with 25 (Inappropriate ioctl for device)
nonloop: Terminated

¿Alguien podría decirme cómo solucionar el problema?

Respuesta1

Parece que: S es el problema.

registro de rendimiento -c 100000 -eciclos, instrucciones ./somebin

funciona bien. Qué es S ?

Veo un error similar ejecutándose:

sudo perf record -esyscalls:sys_enter -p $(pidof some_bin)

No se pudo realizar el mapeo con 22 (argumento no válido)

donde la lista de rendimiento sugiere que syscalls:sys_enter debería estar disponible.

información relacionada