Re: [GIT PULL] tracing: make signal tracepoints more useful

From: Ingo Molnar
Date: Tue Jan 17 2012 - 05:02:47 EST



* Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> On Mon, 2012-01-16 at 13:53 +0100, Ingo Molnar wrote:
> > * Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> > Say if an app relies on the smaller data structure, it sure
> > might get surprised by the kernel writing a wider record ...
>
> Ingo,
>
> The kernel does this all the time. We have syscalls that may
> extend the data structure. [...]

That is not true *AT ALL* in such an unqualified manner. Steve,
stop being stupid.

The kernel syscall ABI may indeed sometimes expand *INPUT*
structures (if via some mechanism it's possible to make sure
that old ABI uses don't cause the kernel to read undefined
data), but the trace events are *OUTPUT* structures.

The kernel ABI never ever expands output structures, unless the
ABI itself is expanded in a safe way that makes it impossible
for old apps to trigger the new output logic, i.e. which makes
sure that all old apps work as well. We never ever write beyond
an already existing 40 byte ABI structure and corrupt the 41th
byte for an existing app!

In this case we simply don't know whether such an app exists. It
might be OK to do it, or it might be not so ok.

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/