summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2013-10-09 17:17:27 +0400
committerBen Hutchings <bhutchings@solarflare.com>2013-12-13 02:07:00 +0400
commit065e64c4b211a4ad18d8c39ce987edef645bdaf0 (patch)
treeee92b9afbbb32e4ec1f40adb949403b7f248da4e
parenta84f3bf909c7ef5dbadd3401c95376d8ea44b2fe (diff)
downloadlinux-065e64c4b211a4ad18d8c39ce987edef645bdaf0.tar.xz
sfc: Return EBUSY for filter insertion on EF10, matching Falcon/Siena
The MC firmware will return error MC_CMD_ERR_ENOSPC if filter insertion fails due to lack of resources. The net driver's filter implementation for Falcon-architecture returns EBUSY. They should behave consistently, so for EF10 change ENOSPC to EBUSY. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
-rw-r--r--drivers/net/ethernet/sfc/ef10.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/sfc/ef10.c b/drivers/net/ethernet/sfc/ef10.c
index 45af374b1df9..ca922b958a2e 100644
--- a/drivers/net/ethernet/sfc/ef10.c
+++ b/drivers/net/ethernet/sfc/ef10.c
@@ -2259,6 +2259,8 @@ static int efx_ef10_filter_push(struct efx_nic *efx,
outbuf, sizeof(outbuf), NULL);
if (rc == 0)
*handle = MCDI_QWORD(outbuf, FILTER_OP_OUT_HANDLE);
+ if (rc == -ENOSPC)
+ rc = -EBUSY; /* to match efx_farch_filter_insert() */
return rc;
}