RDMa/mthca: Work around -Wenum-conversion warning
authorArnd Bergmann <arnd@arndb.de>
Mon, 26 Oct 2020 21:12:30 +0000 (22:12 +0100)
committerJason Gunthorpe <jgg@nvidia.com>
Thu, 12 Nov 2020 16:47:21 +0000 (12:47 -0400)
gcc points out a suspicious mixing of enum types in a function that
converts from MTHCA_OPCODE_* values to IB_WC_* values:

drivers/infiniband/hw/mthca/mthca_cq.c: In function 'mthca_poll_one':
drivers/infiniband/hw/mthca/mthca_cq.c:607:21: warning: implicit conversion from 'enum <anonymous>' to 'enum ib_wc_opcode' [-Wenum-conversion]
  607 |    entry->opcode    = MTHCA_OPCODE_INVALID;

Nothing seems to ever check for MTHCA_OPCODE_INVALID again, no idea if
this is meaningful, but it seems harmless as it deals with an invalid
input.

Remove MTHCA_OPCODE_INVALID and set the ib_wc_opcode to 0xFF, which is
still bogus, but at least doesn't make compiler warnings.

Fixes: 2a4443a69934 ("[PATCH] IB/mthca: fill in opcode field for send completions")
Link: https://lore.kernel.org/r/20201026211311.3887003-1-arnd@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/mthca/mthca_cq.c
drivers/infiniband/hw/mthca/mthca_dev.h

index c3cfea2..36416f9 100644 (file)
@@ -604,7 +604,7 @@ static inline int mthca_poll_one(struct mthca_dev *dev,
                        entry->byte_len  = MTHCA_ATOMIC_BYTE_LEN;
                        break;
                default:
-                       entry->opcode    = MTHCA_OPCODE_INVALID;
+                       entry->opcode = 0xFF;
                        break;
                }
        } else {
index 9dbbf4d..a445160 100644 (file)
@@ -105,7 +105,6 @@ enum {
        MTHCA_OPCODE_ATOMIC_CS      = 0x11,
        MTHCA_OPCODE_ATOMIC_FA      = 0x12,
        MTHCA_OPCODE_BIND_MW        = 0x18,
-       MTHCA_OPCODE_INVALID        = 0xff
 };
 
 enum {