• Brett Creeley's avatar
    ionic: Correctly print AQ errors if completions aren't received · bc43ed4f
    Brett Creeley authored
    Recent changes went into the driver to allow flexibility when
    printing error messages. Unfortunately this had the unexpected
    consequence of printing confusing messages like the following:
    
    IONIC_CMD_RX_FILTER_ADD (31) failed: IONIC_RC_SUCCESS (-6)
    
    In cases like this the completion of the admin queue command never
    completes, so the completion status is 0, hence IONIC_RC_SUCCESS
    is printed even though the command clearly failed. For example,
    this could happen when the driver tries to add a filter and at
    the same time the FW goes through a reset, so the AQ command
    never completes.
    
    Fix this by forcing the FW completion status to IONIC_RC_ERROR
    in cases where we never get the completion.
    
    Fixes: 8c9d956a ("ionic: allow adminq requests to override default error message")
    Signed-off-by: default avatarBrett Creeley <brett@pensando.io>
    Signed-off-by: default avatarShannon Nelson <snelson@pensando.io>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    bc43ed4f
ionic_main.c 16 KB