8250_men_mcb: Fix unsigned comparison with less than zero
authorJiapeng Chong <jiapeng.chong@linux.alibaba.com>
Thu, 3 Aug 2023 08:47:53 +0000 (16:47 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 4 Aug 2023 13:06:51 +0000 (15:06 +0200)
The data->line[i] is defined as unsigned int type, if(data->line[i] < 0)
is invalid, so replace data->line[i] with res.

./drivers/tty/serial/8250/8250_men_mcb.c:223:6-19: WARNING: Unsigned expression compared with zero: data->line[i] < 0.

Reported-by: Abaci Robot <abaci@linux.alibaba.com>
Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=6088
Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20230803084753.51253-1-jiapeng.chong@linux.alibaba.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250_men_mcb.c

index 5f301195575d4a971a514b5547f7ccb92909d49e..c27c52d18dfa57956d2af24d409b6d48718ca1e4 100644 (file)
@@ -222,11 +222,13 @@ static int serial_8250_men_mcb_probe(struct mcb_device *mdev,
                                            + data->offset[i];
 
                /* ok, register the port */
-               data->line[i] = serial8250_register_8250_port(&uart);
-               if (data->line[i] < 0) {
+               res = serial8250_register_8250_port(&uart);
+               if (res < 0) {
                        dev_err(&mdev->dev, "unable to register UART port\n");
-                       return data->line[i];
+                       return res;
                }
+
+               data->line[i] = res;
                dev_info(&mdev->dev, "found MCB UART: ttyS%d\n", data->line[i]);
        }