[ltt-dev] syscall id limited to 16 bits
Matthieu CASTET
matthieu.castet at parrot.com
Fri Aug 14 08:06:28 EDT 2009
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.
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));
+}
More information about the lttng-dev
mailing list