Hi Alan,

Can you make that code available otherwise it's impossible to see what the problem might be.


 
https://source.codeaurora.org/quic/la/kernel/msm-4.9/tree/drivers/tty/serial?h=msm-4.9
 As discussed , there not seems a problem as we are getting print request even when port seems to closed.


tty_ldisc_lock(tty, 5 * HZ);
 tty_ldisc_setup(tty);
 tty_ldisc_unlock(tty)

But in above lock,  there is a chance when flush_to_ldisc will occur first and acquired a lock in
tty_ldisc_ref itself.
So this may fail, I am not much sure here, Please correct me, If i am missing something here.
So can not we simply return from flush_to_ldisc ,when we know disc_data is not valid like
we are doing for tty and ldisc already?

if (tty->disc_data == NULL) {
                tty_ldisc_deref(disc);
                return;
        }






Regards
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.

Reply via email to