From mboxrd@z Thu Jan 1 00:00:00 1970 From: compudj@krystal.dyndns.org (Mathieu Desnoyers) Date: Mon, 24 Aug 2009 10:35:08 -0400 Subject: [ltt-dev] syscall id limited to 16 bits In-Reply-To: <4A855344.106@parrot.com> References: <4A855344.106@parrot.com> Message-ID: <20090824143508.GC21110@Krystal> * Matthieu CASTET (matthieu.castet at parrot.com) wrote: > Hi, > > in the ltt patch used for 2.6.27, syscall trace only report the syscall > id on 16 bits [1]. > > This is wrong. For example on arm, there are private arch syscall in the > range 0xf0000-0xfffff (for example set_tls). > For this syscall the kernel.syscall_entry trace get the id truncated. > Patches would be welcome ;) Mathieu > > Matthieu > > > [1] look at the (unsigned short) cast on id > +notrace void probe_syscall_entry(struct pt_regs *regs, long id) > +{ > + struct marker *marker; > + struct serialize_long_short data; > + > + data.f1 = instruction_pointer(regs); > + data.f2 = (unsigned short)id; > + > + marker = &GET_MARKER(kernel, syscall_entry); > + ltt_specialized_trace(marker, marker->single.probe_private, > + &data, serialize_sizeof(data), sizeof(long)); > +} > > > _______________________________________________ > ltt-dev mailing list > ltt-dev at lists.casi.polymtl.ca > http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev > -- Mathieu Desnoyers OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68