[Cluster-devel] Re: GFS2: Add tracepoints
Christoph Hellwig
hch at infradead.org
Sat May 30 10:25:21 UTC 2009
On Fri, May 29, 2009 at 08:50:10PM +0100, Steven Whitehouse wrote:
> > This is extremly inefficient. We'd be much better off just storing
> > the dev_t and introducing a __trace_bdevname to expand a bdevname
> > into the tracer buffer. It's been on my todo list for a while and
> > I'll look into it next week unless you beat me to it.
> >
> Ok. I wasn't sure how efficient bdevname() was vs. copying the name
> around, but that sounds like a good plan if its not too expensive an
> operation.
Ok, I finally started looking into and it's not that easy. bdevname
actually requires a struct block_device * which we can't safely store
and __bdevname is just an obsfucated way to print major and minor.
I'd still hate copying the whole device name as it's rather inefficient,
on the other hand it's quite a bit nicer than the raw major/minor
output.
At this point I think I would prefer the raw manjor/minor output as
done in the block trace even patches. But what I think is most
important is that we all (block trace events, all filesystem trace
events (current xfs + gfs2 + ext4, and possibly vfs/vm trace points)
agree on one single format so that we can do global filtering over
all of them.
More information about the Cluster-devel
mailing list