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


Groups > linux.kernel > #1737432

Re: [mainline][DLPAR][Oops] OF: ERROR: Bad of_node_put() on /cpus

From Michael Ellerman <mpe@ellerman.id.au>
Newsgroups linux.kernel
Subject Re: [mainline][DLPAR][Oops] OF: ERROR: Bad of_node_put() on /cpus
Date 2017-09-22 14:00 +0200
Message-ID <usuMF-5Em-5@gated-at.bofh.it> (permalink)
References (1 earlier) <upYnT-2Ux-3@gated-at.bofh.it> <urLwd-2qd-5@gated-at.bofh.it> <urQYX-63Y-53@gated-at.bofh.it> <us6r1-7Dh-13@gated-at.bofh.it> <useHT-4xK-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Tyrel Datwyler <tyreld@linux.vnet.ibm.com> writes:

> On 09/21/2017 02:57 AM, Michael Ellerman wrote:
>> Tyrel Datwyler <tyreld@linux.vnet.ibm.com> writes:
>>> On 09/20/2017 04:39 AM, Michael Ellerman wrote:
>>>> Rob Herring <robh@kernel.org> writes:
>
> <snip>
>
>>>>
>>>> Testing a fix, will report back.
>>>
>>> So, that patch slipped past me. Not only is the parent reference not ours to drop, but
>>> when I went and looked at dlpar_cpu_add() I also noticed that of_node_put() was done on
>>> the parent prior to the call to dlpar_attach_node(). With the addition of "parent" to the
>>> dlpar_attach_node() parameter list dlpar_cpu_add() needs to be fixed up to hold the
>>> "parent" reference until after dlpar_attach_node() returns.
>> 
>> Yep. I wrote the same patch :)
>> 
>> Rob asked me to test it, which I did, but /cpus starts out with an
>> elevated ref count, so you have to do ~30 (on my system) DLPAR removes
>> to hit the bug, which I didn't do.
>
> Yeah, there are a lot of things that grab references to /cpus. So, I had a good idea that
> I needed to loop a few times adding and removing multiple cpus to trigger the issue. Its
> also obvious when using those OF trace points I wrote a while back that refcount for /cpus
> is dropping off uncharacteristically in response to symmetrical adds/removes of cpus. I
> saw your note about getting that patchset resubmitted. I'll try and get that queued back
> up soon.

Thanks, it'd be great to get it in. I applied it from the list and used
it for testing this.

cheers

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


Thread

Re: [mainline][DLPAR][Oops] OF: ERROR: Bad of_node_put() on /cpus Rob Herring <robh@kernel.org> - 2017-09-15 15:00 +0200
  Re: [mainline][DLPAR][Oops] OF: ERROR: Bad of_node_put() on /cpus Abdul Haleem <abdhalee@linux.vnet.ibm.com> - 2017-09-19 15:40 +0200
  Re: [mainline][DLPAR][Oops] OF: ERROR: Bad of_node_put() on /cpus Michael Ellerman <mpe@ellerman.id.au> - 2017-09-20 13:40 +0200
    Re: [mainline][DLPAR][Oops] OF: ERROR: Bad of_node_put() on /cpus Tyrel Datwyler <tyreld@linux.vnet.ibm.com> - 2017-09-20 19:30 +0200
      Re: [mainline][DLPAR][Oops] OF: ERROR: Bad of_node_put() on /cpus Michael Ellerman <mpe@ellerman.id.au> - 2017-09-21 12:00 +0200
        Re: [mainline][DLPAR][Oops] OF: ERROR: Bad of_node_put() on /cpus Tyrel Datwyler <tyreld@linux.vnet.ibm.com> - 2017-09-21 20:50 +0200
          Re: [mainline][DLPAR][Oops] OF: ERROR: Bad of_node_put() on /cpus Michael Ellerman <mpe@ellerman.id.au> - 2017-09-22 14:00 +0200

csiph-web