Thread (138 messages) 138 messages, 17 authors, 2022-09-08

Re: [RFC PATCH 00/30] Code tagging framework and applications

From: Kent Overstreet <kent.overstreet@linux.dev>
Date: 2022-09-05 23:51:29
Also in: io-uring, linux-arch, linux-bcache, linux-iommu, linux-mm, lkml, xen-devel

On Mon, Sep 05, 2022 at 06:16:50PM -0400, Steven Rostedt wrote:
On Mon, 5 Sep 2022 16:42:29 -0400
Kent Overstreet [off-list ref] wrote:
quoted
quoted
Haven't tried that yet but will do. Thanks for the reference code!  
Is it really worth the effort of benchmarking tracing API overhead here?

The main cost of a tracing based approach is going to to be the data structure
for remembering outstanding allocations so that free events can be matched to
the appropriate callsite. Regardless of whether it's done with BFP or by
attaching to the tracepoints directly, that's going to be the main overhead.
The point I was making here is that you do not need your own hooking
mechanism. You can get the information directly by attaching to the
tracepoint.
quoted
quoted
static void my_callback(void *data, unsigned long call_site,
                        const void *ptr, struct kmem_cache *s,
                        size_t bytes_req, size_t bytes_alloc,
                        gfp_t gfp_flags)
{
        struct my_data_struct *my_data = data;

        { do whatever }
}
The "do whatever" is anything you want to do.

Or is the data structure you create with this approach going to be too much
overhead? How hard is it for a hash or binary search lookup?
If you don't think it's hard, go ahead and show us.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help