MIPS: netlogic: xlr: Remove erroneous check in nlm_fmn_send()
authorPaul Burton <paul.burton@mips.com>
Wed, 8 Aug 2018 16:30:56 +0000 (09:30 -0700)
committerPaul Burton <paul.burton@mips.com>
Wed, 8 Aug 2018 16:48:32 +0000 (09:48 -0700)
In nlm_fmn_send() we have a loop which attempts to send a message
multiple times in order to handle the transient failure condition of a
lack of available credit. When examining the status register to detect
the failure we check for a condition that can never be true, which falls
foul of gcc 8's -Wtautological-compare:

  In file included from arch/mips/netlogic/common/irq.c:65:
  ./arch/mips/include/asm/netlogic/xlr/fmn.h: In function 'nlm_fmn_send':
  ./arch/mips/include/asm/netlogic/xlr/fmn.h:304:22: error: bitwise
    comparison always evaluates to false [-Werror=tautological-compare]
     if ((status & 0x2) == 1)
                        ^~

If the path taken if this condition were true all we do is print a
message to the kernel console. Since failures seem somewhat expected
here (making the console message questionable anyway) and the condition
has clearly never evaluated true we simply remove it, rather than
attempting to fix it to check status correctly.

Signed-off-by: Paul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/20174/
Cc: Ganesan Ramalingam <ganesanr@broadcom.com>
Cc: James Hogan <jhogan@kernel.org>
Cc: Jayachandran C <jnair@caviumnetworks.com>
Cc: John Crispin <john@phrozen.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: linux-mips@linux-mips.org
arch/mips/include/asm/netlogic/xlr/fmn.h

index 5604db3d18362bd4585f8d721c63466647210661..d79c68fa78d9bbd0b2263180dfbf2244e13f2735 100644 (file)
@@ -301,8 +301,6 @@ static inline int nlm_fmn_send(unsigned int size, unsigned int code,
        for (i = 0; i < 8; i++) {
                nlm_msgsnd(dest);
                status = nlm_read_c2_status0();
-               if ((status & 0x2) == 1)
-                       pr_info("Send pending fail!\n");
                if ((status & 0x4) == 0)
                        return 0;
        }