tty: drop put_tty_driver
authorJiri Slaby <jslaby@suse.cz>
Fri, 23 Jul 2021 07:43:16 +0000 (09:43 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 27 Jul 2021 10:17:21 +0000 (12:17 +0200)
put_tty_driver() is an alias for tty_driver_kref_put(). There is no need
for two exported identical functions, therefore switch all users of
old put_tty_driver() to new tty_driver_kref_put() and remove the former
for good.

Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Matt Turner <mattst88@gmail.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Jeff Dike <jdike@addtoit.com>
Cc: Richard Weinberger <richard@nod.at>
Cc: Anton Ivanov <anton.ivanov@cambridgegreys.com>
Cc: Chris Zankel <chris@zankel.net>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
Cc: Jens Taprogge <jens.taprogge@taprogge.org>
Cc: Karsten Keil <isdn@linux-pingi.de>
Cc: Scott Branden <scott.branden@broadcom.com>
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: David Lin <dtwlin@gmail.com>
Cc: Johan Hovold <johan@kernel.org>
Cc: Alex Elder <elder@kernel.org>
Cc: Jiri Slaby <jirislaby@kernel.org>
Cc: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Cc: Jiri Kosina <jikos@kernel.org>
Cc: David Sterba <dsterba@suse.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: Oliver Neukum <oneukum@suse.com>
Cc: Felipe Balbi <balbi@kernel.org>
Cc: Mathias Nyman <mathias.nyman@intel.com>
Cc: Marcel Holtmann <marcel@holtmann.org>
Cc: Johan Hedberg <johan.hedberg@gmail.com>
Cc: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
Acked-by: Alex Elder <elder@linaro.org>
Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
Acked-by: Max Filippov <jcmvbkbc@gmail.com>
Acked-by: David Sterba <dsterba@suse.com>
Acked-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Link: https://lore.kernel.org/r/20210723074317.32690-8-jslaby@suse.cz
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
41 files changed:
arch/alpha/kernel/srmcons.c
arch/m68k/emu/nfcon.c
arch/um/drivers/line.c
arch/xtensa/platforms/iss/console.c
drivers/char/pcmcia/synclink_cs.c
drivers/char/ttyprintk.c
drivers/ipack/devices/ipoctal.c
drivers/isdn/capi/capi.c
drivers/misc/bcm-vk/bcm_vk_tty.c
drivers/mmc/core/sdio_uart.c
drivers/net/usb/hso.c
drivers/s390/char/con3215.c
drivers/s390/char/sclp_tty.c
drivers/s390/char/sclp_vt220.c
drivers/s390/char/tty3270.c
drivers/staging/fwserial/fwserial.c
drivers/staging/gdm724x/gdm_tty.c
drivers/staging/greybus/uart.c
drivers/tty/amiserial.c
drivers/tty/ehv_bytechan.c
drivers/tty/goldfish.c
drivers/tty/hvc/hvc_console.c
drivers/tty/hvc/hvcs.c
drivers/tty/ipwireless/tty.c
drivers/tty/mips_ejtag_fdc.c
drivers/tty/moxa.c
drivers/tty/mxser.c
drivers/tty/n_gsm.c
drivers/tty/nozomi.c
drivers/tty/serial/kgdb_nmi.c
drivers/tty/serial/serial_core.c
drivers/tty/synclink_gt.c
drivers/tty/tty_io.c
drivers/tty/ttynull.c
drivers/tty/vcc.c
drivers/usb/class/cdc-acm.c
drivers/usb/gadget/function/u_serial.c
drivers/usb/host/xhci-dbgtty.c
drivers/usb/serial/usb-serial.c
include/linux/tty_driver.h
net/bluetooth/rfcomm/tty.c

index d0a1b08d851d1a8d96fd77560209aac022b875c0..90635ef5dafac4cb47cba0031304eaa269393366 100644 (file)
@@ -221,7 +221,7 @@ srmcons_init(void)
                tty_port_link_device(&srmcons_singleton.port, driver, 0);
                err = tty_register_driver(driver);
                if (err) {
-                       put_tty_driver(driver);
+                       tty_driver_kref_put(driver);
                        tty_port_destroy(&srmcons_singleton.port);
                        return err;
                }
index b3b64d03bad6da41d11d635759c804c2b5300d66..557d60867f98402af31f9d063dfc5095dd7f4bb5 100644 (file)
@@ -144,7 +144,7 @@ static int __init nfcon_init(void)
        res = tty_register_driver(driver);
        if (res) {
                pr_err("failed to register nfcon tty driver\n");
-               put_tty_driver(driver);
+               tty_driver_kref_put(driver);
                tty_port_destroy(&nfcon_tty_port);
                return res;
        }
@@ -161,7 +161,7 @@ static void __exit nfcon_exit(void)
 {
        unregister_console(&nf_console);
        tty_unregister_driver(nfcon_tty_driver);
-       put_tty_driver(nfcon_tty_driver);
+       tty_driver_kref_put(nfcon_tty_driver);
        tty_port_destroy(&nfcon_tty_port);
 }
 
index 0d8f4ee6335d6c22a1453462a40ef60cd7d5f45d..8febf95da96e1df3e34d7a0aa0a760a0a1b46940 100644 (file)
@@ -568,7 +568,7 @@ int register_lines(struct line_driver *line_driver,
        if (err) {
                printk(KERN_ERR "register_lines : can't register %s driver\n",
                       line_driver->name);
-               put_tty_driver(driver);
+               tty_driver_kref_put(driver);
                for (i = 0; i < nlines; i++)
                        tty_port_destroy(&lines[i].port);
                return err;
index 0b8a0565cdfd430a99cd4f4dc500c8ed8f2c2cc4..81f988914d9a4e9504d21fbfb48b0934f6ee63f1 100644 (file)
@@ -178,7 +178,7 @@ static int __init rs_init(void)
 static __exit void rs_exit(void)
 {
        tty_unregister_driver(serial_driver);
-       put_tty_driver(serial_driver);
+       tty_driver_kref_put(serial_driver);
        tty_port_destroy(&serial_port);
 }
 
index 6eaefea0520ebbb736b605d9bd7c9a40e6a2e03c..fd78d585684184d855f845c0528a5d7292ab8af1 100644 (file)
@@ -2841,7 +2841,7 @@ static int __init synclink_cs_init(void)
 err_unreg_tty:
        tty_unregister_driver(serial_driver);
 err_put_tty:
-       put_tty_driver(serial_driver);
+       tty_driver_kref_put(serial_driver);
 err:
        return rc;
 }
@@ -2850,7 +2850,7 @@ static void __exit synclink_cs_exit(void)
 {
        pcmcia_unregister_driver(&mgslpc_driver);
        tty_unregister_driver(serial_driver);
-       put_tty_driver(serial_driver);
+       tty_driver_kref_put(serial_driver);
 }
 
 module_init(synclink_cs_init);
index 230b2c9b3e3cd35db017c83bd31f68c6d2d89b7d..adf941c475063b3694af497df643de3e33383712 100644 (file)
@@ -198,7 +198,7 @@ static int __init ttyprintk_init(void)
        return 0;
 
 error:
-       put_tty_driver(ttyprintk_driver);
+       tty_driver_kref_put(ttyprintk_driver);
        tty_port_destroy(&tpk_port.port);
        return ret;
 }
@@ -206,7 +206,7 @@ error:
 static void __exit ttyprintk_exit(void)
 {
        tty_unregister_driver(ttyprintk_driver);
-       put_tty_driver(ttyprintk_driver);
+       tty_driver_kref_put(ttyprintk_driver);
        tty_port_destroy(&tpk_port.port);
 }
 
index be6d11f46e628c3750b6382ef5ca5e486330bfac..c14e65a5d38f013d3e129a17304883800cc307a2 100644 (file)
@@ -371,7 +371,7 @@ static int ipoctal_inst_slot(struct ipoctal *ipoctal, unsigned int bus_nr,
        res = tty_register_driver(tty);
        if (res) {
                dev_err(&ipoctal->dev->dev, "Can't register tty driver.\n");
-               put_tty_driver(tty);
+               tty_driver_kref_put(tty);
                return res;
        }
 
@@ -696,7 +696,7 @@ static void __ipoctal_remove(struct ipoctal *ipoctal)
        }
 
        tty_unregister_driver(ipoctal->tty_drv);
-       put_tty_driver(ipoctal->tty_drv);
+       tty_driver_kref_put(ipoctal->tty_drv);
        kfree(ipoctal);
 }
 
index 32abf4d15450c974bb214e7284c9a6f5f6cc24c3..0f00be62438d5f7e7e67f7cc28c88d905de3692d 100644 (file)
@@ -1290,7 +1290,7 @@ static int __init capinc_tty_init(void)
 
        err = tty_register_driver(drv);
        if (err) {
-               put_tty_driver(drv);
+               tty_driver_kref_put(drv);
                kfree(capiminors);
                printk(KERN_ERR "Couldn't register capi_nc driver\n");
                return err;
@@ -1302,7 +1302,7 @@ static int __init capinc_tty_init(void)
 static void __exit capinc_tty_exit(void)
 {
        tty_unregister_driver(capinc_tty_driver);
-       put_tty_driver(capinc_tty_driver);
+       tty_driver_kref_put(capinc_tty_driver);
        kfree(capiminors);
 }
 
index dae9eeed84a2b967e38de79526b1a187ad9d48de..1b6076a89ca6ae4d0bc69bd5b51a7bf159c3f61a 100644 (file)
@@ -249,7 +249,7 @@ int bcm_vk_tty_init(struct bcm_vk *vk, char *name)
        tty_drv->name = kstrdup(name, GFP_KERNEL);
        if (!tty_drv->name) {
                err = -ENOMEM;
-               goto err_put_tty_driver;
+               goto err_tty_driver_kref_put;
        }
        tty_drv->type = TTY_DRIVER_TYPE_SERIAL;
        tty_drv->subtype = SERIAL_TYPE_NORMAL;
@@ -295,8 +295,8 @@ err_kfree_tty_name:
        kfree(tty_drv->name);
        tty_drv->name = NULL;
 
-err_put_tty_driver:
-       put_tty_driver(tty_drv);
+err_tty_driver_kref_put:
+       tty_driver_kref_put(tty_drv);
 
        return err;
 }
@@ -317,7 +317,7 @@ void bcm_vk_tty_exit(struct bcm_vk *vk)
        kfree(vk->tty_drv->name);
        vk->tty_drv->name = NULL;
 
-       put_tty_driver(vk->tty_drv);
+       tty_driver_kref_put(vk->tty_drv);
 }
 
 void bcm_vk_tty_terminate_tty_user(struct bcm_vk *vk)
index 04a57832e486bdae732dbae8d84b4162e4fe4677..04c0823e0359e610a2598fa31d5afe40134a379a 100644 (file)
@@ -1165,7 +1165,7 @@ static int __init sdio_uart_init(void)
 err2:
        tty_unregister_driver(tty_drv);
 err1:
-       put_tty_driver(tty_drv);
+       tty_driver_kref_put(tty_drv);
        return ret;
 }
 
@@ -1173,7 +1173,7 @@ static void __exit sdio_uart_exit(void)
 {
        sdio_unregister_driver(&sdio_uart_driver);
        tty_unregister_driver(sdio_uart_tty_driver);
-       put_tty_driver(sdio_uart_tty_driver);
+       tty_driver_kref_put(sdio_uart_tty_driver);
 }
 
 module_init(sdio_uart_init);
index 6ecb6d7893a867cbeb4f17157b86daf97c5ba1fa..48192de045fcf254acbe6151b56828e51be7490f 100644 (file)
@@ -3269,7 +3269,7 @@ static int __init hso_init(void)
 err_unreg_tty:
        tty_unregister_driver(tty_drv);
 err_free_tty:
-       put_tty_driver(tty_drv);
+       tty_driver_kref_put(tty_drv);
        return result;
 }
 
@@ -3280,7 +3280,7 @@ static void __exit hso_exit(void)
        tty_unregister_driver(tty_drv);
        /* deregister the usb driver */
        usb_deregister(&hso_driver);
-       put_tty_driver(tty_drv);
+       tty_driver_kref_put(tty_drv);
 }
 
 /* Module definitions */
index 3818a89aef5cebc896779e8beb3bcebaa47fbed0..f356607835d84b4895c94dcd1428f3bcedcdc978 100644 (file)
@@ -1082,7 +1082,7 @@ static int __init tty3215_init(void)
 
        ret = ccw_driver_register(&raw3215_ccw_driver);
        if (ret) {
-               put_tty_driver(driver);
+               tty_driver_kref_put(driver);
                return ret;
        }
        /*
@@ -1104,7 +1104,7 @@ static int __init tty3215_init(void)
        tty_set_operations(driver, &tty3215_ops);
        ret = tty_register_driver(driver);
        if (ret) {
-               put_tty_driver(driver);
+               tty_driver_kref_put(driver);
                return ret;
        }
        tty3215_driver = driver;
index 48790f8fb3b1a6c4e18bb44db94a2a56403759cd..971fbb52740bf4ce2f135b7229da2cd6ef7ed6ae 100644 (file)
@@ -509,14 +509,14 @@ sclp_tty_init(void)
 
        rc = sclp_rw_init();
        if (rc) {
-               put_tty_driver(driver);
+               tty_driver_kref_put(driver);
                return rc;
        }
        /* Allocate pages for output buffering */
        for (i = 0; i < MAX_KMEM_PAGES; i++) {
                page = (void *) get_zeroed_page(GFP_KERNEL | GFP_DMA);
                if (page == NULL) {
-                       put_tty_driver(driver);
+                       tty_driver_kref_put(driver);
                        return -ENOMEM;
                }
                list_add_tail((struct list_head *) page, &sclp_tty_pages);
@@ -532,7 +532,7 @@ sclp_tty_init(void)
 
        rc = sclp_register(&sclp_input_event);
        if (rc) {
-               put_tty_driver(driver);
+               tty_driver_kref_put(driver);
                return rc;
        }
 
@@ -552,7 +552,7 @@ sclp_tty_init(void)
        tty_port_link_device(&sclp_port, driver, 0);
        rc = tty_register_driver(driver);
        if (rc) {
-               put_tty_driver(driver);
+               tty_driver_kref_put(driver);
                tty_port_destroy(&sclp_port);
                return rc;
        }
index c6a7ea32aa5c63c5f12ec1940df2e1be72ebcf2d..29a6a0099f831726c515dd92fd62101f42a3c5c1 100644 (file)
@@ -763,7 +763,7 @@ out_reg:
 out_init:
        __sclp_vt220_cleanup();
 out_driver:
-       put_tty_driver(driver);
+       tty_driver_kref_put(driver);
        return rc;
 }
 __initcall(sclp_vt220_tty_init);
index adc33846bf8e4ec788b0beb355e301f62b152d66..5c83f71c1d0e16a6dd0249d34d00e87c0539512b 100644 (file)
@@ -1935,7 +1935,7 @@ static int __init tty3270_init(void)
        tty_set_operations(driver, &tty3270_ops);
        ret = tty_register_driver(driver);
        if (ret) {
-               put_tty_driver(driver);
+               tty_driver_kref_put(driver);
                return ret;
        }
        tty3270_driver = driver;
@@ -1952,7 +1952,7 @@ tty3270_exit(void)
        driver = tty3270_driver;
        tty3270_driver = NULL;
        tty_unregister_driver(driver);
-       put_tty_driver(driver);
+       tty_driver_kref_put(driver);
        tty3270_del_views();
 }
 
index 38a280e876c2c1003cf9b1f1e9d6ef3511172ecb..e8fa7f53cd5ee2333bbe7213bd7e6b23ba04f6bd 100644 (file)
@@ -2852,11 +2852,11 @@ unregister_loop:
                tty_unregister_driver(fwloop_driver);
 put_loop:
        if (create_loop_dev)
-               put_tty_driver(fwloop_driver);
+               tty_driver_kref_put(fwloop_driver);
 unregister_driver:
        tty_unregister_driver(fwtty_driver);
 put_tty:
-       put_tty_driver(fwtty_driver);
+       tty_driver_kref_put(fwtty_driver);
 remove_debugfs:
        debugfs_remove_recursive(fwserial_debugfs);
 
@@ -2871,10 +2871,10 @@ static void __exit fwserial_exit(void)
        kmem_cache_destroy(fwtty_txn_cache);
        if (create_loop_dev) {
                tty_unregister_driver(fwloop_driver);
-               put_tty_driver(fwloop_driver);
+               tty_driver_kref_put(fwloop_driver);
        }
        tty_unregister_driver(fwtty_driver);
-       put_tty_driver(fwtty_driver);
+       tty_driver_kref_put(fwtty_driver);
        debugfs_remove_recursive(fwserial_debugfs);
 }
 
index 91857541726472c50cac44fb3bf5f67fb09ab3f5..04df6f9f54037dcaa92cecab96df1b1e8f4d3f00 100644 (file)
@@ -299,7 +299,7 @@ int register_lte_tty_driver(void)
 
                ret = tty_register_driver(tty_driver);
                if (ret) {
-                       put_tty_driver(tty_driver);
+                       tty_driver_kref_put(tty_driver);
                        return ret;
                }
 
@@ -318,7 +318,7 @@ void unregister_lte_tty_driver(void)
                tty_driver = gdm_driver[i];
                if (tty_driver) {
                        tty_unregister_driver(tty_driver);
-                       put_tty_driver(tty_driver);
+                       tty_driver_kref_put(tty_driver);
                }
        }
 }
index 73f01ed1e5b7296fe914368e4fddefc59af3416d..e6d860a9678ed089073a9643e516599544571440 100644 (file)
@@ -973,7 +973,7 @@ static int gb_tty_init(void)
        return 0;
 
 fail_put_gb_tty:
-       put_tty_driver(gb_tty_driver);
+       tty_driver_kref_put(gb_tty_driver);
 fail_unregister_dev:
        return retval;
 }
@@ -981,7 +981,7 @@ fail_unregister_dev:
 static void gb_tty_exit(void)
 {
        tty_unregister_driver(gb_tty_driver);
-       put_tty_driver(gb_tty_driver);
+       tty_driver_kref_put(gb_tty_driver);
        idr_destroy(&tty_minors);
 }
 
index 50f1a54ef35abfaefd8672862e71470ae702b1ef..1e60dbef676c8b5361d3edf5ac3e15fee7fb6326 100644 (file)
@@ -1519,7 +1519,7 @@ static int __init amiga_serial_probe(struct platform_device *pdev)
 
        error = tty_register_driver(driver);
        if (error)
-               goto fail_put_tty_driver;
+               goto fail_tty_driver_kref_put;
 
        printk(KERN_INFO "ttyS0 is the amiga builtin serial port\n");
 
@@ -1566,9 +1566,9 @@ fail_free_irq:
        free_irq(IRQ_AMIGA_TBE, state);
 fail_unregister:
        tty_unregister_driver(driver);
-fail_put_tty_driver:
+fail_tty_driver_kref_put:
        tty_port_destroy(&state->tport);
-       put_tty_driver(driver);
+       tty_driver_kref_put(driver);
        return error;
 }
 
@@ -1577,7 +1577,7 @@ static int __exit amiga_serial_remove(struct platform_device *pdev)
        struct serial_state *state = platform_get_drvdata(pdev);
 
        tty_unregister_driver(serial_driver);
-       put_tty_driver(serial_driver);
+       tty_driver_kref_put(serial_driver);
        tty_port_destroy(&state->tport);
 
        free_irq(IRQ_AMIGA_TBE, state);
index f580a5de3c98ca2a3395cccad007b83fb242fc1c..19d32cb6af84e30101b5bb54ee20b4faa4b230a8 100644 (file)
@@ -791,7 +791,7 @@ static int __init ehv_bc_init(void)
        ret = tty_register_driver(driver);
        if (ret) {
                pr_err("ehv-bc: could not register tty driver (ret=%i)\n", ret);
-               goto err_put_tty_driver;
+               goto err_tty_driver_kref_put;
        }
 
        ehv_bc_driver = driver;
@@ -808,8 +808,8 @@ static int __init ehv_bc_init(void)
 err_deregister_tty_driver:
        ehv_bc_driver = NULL;
        tty_unregister_driver(driver);
-err_put_tty_driver:
-       put_tty_driver(driver);
+err_tty_driver_kref_put:
+       tty_driver_kref_put(driver);
 err_free_bcs:
        kfree(bcs);
 
index 853083fcebb8691b5989e927e276eab879e5c88f..d24af649a8bb520a45cb5ccfe43be2973736f2de 100644 (file)
@@ -274,7 +274,7 @@ static int goldfish_tty_create_driver(void)
        return 0;
 
 err_tty_register_driver_failed:
-       put_tty_driver(tty);
+       tty_driver_kref_put(tty);
 err_tty_alloc_driver_failed:
        kfree(goldfish_ttys);
        goldfish_ttys = NULL;
@@ -285,7 +285,7 @@ err_alloc_goldfish_ttys_failed:
 static void goldfish_tty_delete_driver(void)
 {
        tty_unregister_driver(goldfish_tty_driver);
-       put_tty_driver(goldfish_tty_driver);
+       tty_driver_kref_put(goldfish_tty_driver);
        goldfish_tty_driver = NULL;
        kfree(goldfish_ttys);
        goldfish_ttys = NULL;
index 9215dd4bd9f03edd8ebed63edaf50d47ab3aac35..7b30d5a05e2f5bdf0e01d86664e12ae5a5e14d38 100644 (file)
@@ -1063,7 +1063,7 @@ stop_thread:
        kthread_stop(hvc_task);
        hvc_task = NULL;
 put_tty:
-       put_tty_driver(drv);
+       tty_driver_kref_put(drv);
 out:
        return err;
 }
index 23aebc9642018136310169aa4aad4a0d3c3f068f..245da1dfd81899cd9b643ddd410d9f223e77dc56 100644 (file)
@@ -1509,7 +1509,7 @@ buff_alloc_fail:
 register_fail:
        hvcs_free_index_list();
 index_fail:
-       put_tty_driver(hvcs_tty_driver);
+       tty_driver_kref_put(hvcs_tty_driver);
        hvcs_tty_driver = NULL;
        mutex_unlock(&hvcs_init_mutex);
        return rc;
@@ -1562,7 +1562,7 @@ static void __exit hvcs_module_exit(void)
 
        hvcs_free_index_list();
 
-       put_tty_driver(hvcs_tty_driver);
+       tty_driver_kref_put(hvcs_tty_driver);
 
        printk(KERN_INFO "HVCS: driver module removed.\n");
 }
index d24404c222e030ea585839f0966d2d0abfa6adf2..9edd5ae175803e79989cb8d320e48e8bb2ee8491 100644 (file)
@@ -585,7 +585,7 @@ int ipwireless_tty_init(void)
        if (result) {
                printk(KERN_ERR IPWIRELESS_PCCARD_NAME
                       ": failed to register tty driver\n");
-               put_tty_driver(ipw_tty_driver);
+               tty_driver_kref_put(ipw_tty_driver);
                return result;
        }
 
@@ -595,7 +595,7 @@ int ipwireless_tty_init(void)
 void ipwireless_tty_release(void)
 {
        tty_unregister_driver(ipw_tty_driver);
-       put_tty_driver(ipw_tty_driver);
+       tty_driver_kref_put(ipw_tty_driver);
 }
 
 int ipwireless_tty_is_modem(struct ipw_tty *tty)
index 3b5915b94fac62fe22b0970061f022ae31718696..02c10a968de1c900c3882eede3ded5b361adc34b 100644 (file)
@@ -1042,7 +1042,7 @@ err_destroy_ports:
                dport = &priv->ports[nport];
                tty_port_destroy(&dport->port);
        }
-       put_tty_driver(priv->driver);
+       tty_driver_kref_put(priv->driver);
        return ret;
 }
 
index 64b18177c790a623ee1442832e338ef3c46e9c52..776f78de0f829088fe9b6bb5a2b255231b00a10d 100644 (file)
@@ -1053,7 +1053,7 @@ static int __init moxa_init(void)
 
        if (tty_register_driver(moxaDriver)) {
                printk(KERN_ERR "can't register MOXA Smartio tty driver!\n");
-               put_tty_driver(moxaDriver);
+               tty_driver_kref_put(moxaDriver);
                return -1;
        }
 
@@ -1119,7 +1119,7 @@ static void __exit moxa_exit(void)
        del_timer_sync(&moxaTimer);
 
        tty_unregister_driver(moxaDriver);
-       put_tty_driver(moxaDriver);
+       tty_driver_kref_put(moxaDriver);
 }
 
 module_init(moxa_init);
index 650fc6fac88e524b8b248837dfabf5d7a15aaf0b..335e4e50d679aee01cc12dc37c8df16247554832 100644 (file)
@@ -2008,7 +2008,7 @@ static int __init mxser_module_init(void)
 err_unr:
        tty_unregister_driver(mxvar_sdriver);
 err_put:
-       put_tty_driver(mxvar_sdriver);
+       tty_driver_kref_put(mxvar_sdriver);
        return retval;
 }
 
@@ -2016,7 +2016,7 @@ static void __exit mxser_module_exit(void)
 {
        pci_unregister_driver(&mxser_driver);
        tty_unregister_driver(mxvar_sdriver);
-       put_tty_driver(mxvar_sdriver);
+       tty_driver_kref_put(mxvar_sdriver);
 }
 
 module_init(mxser_module_init);
index 0308669c21c6074a054d7bb585d1806857d84555..1d92d2a848894d7d04b5f364f5808bd83683b955 100644 (file)
@@ -3279,7 +3279,7 @@ static int __init gsm_init(void)
                        gsm_tty_driver->major, gsm_tty_driver->minor_start);
        return 0;
 err_put_driver:
-       put_tty_driver(gsm_tty_driver);
+       tty_driver_kref_put(gsm_tty_driver);
 err_unreg_ldisc:
        tty_unregister_ldisc(&tty_ldisc_packet);
        return status;
@@ -3289,7 +3289,7 @@ static void __exit gsm_exit(void)
 {
        tty_unregister_ldisc(&tty_ldisc_packet);
        tty_unregister_driver(gsm_tty_driver);
-       put_tty_driver(gsm_tty_driver);
+       tty_driver_kref_put(gsm_tty_driver);
 }
 
 module_init(gsm_init);
index f3eb0aaec79b7d48443780bc09b47630196ea408..0454c78deee6976e54d4f1485f1e44fbf024d2f1 100644 (file)
@@ -1857,7 +1857,7 @@ static __init int nozomi_init(void)
 unr_tty:
        tty_unregister_driver(ntty_driver);
 free_tty:
-       put_tty_driver(ntty_driver);
+       tty_driver_kref_put(ntty_driver);
        return ret;
 }
 
@@ -1865,7 +1865,7 @@ static __exit void nozomi_exit(void)
 {
        pci_unregister_driver(&nozomi_driver);
        tty_unregister_driver(ntty_driver);
-       put_tty_driver(ntty_driver);
+       tty_driver_kref_put(ntty_driver);
 }
 
 module_init(nozomi_init);
index 9209573a7e378c2411224e4c9c9c3c63119626b6..55c3c9db7462d7d3d2ea4cd9e5711272875c93bd 100644 (file)
@@ -355,7 +355,7 @@ int kgdb_register_nmi_console(void)
 
        return 0;
 err_drv_reg:
-       put_tty_driver(kgdb_nmi_tty_driver);
+       tty_driver_kref_put(kgdb_nmi_tty_driver);
        return ret;
 }
 EXPORT_SYMBOL_GPL(kgdb_register_nmi_console);
@@ -373,7 +373,7 @@ int kgdb_unregister_nmi_console(void)
                return ret;
 
        tty_unregister_driver(kgdb_nmi_tty_driver);
-       put_tty_driver(kgdb_nmi_tty_driver);
+       tty_driver_kref_put(kgdb_nmi_tty_driver);
 
        return 0;
 }
index eb1401b61a90b95977b720d0974949b98a493809..0e2e35ab64c794fd6939753d302753ebdf910045 100644 (file)
@@ -2568,7 +2568,7 @@ int uart_register_driver(struct uart_driver *drv)
 
        for (i = 0; i < drv->nr; i++)
                tty_port_destroy(&drv->state[i].port);
-       put_tty_driver(normal);
+       tty_driver_kref_put(normal);
 out_kfree:
        kfree(drv->state);
 out:
@@ -2590,7 +2590,7 @@ void uart_unregister_driver(struct uart_driver *drv)
        unsigned int i;
 
        tty_unregister_driver(p);
-       put_tty_driver(p);
+       tty_driver_kref_put(p);
        for (i = 0; i < drv->nr; i++)
                tty_port_destroy(&drv->state[i].port);
        kfree(drv->state);
index 525f3a568c3291576985aa0a2493a94d237620aa..c89f7de38d12981b40027eb121bd323caea6986e 100644 (file)
@@ -3650,7 +3650,7 @@ static void slgt_cleanup(void)
                for (info=slgt_device_list ; info != NULL ; info=info->next_device)
                        tty_unregister_device(serial_driver, info->line);
                tty_unregister_driver(serial_driver);
-               put_tty_driver(serial_driver);
+               tty_driver_kref_put(serial_driver);
        }
 
        /* reset devices */
@@ -3712,7 +3712,7 @@ static int __init slgt_init(void)
        tty_set_operations(serial_driver, &ops);
        if ((rc = tty_register_driver(serial_driver)) < 0) {
                DBGERR(("%s can't register serial driver\n", driver_name));
-               put_tty_driver(serial_driver);
+               tty_driver_kref_put(serial_driver);
                serial_driver = NULL;
                goto error;
        }
index 16e3fce6f88dc78e77978dae8d71253750117c83..e8532006e960ef1f12328b8f1a6e967c178d349a 100644 (file)
@@ -3438,12 +3438,6 @@ void tty_driver_kref_put(struct tty_driver *driver)
 }
 EXPORT_SYMBOL(tty_driver_kref_put);
 
-void put_tty_driver(struct tty_driver *d)
-{
-       tty_driver_kref_put(d);
-}
-EXPORT_SYMBOL(put_tty_driver);
-
 /*
  * Called by a tty driver to register itself.
  */
index af3311a249170f1108abf831a1871cdfc190ec57..1d4438472442addab213243a75d5509d6b48cb2c 100644 (file)
@@ -84,7 +84,7 @@ static int __init ttynull_init(void)
 
        ret = tty_register_driver(driver);
        if (ret < 0) {
-               put_tty_driver(driver);
+               tty_driver_kref_put(driver);
                tty_port_destroy(&ttynull_port);
                return ret;
        }
@@ -99,7 +99,7 @@ static void __exit ttynull_exit(void)
 {
        unregister_console(&ttynull_console);
        tty_unregister_driver(ttynull_driver);
-       put_tty_driver(ttynull_driver);
+       tty_driver_kref_put(ttynull_driver);
        tty_port_destroy(&ttynull_port);
 }
 
index d06bcc3b4c077621b4e02e9a1e06232132d07866..e11383ae1e7e317c61d70a83aea67edde4023c28 100644 (file)
@@ -1028,7 +1028,7 @@ static int vcc_tty_init(void)
        rv = tty_register_driver(vcc_tty_driver);
        if (rv) {
                pr_err("VCC: TTY driver registration failed\n");
-               put_tty_driver(vcc_tty_driver);
+               tty_driver_kref_put(vcc_tty_driver);
                vcc_tty_driver = NULL;
                return rv;
        }
@@ -1041,7 +1041,7 @@ static int vcc_tty_init(void)
 static void vcc_tty_exit(void)
 {
        tty_unregister_driver(vcc_tty_driver);
-       put_tty_driver(vcc_tty_driver);
+       tty_driver_kref_put(vcc_tty_driver);
        vccdbg("VCC: TTY driver unregistered\n");
 
        vcc_tty_driver = NULL;
index c19b59583d9f160719dbc65bf50578340bd1c44a..8bbd8e29e60d1a65b8cf40b93cebc27d45448ddc 100644 (file)
@@ -2044,14 +2044,14 @@ static int __init acm_init(void)
 
        retval = tty_register_driver(acm_tty_driver);
        if (retval) {
-               put_tty_driver(acm_tty_driver);
+               tty_driver_kref_put(acm_tty_driver);
                return retval;
        }
 
        retval = usb_register(&acm_driver);
        if (retval) {
                tty_unregister_driver(acm_tty_driver);
-               put_tty_driver(acm_tty_driver);
+               tty_driver_kref_put(acm_tty_driver);
                return retval;
        }
 
@@ -2064,7 +2064,7 @@ static void __exit acm_exit(void)
 {
        usb_deregister(&acm_driver);
        tty_unregister_driver(acm_tty_driver);
-       put_tty_driver(acm_tty_driver);
+       tty_driver_kref_put(acm_tty_driver);
        idr_destroy(&acm_minors);
 }
 
index 74289f68a2abc92974a8b124faaaf70238b1d1f7..72961c1beeef2826a42e7bd8e41c46676b75844c 100644 (file)
@@ -1491,7 +1491,7 @@ static int userial_init(void)
 
        return status;
 fail:
-       put_tty_driver(driver);
+       tty_driver_kref_put(driver);
        return status;
 }
 module_init(userial_init);
@@ -1499,7 +1499,7 @@ module_init(userial_init);
 static void userial_cleanup(void)
 {
        tty_unregister_driver(gs_tty_driver);
-       put_tty_driver(gs_tty_driver);
+       tty_driver_kref_put(gs_tty_driver);
        gs_tty_driver = NULL;
 }
 module_exit(userial_cleanup);
index bef104511352c9ce7a21a776f19afb123b0bb66d..6e784f2fc26d14f2cbcd02903172335b9d02c809 100644 (file)
@@ -541,7 +541,7 @@ static int dbc_tty_init(void)
        ret = tty_register_driver(dbc_tty_driver);
        if (ret) {
                pr_err("Can't register dbc tty driver\n");
-               put_tty_driver(dbc_tty_driver);
+               tty_driver_kref_put(dbc_tty_driver);
        }
        return ret;
 }
@@ -550,7 +550,7 @@ static void dbc_tty_exit(void)
 {
        if (dbc_tty_driver) {
                tty_unregister_driver(dbc_tty_driver);
-               put_tty_driver(dbc_tty_driver);
+               tty_driver_kref_put(dbc_tty_driver);
                dbc_tty_driver = NULL;
        }
 }
index 2f7855da645fb3c522dbb27d1343ed8d9e296767..090a78c948f286b10163e23e68906592817b481a 100644 (file)
@@ -1366,7 +1366,7 @@ exit_reg_driver:
 
 exit_bus:
        pr_err("%s - returning with error %d\n", __func__, result);
-       put_tty_driver(usb_serial_tty_driver);
+       tty_driver_kref_put(usb_serial_tty_driver);
        return result;
 }
 
@@ -1378,7 +1378,7 @@ static void __exit usb_serial_exit(void)
        usb_serial_generic_deregister();
 
        tty_unregister_driver(usb_serial_tty_driver);
-       put_tty_driver(usb_serial_tty_driver);
+       tty_driver_kref_put(usb_serial_tty_driver);
        bus_unregister(&usb_serial_bus_type);
        idr_destroy(&serial_minors);
 }
index 6092ce9180aad2887931b6e7ee95e8e2366db524..c20431d8def8f23b0364a70795050862b68917a0 100644 (file)
@@ -329,7 +329,6 @@ extern struct list_head tty_drivers;
 
 extern struct tty_driver *__tty_alloc_driver(unsigned int lines,
                struct module *owner, unsigned long flags);
-extern void put_tty_driver(struct tty_driver *driver);
 extern struct tty_driver *tty_find_polling_driver(char *name, int *line);
 
 extern void tty_driver_kref_put(struct tty_driver *driver);
index 8ec0600cd92715299c4e8150ddf14bc507838aac..ebd78fdbd6e8bce1d09ca1c677f3539c77f0e8ae 100644 (file)
@@ -1146,7 +1146,7 @@ int __init rfcomm_init_ttys(void)
        error = tty_register_driver(rfcomm_tty_driver);
        if (error) {
                BT_ERR("Can't register RFCOMM TTY driver");
-               put_tty_driver(rfcomm_tty_driver);
+               tty_driver_kref_put(rfcomm_tty_driver);
                return error;
        }
 
@@ -1158,5 +1158,5 @@ int __init rfcomm_init_ttys(void)
 void rfcomm_cleanup_ttys(void)
 {
        tty_unregister_driver(rfcomm_tty_driver);
-       put_tty_driver(rfcomm_tty_driver);
+       tty_driver_kref_put(rfcomm_tty_driver);
 }