Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1625792

Re: [PATCH] of: introduce event tracepoints for dynamic device_node lifecyle

From "Oliver O'Halloran" <oohall@gmail.com>
Newsgroups linux.kernel
Subject Re: [PATCH] of: introduce event tracepoints for dynamic device_node lifecyle
Date 2017-04-19 04:40 +0200
Message-ID <txNHc-63c-7@gated-at.bofh.it> (permalink)
References <txplv-7EF-1@gated-at.bofh.it> <txEud-8r4-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Wed, Apr 19, 2017 at 2:46 AM, Rob Herring <robh+dt@kernel.org> wrote:
> On Mon, Apr 17, 2017 at 7:32 PM, Tyrel Datwyler
> <tyreld@linux.vnet.ibm.com> wrote:
>> This patch introduces event tracepoints for tracking a device_nodes
>> reference cycle as well as reconfig notifications generated in response
>> to node/property manipulations.
>>
>> With the recent upstreaming of the refcount API several device_node
>> underflows and leaks have come to my attention in the pseries (DLPAR) dynamic
>> logical partitioning code (ie. POWER speak for hotplugging virtual and physcial
>> resources at runtime such as cpus or IOAs). These tracepoints provide a
>> easy and quick mechanism for validating the reference counting of
>> device_nodes during their lifetime.
>
> Not really relevant for this patch, but since you are looking at
> pseries and refcounting, the refcounting largely exists for pseries.
> It's also hard to get right as this type of fix is fairly common. It's
> now used for overlays, but we really probably only need to refcount
> the overlays or changesets as a whole, not at a node level. If you
> have any thoughts on how a different model of refcounting could work
> for pseries, I'd like to discuss it.

One idea I've been kicking around is differentiating short and long
term references to a node. I figure most leaks are due to a missing
of_node_put() within a stack frame so it might be possible to use the
ftrace infrastructure to detect and emit warnings if a short term
reference is leaked. Long term references are slightly harder to deal
with, but they're less common so we can add more detailed reference
tracking there (devm_of_get_node?).

Oliver

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH] of: introduce event tracepoints for dynamic device_node lifecyle Tyrel Datwyler <tyreld@linux.vnet.ibm.com> - 2017-04-18 02:40 +0200
  Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Tyrel Datwyler <tyreld@linux.vnet.ibm.com> - 2017-04-18 02:40 +0200
  Re: [PATCH] of: introduce event tracepoints for dynamic device_node lifecyle Rob Herring <robh+dt@kernel.org> - 2017-04-18 18:50 +0200
    Re: [PATCH] of: introduce event tracepoints for dynamic device_node lifecyle "Oliver O'Halloran" <oohall@gmail.com> - 2017-04-19 04:40 +0200
      Re: [PATCH] of: introduce event tracepoints for dynamic device_node lifecyle Michael Ellerman <mpe@ellerman.id.au> - 2017-04-19 12:20 +0200
        Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Tyrel Datwyler <tyreld@linux.vnet.ibm.com> - 2017-04-19 23:20 +0200
  Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-19 02:10 +0200
    Re: [PATCH] of: introduce event tracepoints for dynamic device_node lifecyle Michael Ellerman <mpe@ellerman.id.au> - 2017-04-19 03:40 +0200
      Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-19 04:40 +0200
        Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Tyrel Datwyler <tyreld@linux.vnet.ibm.com> - 2017-04-19 20:40 +0200
      Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Tyrel Datwyler <turtle.in.the.kernel@gmail.com> - 2017-04-20 01:30 +0200
        Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Steven Rostedt <rostedt@goodmis.org> - 2017-04-20 04:40 +0200
          Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-20 06:50 +0200
          Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Tyrel Datwyler <turtle.in.the.kernel@gmail.com> - 2017-04-20 07:30 +0200
            Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Steven Rostedt <rostedt@goodmis.org> - 2017-04-20 15:40 +0200
        Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-20 06:50 +0200
          Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-20 07:20 +0200
          Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Tyrel Datwyler <turtle.in.the.kernel@gmail.com> - 2017-04-20 19:00 +0200
            Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-20 21:40 +0200
              Re: [PATCH] of: introduce event tracepoints for dynamic device_node lifecyle Michael Ellerman <mpe@ellerman.id.au> - 2017-04-21 04:00 +0200
    Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-19 03:50 +0200
      Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Steven Rostedt <rostedt@goodmis.org> - 2017-04-19 05:00 +0200
        Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Tyrel Datwyler <tyreld@linux.vnet.ibm.com> - 2017-04-19 20:50 +0200
          Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-20 04:40 +0200
            Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-20 12:50 +0200
    Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Steven Rostedt <rostedt@goodmis.org> - 2017-04-19 04:50 +0200
      Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-19 05:20 +0200
  Re: [PATCH] of: introduce event tracepoints for dynamic device_node  lifecyle Frank Rowand <frowand.list@gmail.com> - 2017-04-19 19:50 +0200

csiph-web