[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACT4Y+bowOCaG+r5tCR8SgNWXf0_EKwRcO9Th6ufJmPN6dU7Rw@mail.gmail.com>
Date: Tue, 1 Mar 2016 10:03:30 +0100
From: Dmitry Vyukov <dvyukov@...gle.com>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: xinhui <xinhui@...ux.vnet.ibm.com>, Jiri Slaby <jslaby@...e.cz>,
LKML <linux-kernel@...r.kernel.org>,
Alan Cox <alan@...ux.intel.com>,
stable <stable@...r.kernel.org>
Subject: Re: [PATCH] TTY: n_gsm, fix false positive WARN_ON
On Tue, Mar 1, 2016 at 6:01 AM, Greg Kroah-Hartman
<gregkh@...uxfoundation.org> wrote:
> On Sun, Feb 28, 2016 at 05:16:15PM +0100, Dmitry Vyukov wrote:
>> On Wed, Nov 25, 2015 at 11:32 AM, xinhui <xinhui@...ux.vnet.ibm.com> wrote:
>> > hi, Jiri
>> >
>> > On 2015/11/25 17:56, Jiri Slaby wrote:
>> >>
>> >> Hi,
>> >>
>> >> On 11/25/2015, 07:32 AM, xinhui wrote:
>> >>>
>> >>> This warning should blame on commit 5a640967 ("tty/n_gsm.c: fix a
>> >>> memory leak in gsmld_open()").
>> >>
>> >>
>> >> Oh, yes, I messed up the "Fixes" line then. It should write:
>> >> Fixes: 5a640967 ("tty/n_gsm.c: fix a memory leak in gsmld_open()")
>> >>
>> > that's Okay. :)
>> >
>> >>> I have one confusion. As there is field gsm->num to store the index of
>> >>> gsm_mux[]. so in gsm_cleanup_mux(), why we still use for-loop to find
>> >>> this mux?
>> >>>
>> >>> In error handle path, for example, the call trace in this patch, as we
>> >>> failed to activate it and the
>> >>> gsm->num is invalid(and the value is 0). we can just modify the codes
>> >>> like below:
>> >>>
>> >>> if(gsm_mux[gsm->num] == gsm)
>> >>> ....other work
>> >>> else
>> >>> return;
>> >>>
>> >>> I think it would work, and the logic is correct. Or I just miss
>> >>> something important?
>> >>
>> >>
>> >> Yup, it looks like a cleanup. Could you prepare a separate patch for that?
>> >>
>> > yes, I will do that :)
>> >
>> >> Something like this:
>> >> /* open failed before registering => nothing to do */
>> >> if (gsm_mux[gsm->num] != gsm)
>> >> return;
>> >> spin_lock(&gsm_mux_lock);
>> >> gsm_mux[gsm->num] = NULL;
>> >> spin_unlock(&gsm_mux_lock);
>> >>
>> > looks pretty good, thanks.
>>
>>
>> This is still not merged and fires regularly for me. Can we please merge it?
>
> merge what? I don't see any patch here or in my queue for this :(
"[PATCH] TTY: n_gsm, fix false positive WARN_ON" from Jiri Slaby:
https://lkml.org/lkml/2015/11/24/600
FWIW I have it in my tree for 3 months. Warnings have gone. No issues noticed.
Powered by blists - more mailing lists