Thread (9 messages) 9 messages, 4 authors, 2016-03-22

Re: [PATCH] TTY: n_gsm, fix false positive WARN_ON

From: Dmitry Vyukov <dvyukov@google.com>
Date: 2016-02-28 16:16:38
Also in: lkml

On Wed, Nov 25, 2015 at 11:32 AM, xinhui [off-list ref] wrote:
hi, Jiri

On 2015/11/25 17:56, Jiri Slaby wrote:
quoted
Hi,

On 11/25/2015, 07:32 AM, xinhui wrote:
quoted
     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. :)
quoted
quoted
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 :)
quoted
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?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help