lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 2 Nov 2008 19:17:37 +0200
From:	Pekka Paalanen <>
To:	"Frédéric Weisbecker" <>
Cc:	"Steven Rostedt" <>,
	linux-kernel <>,
	"Ingo Molnar" <>
Subject: Re: Tracing framework regressions in 2.6.28-rc2

On Sun, 2 Nov 2008 17:52:02 +0100
"Frédéric Weisbecker" <> wrote:

> Hi Pekka!
> 2008/11/2 Pekka Paalanen <>:
> > Hi all,
> >
> > I finally had the time to check how mmiotrace works in 2.6.28-rc2.
> > On the first try I didn't find any mmiotrace problems, I traced the
> > Nouveau DRM driver just fine, but the file /debug/tracing/current_tracer
> > has started to misbehave.
> >
> > Now, whatever I echo to current_tracer, I get EINVAL.
> > What's more confusing, if I do
> > echo mmiotrace > /debug/tracing/current_tracer
> > then I see the EINVAL error *and* mmiotrace is activated!
> >
> > The problem is with newlines, with 'echo -n' it works as it should.
> >
> > I'm starting to think the patch itself is fine, but it exposes an
> > assumption in the write fop: a single write call contains all the
> > data. I suspect there are actually two write calls in case of 'echo':
> > one with 'mmiotrace' and one with '\n'. I don't see how else I could
> > get the behaviour I get.
> A patch has been applied for this in the mainline, the issue will be
> fixed for rc3:

Oh wow, that was a simple fix. Thanks for pointing it out!
Although it still leaves, AFAIK, the issue of multiple write calls,
but I guess we can still live as we used to.

> > Another issue is the disappeared 'none' pseudo-tracer, which seems
> > to be replaced with the 'nop' real tracer. Is using 'nop' now equivalent
> > to the previous 'none' tracer?
> Yes. A nop tracer has been released to have a kind of pattern to write
> new tracers, and to have a tracer that does
> nothing but is able to show user marks for example.
> Since it does nothing, we replaced the none tracer by this one.
> > I mean, when the 'nop' tracer is current, are all tracing calls no-ops and
> > nothing will ever get into the ring buffer?
> > I have to update the mmiotrace documentation about disabling tracing.
> Hhm not really, you can receive pseudo entries like user marks. But
> you can disable all the tracing by setting 0 to
> tracing_enabled.

I thought the original purpose of /debug/tracing/tracing_enabled flag was
to pause tracing, and not issue a full shutdown. And it still is not a
full tracing framework shutdown. I know mmiotrace did not bother to
implement this behaviour, but just tears everything down. I don't know
about the other tracers.

I'm just thinking, that having a proper 'none' pseudo-tracer would allow
to release the huge ring buffers, and allocate them only when any other
tracer becomes current. In my original mail I asked about the ring buffer

Pekka Paalanen
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

Powered by blists - more mailing lists