serial: max3100: Convert to_max3100_port() to be static inline
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 10 Apr 2024 14:11:35 +0000 (17:11 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 11 Apr 2024 12:08:40 +0000 (14:08 +0200)
As Jiri rightfully pointed out the current to_max3100_port() macro
implementation is fragile in a sense that it expects the variable
name to be port, otherwise it blow up the build.

Change this to be static inline to prevent bad compilation.

Suggested-by: Jiri Slaby <jirislaby@kernel.org>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Link: https://lore.kernel.org/r/20240410141135.1378948-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/max3100.c

index ce24588150bf4e3b34a97cbda469310e106fcab9..fda63918d1eb85aec74500c0b066ad3fea90e59f 100644 (file)
@@ -111,7 +111,10 @@ struct max3100_port {
        struct timer_list       timer;
 };
 
-#define to_max3100_port(port)  container_of(port, struct max3100_port, port)
+static inline struct max3100_port *to_max3100_port(struct uart_port *port)
+{
+       return container_of(port, struct max3100_port, port);
+}
 
 static struct max3100_port *max3100s[MAX_MAX3100]; /* the chips */
 static DEFINE_MUTEX(max3100s_lock);               /* race on probe */