>
> But I don't see any warning when I run it with --stdio.  Could you
> show me the format file of sys_enter_mmap?

I found the problem. The kernel version I was testing on fails to
initialize some fields in the tracepoint structure, so my format
looked like:

# cat /sys/kernel/debug/tracing/events/syscalls/sys_enter_mmap/format
name: sys_enter_mmap
ID: 144
format:
        field:unsigned short common_type;       offset:0;
size:2; signed:0;
        field:unsigned char common_flags;       offset:2;
size:1; signed:0;
        field:unsigned char common_preempt_count;       offset:3;
 size:1; signed:0;
        field:int common_pid;   offset:4;       size:4; signed:1;


print fmt: "addr: 0x%08lx, len: 0x%08lx, prot: 0x%08lx, flags:
0x%08lx, fd: 0x%08lx, off: 0x%08lx", ((unsigned long)(REC->addr)),
((unsigned long)(REC->len)), ((unsigned long)(REC->prot)), ((unsigned
long)(REC->flags)), ((unsigned long)(REC->fd)), ((unsigned
long)(REC->off))

rather than:

name: sys_enter_mmap
ID: 111
format:
        field:unsigned short common_type;       offset:0;
size:2; signed:0;
        field:unsigned char common_flags;       offset:2;
size:1; signed:0;
        field:unsigned char common_preempt_count;       offset:3;
 size:1; signed:0;
        field:int common_pid;   offset:4;       size:4; signed:1;

        field:int nr;   offset:8;       size:4; signed:1;
        field:unsigned long addr;       offset:16;      size:8; signed:0;
        field:unsigned long len;        offset:24;      size:8; signed:0;
        field:unsigned long prot;       offset:32;      size:8; signed:0;
        field:unsigned long flags;      offset:40;      size:8; signed:0;
        field:unsigned long fd; offset:48;      size:8; signed:0;
        field:unsigned long off;        offset:56;      size:8; signed:0;

print fmt: "addr: 0x%08lx, len: 0x%08lx, prot: 0x%08lx, flags:
0x%08lx, fd: 0x%08lx, off: 0x%08lx", ((unsigned long)(REC->addr)),
((unsigned long)(REC->len)), ((unsigned long)(REC->prot)), ((unsigned
long)(REC->flags)), ((unsigned long)(REC->fd)), ((unsigned
long)(REC->off))


Upstream is all good. It was my oversight not testing there first.

Thanks,
David

Reply via email to