tty: serial: pch_uart.c: remove debugfs dentry pointer
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 16 Feb 2021 14:59:00 +0000 (15:59 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 10 Mar 2021 08:34:05 +0000 (09:34 +0100)
No need to keep around the dentry pointer for the debugfs file if all it
is used for is to remove it when we are wanting to clean up, as the
pointer can be looked up directly from debugfs instead.

This also removes pointless #ifdef CONFIG_DEBUG_FS brackets as the
compiler is smart enough to handle this properly if debugfs is disabled
without us having to worry about it.

Cc: Jiri Slaby <jirislaby@kernel.org>
Cc: linux-serial@vger.kernel.org
Link: https://lore.kernel.org/r/20210216145900.3835160-1-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/pch_uart.c

index a7363bc66c11a4190f19499ca03bffb7fd66b64c..e9e79d181f0e0f80638acd4b16bd3fcf022a006f 100644 (file)
@@ -236,7 +236,6 @@ struct eg20t_port {
        void                            *rx_buf_virt;
        dma_addr_t                      rx_buf_dma;
 
-       struct dentry   *debugfs;
 #define IRQ_NAME_SIZE 17
        char                            irq_name[IRQ_NAME_SIZE];
 
@@ -1735,9 +1734,7 @@ static struct eg20t_port *pch_uart_init_port(struct pci_dev *pdev,
        int fifosize;
        int port_type;
        struct pch_uart_driver_data *board;
-#ifdef CONFIG_DEBUG_FS
-       char name[32];  /* for debugfs file name */
-#endif
+       char name[32];
 
        board = &drv_dat[id->driver_data];
        port_type = board->port_type;
@@ -1813,11 +1810,9 @@ static struct eg20t_port *pch_uart_init_port(struct pci_dev *pdev,
        if (ret < 0)
                goto init_port_hal_free;
 
-#ifdef CONFIG_DEBUG_FS
-       snprintf(name, sizeof(name), "uart%d_regs", board->line_no);
-       priv->debugfs = debugfs_create_file(name, S_IFREG | S_IRUGO,
-                               NULL, priv, &port_regs_ops);
-#endif
+       snprintf(name, sizeof(name), "uart%d_regs", priv->port.line);
+       debugfs_create_file(name, S_IFREG | S_IRUGO, NULL, priv,
+                           &port_regs_ops);
 
        return priv;
 
@@ -1835,10 +1830,10 @@ init_port_alloc_err:
 
 static void pch_uart_exit_port(struct eg20t_port *priv)
 {
+       char name[32];
 
-#ifdef CONFIG_DEBUG_FS
-       debugfs_remove(priv->debugfs);
-#endif
+       snprintf(name, sizeof(name), "uart%d_regs", priv->port.line);
+       debugfs_remove(debugfs_lookup(name, NULL));
        uart_remove_one_port(&pch_uart_driver, &priv->port);
        free_page((unsigned long)priv->rxbuf.buf);
 }