platform/mellanox: mlxbf-tmfifo: Fix a warning message
authorLiming Sun <limings@nvidia.com>
Thu, 12 Oct 2023 23:02:35 +0000 (19:02 -0400)
committerHans de Goede <hdegoede@redhat.com>
Wed, 18 Oct 2023 13:38:09 +0000 (15:38 +0200)
This commit fixes the smatch static checker warning in function
mlxbf_tmfifo_rxtx_word() which complains data not initialized at
line 634 when IS_VRING_DROP() is TRUE.

Signed-off-by: Liming Sun <limings@nvidia.com>
Link: https://lore.kernel.org/r/20231012230235.219861-1-limings@nvidia.com
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/mellanox/mlxbf-tmfifo.c

index fd38d8c..ab7d7a1 100644 (file)
@@ -609,24 +609,25 @@ static void mlxbf_tmfifo_rxtx_word(struct mlxbf_tmfifo_vring *vring,
 
        if (vring->cur_len + sizeof(u64) <= len) {
                /* The whole word. */
-               if (!IS_VRING_DROP(vring)) {
-                       if (is_rx)
+               if (is_rx) {
+                       if (!IS_VRING_DROP(vring))
                                memcpy(addr + vring->cur_len, &data,
                                       sizeof(u64));
-                       else
-                               memcpy(&data, addr + vring->cur_len,
-                                      sizeof(u64));
+               } else {
+                       memcpy(&data, addr + vring->cur_len,
+                              sizeof(u64));
                }
                vring->cur_len += sizeof(u64);
        } else {
                /* Leftover bytes. */
-               if (!IS_VRING_DROP(vring)) {
-                       if (is_rx)
+               if (is_rx) {
+                       if (!IS_VRING_DROP(vring))
                                memcpy(addr + vring->cur_len, &data,
                                       len - vring->cur_len);
-                       else
-                               memcpy(&data, addr + vring->cur_len,
-                                      len - vring->cur_len);
+               } else {
+                       data = 0;
+                       memcpy(&data, addr + vring->cur_len,
+                              len - vring->cur_len);
                }
                vring->cur_len = len;
        }