According to the comment of tty_port_destroy():
When a port was initialized using tty_port_init, one has to destroy
the port by tty_port_destroy();
tty_port_init() is called in gsm_dlci_alloc()
so tty_port_destroy() needs to be called in gsm_dlci_free()
Signed-off-by: Xiaoming Ni <nixiaoming@huawei.com>
Link: https://lore.kernel.org/r/1569317156-45850-1-git-send-email-nixiaoming@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
del_timer_sync(&dlci->t1);
dlci->gsm->dlci[dlci->addr] = NULL;
+ tty_port_destroy(&dlci->port);
kfifo_free(dlci->fifo);
while ((dlci->skb = skb_dequeue(&dlci->skb_list)))
dev_kfree_skb(dlci->skb);