Re: [PATCH] tty: fix data race in n_tty_receive_buf_common

From: Kohli, Gaurav
Date: Wed Jan 17 2018 - 08:26:02 EST


On 1/6/2018 1:20 PM, Kohli, Gaurav wrote:

On 1/6/2018 2:35 AM, Alan Cox wrote:
On Sat, 6 Jan 2018 01:54:36 +0530
"Kohli, Gaurav" <gkohli@xxxxxxxxxxxxxx> wrote:
Hi Alan,
Sorry correcting the typo here:
+retval =Â tty_ldisc_lock(tty, 5 * HZ);
+if (retval)
+ÂÂÂÂ ÂÂÂ goto err_release_lock;
tty->port->itty = tty;
/*
* Structures all installed ... call the ldisc open routines.
* If we fail here just call release_tty to clean up. No need
* to decrement the use counts, as release_tty doesn't care.
*/
retval = tty_ldisc_setup(tty, tty->link);
 Â Â if (retval)
 Â Â Â goto err_release_tty;
tty_ldisc_unlock(tty);
err_release_tty:
tty_info_ratelimited(tty, "ldisc open failed (%d), clearing slot %d\n",
 Â retval, idx);
+err_release_lock;
+tty_unlock(tty);
+release_tty(tty, idx);
+tty_ldisc_unlock(tty);
+return ERR_PTR(retval);
Thanks - can you give that a testing since for some reason you seem to be
the only system able to hit this and confirm that it's now working
properly. Then I'll push it upstream
And thanks for doing all the debug work to find this and identify what
was going on.
Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Thanks Alan for your support, yes we will try to reproduce and get back
to you.
Ideally it take 2-3 days for issue reproduction, but yes it is
consistently reproducible.
Regards
Gaurav

Hi Alan,
Sorry for the delayed response, as i was waiting for test results.
I have uploaded the new patch v1 as per your suggestions and result looks good.

Thanks
Gaurav

--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project.