Skip to content

Commit

Permalink
tty: no checking of tty_unregister_ldisc
Browse files Browse the repository at this point in the history
tty_unregister_ldisc now returns 0 = success. No need to check the
return value. In fact, the users only warned if an error occured and
didn't do anything useful anyway -- the ldisc module was unloaded in any
case.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Cc: William Hubbs <w.d.hubbs@gmail.com>
Cc: Chris Brannon <chris@the-brannons.com>
Cc: Kirk Reiser <kirk@reisers.ca>
Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>
Cc: Marcel Holtmann <marcel@holtmann.org>
Cc: Johan Hedberg <johan.hedberg@gmail.com>
Cc: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Wolfgang Grandegger <wg@grandegger.com>
Cc: Marc Kleine-Budde <mkl@pengutronix.de>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Andreas Koensgen <ajk@comnets.uni-bremen.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Rodolfo Giometti <giometti@enneenne.com>
Cc: Peter Ujfalusi <peter.ujfalusi@gmail.com>
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Cc: Jaroslav Kysela <perex@perex.cz>
Cc: Takashi Iwai <tiwai@suse.com>
Link: https://lore.kernel.org/r/20210505091928.22010-19-jslaby@suse.cz
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Jiri Slaby authored and gregkh committed May 13, 2021
1 parent 1947520 commit 357a6a8
Show file tree
Hide file tree
Showing 13 changed files with 15 additions and 62 deletions.
3 changes: 1 addition & 2 deletions drivers/accessibility/speakup/spk_ttyio.c
Original file line number Diff line number Diff line change
Expand Up @@ -219,8 +219,7 @@ void spk_ttyio_register_ldisc(void)

void spk_ttyio_unregister_ldisc(void)
{
if (tty_unregister_ldisc(&spk_ttyio_ldisc_ops))
pr_warn("speakup: Couldn't unregister ldisc\n");
tty_unregister_ldisc(&spk_ttyio_ldisc_ops);
}

static int spk_ttyio_out(struct spk_synth *in_synth, const char ch)
Expand Down
7 changes: 1 addition & 6 deletions drivers/bluetooth/hci_ldisc.c
Original file line number Diff line number Diff line change
Expand Up @@ -883,8 +883,6 @@ static int __init hci_uart_init(void)

static void __exit hci_uart_exit(void)
{
int err;

#ifdef CONFIG_BT_HCIUART_H4
h4_deinit();
#endif
Expand Down Expand Up @@ -916,10 +914,7 @@ static void __exit hci_uart_exit(void)
mrvl_deinit();
#endif

/* Release tty registration of line discipline */
err = tty_unregister_ldisc(&hci_uart_ldisc);
if (err)
BT_ERR("Can't unregister HCI line discipline (%d)", err);
tty_unregister_ldisc(&hci_uart_ldisc);
}

module_init(hci_uart_init);
Expand Down
12 changes: 3 additions & 9 deletions drivers/misc/ti-st/st_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -872,9 +872,7 @@ int st_core_init(struct st_data_s **core_data)
st_gdata = kzalloc(sizeof(struct st_data_s), GFP_KERNEL);
if (!st_gdata) {
pr_err("memory allocation failed");
err = tty_unregister_ldisc(&st_ldisc_ops);
if (err)
pr_err("unable to un-register ldisc %ld", err);
tty_unregister_ldisc(&st_ldisc_ops);
err = -ENOMEM;
return err;
}
Expand All @@ -892,9 +890,7 @@ int st_core_init(struct st_data_s **core_data)
if (err) {
pr_err("error during st_ll initialization(%ld)", err);
kfree(st_gdata);
err = tty_unregister_ldisc(&st_ldisc_ops);
if (err)
pr_err("unable to un-register ldisc");
tty_unregister_ldisc(&st_ldisc_ops);
return err;
}

Expand All @@ -919,9 +915,7 @@ void st_core_exit(struct st_data_s *st_gdata)
kfree_skb(st_gdata->rx_skb);
kfree_skb(st_gdata->tx_skb);
/* TTY ldisc cleanup */
err = tty_unregister_ldisc(&st_ldisc_ops);
if (err)
pr_err("unable to un-register ldisc %ld", err);
tty_unregister_ldisc(&st_ldisc_ops);
/* free the global data pointer */
kfree(st_gdata);
}
Expand Down
4 changes: 1 addition & 3 deletions drivers/net/can/slcan.c
Original file line number Diff line number Diff line change
Expand Up @@ -784,9 +784,7 @@ static void __exit slcan_exit(void)
kfree(slcan_devs);
slcan_devs = NULL;

i = tty_unregister_ldisc(&slc_ldisc);
if (i)
printk(KERN_ERR "slcan: can't unregister ldisc (err %d)\n", i);
tty_unregister_ldisc(&slc_ldisc);
}

module_init(slcan_init);
Expand Down
8 changes: 1 addition & 7 deletions drivers/net/hamradio/6pack.c
Original file line number Diff line number Diff line change
Expand Up @@ -774,15 +774,9 @@ static int __init sixpack_init_driver(void)
return status;
}

static const char msg_unregfail[] = KERN_ERR \
"6pack: can't unregister line discipline (err = %d)\n";

static void __exit sixpack_exit_driver(void)
{
int ret;

if ((ret = tty_unregister_ldisc(&sp_ldisc)))
printk(msg_unregfail, ret);
tty_unregister_ldisc(&sp_ldisc);
}

/* encode an AX.25 packet into 6pack */
Expand Down
8 changes: 1 addition & 7 deletions drivers/net/hamradio/mkiss.c
Original file line number Diff line number Diff line change
Expand Up @@ -960,15 +960,9 @@ static int __init mkiss_init_driver(void)
return status;
}

static const char msg_unregfail[] = KERN_ERR \
"mkiss: can't unregister line discipline (err = %d)\n";

static void __exit mkiss_exit_driver(void)
{
int ret;

if ((ret = tty_unregister_ldisc(&ax_ldisc)))
printk(msg_unregfail, ret);
tty_unregister_ldisc(&ax_ldisc);
}

MODULE_AUTHOR("Ralf Baechle DL5RB <ralf@linux-mips.org>");
Expand Down
3 changes: 1 addition & 2 deletions drivers/net/ppp/ppp_async.c
Original file line number Diff line number Diff line change
Expand Up @@ -1016,8 +1016,7 @@ static void async_lcp_peek(struct asyncppp *ap, unsigned char *data,

static void __exit ppp_async_cleanup(void)
{
if (tty_unregister_ldisc(&ppp_ldisc) != 0)
printk(KERN_ERR "failed to unregister PPP line discipline\n");
tty_unregister_ldisc(&ppp_ldisc);
}

module_init(ppp_async_init);
Expand Down
3 changes: 1 addition & 2 deletions drivers/net/ppp/ppp_synctty.c
Original file line number Diff line number Diff line change
Expand Up @@ -727,8 +727,7 @@ ppp_sync_input(struct syncppp *ap, const unsigned char *buf,
static void __exit
ppp_sync_cleanup(void)
{
if (tty_unregister_ldisc(&ppp_sync_ldisc) != 0)
printk(KERN_ERR "failed to unregister Sync PPP line discipline\n");
tty_unregister_ldisc(&ppp_sync_ldisc);
}

module_init(ppp_sync_init);
Expand Down
4 changes: 1 addition & 3 deletions drivers/net/slip/slip.c
Original file line number Diff line number Diff line change
Expand Up @@ -1360,9 +1360,7 @@ static void __exit slip_exit(void)
kfree(slip_devs);
slip_devs = NULL;

i = tty_unregister_ldisc(&sl_ldisc);
if (i != 0)
printk(KERN_ERR "SLIP: can't unregister line discipline (err = %d)\n", i);
tty_unregister_ldisc(&sl_ldisc);
}

module_init(slip_init);
Expand Down
8 changes: 1 addition & 7 deletions drivers/pps/clients/pps-ldisc.c
Original file line number Diff line number Diff line change
Expand Up @@ -129,13 +129,7 @@ static int __init pps_tty_init(void)

static void __exit pps_tty_cleanup(void)
{
int err;

err = tty_unregister_ldisc(&pps_ldisc_ops);
if (err)
pr_err("can't unregister PPS line discipline\n");
else
pr_info("PPS line discipline removed\n");
tty_unregister_ldisc(&pps_ldisc_ops);
}

module_init(pps_tty_init);
Expand Down
5 changes: 1 addition & 4 deletions drivers/tty/n_gsm.c
Original file line number Diff line number Diff line change
Expand Up @@ -3286,10 +3286,7 @@ static int __init gsm_init(void)

static void __exit gsm_exit(void)
{
int status = tty_unregister_ldisc(&tty_ldisc_packet);
if (status != 0)
pr_err("n_gsm: can't unregister line discipline (err = %d)\n",
status);
tty_unregister_ldisc(&tty_ldisc_packet);
tty_unregister_driver(gsm_tty_driver);
put_tty_driver(gsm_tty_driver);
}
Expand Down
8 changes: 1 addition & 7 deletions drivers/tty/n_hdlc.c
Original file line number Diff line number Diff line change
Expand Up @@ -822,13 +822,7 @@ static int __init n_hdlc_init(void)

static void __exit n_hdlc_exit(void)
{
int status = tty_unregister_ldisc(&n_hdlc_ldisc);

if (status)
pr_err("N_HDLC: can't unregister line discipline (err = %d)\n",
status);
else
pr_info("N_HDLC: line discipline unregistered\n");
tty_unregister_ldisc(&n_hdlc_ldisc);
}

module_init(n_hdlc_init);
Expand Down
4 changes: 1 addition & 3 deletions sound/soc/ti/ams-delta.c
Original file line number Diff line number Diff line change
Expand Up @@ -583,9 +583,7 @@ static int ams_delta_remove(struct platform_device *pdev)
{
struct snd_soc_card *card = platform_get_drvdata(pdev);

if (tty_unregister_ldisc(&cx81801_ops) != 0)
dev_warn(&pdev->dev,
"failed to unregister V253 line discipline\n");
tty_unregister_ldisc(&cx81801_ops);

snd_soc_unregister_card(card);
card->dev = NULL;
Expand Down

0 comments on commit 357a6a8

Please sign in to comment.