Signed-off-by: Bert Kenward <bkenw...@solarflare.com>
---
 drivers/net/ethernet/sfc/mcdi.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/sfc/mcdi.c b/drivers/net/ethernet/sfc/mcdi.c
index d28e7dd..9fbc12a 100644
--- a/drivers/net/ethernet/sfc/mcdi.c
+++ b/drivers/net/ethernet/sfc/mcdi.c
@@ -548,7 +548,10 @@ static bool efx_mcdi_complete_async(struct efx_mcdi_iface 
*mcdi, bool timeout)
                efx_mcdi_display_error(efx, async->cmd, async->inlen, errbuf,
                                       err_len, rc);
        }
-       async->complete(efx, async->cookie, rc, outbuf, data_len);
+
+       if (async->complete)
+               async->complete(efx, async->cookie, rc, outbuf,
+                               min(async->outlen, data_len));
        kfree(async);
 
        efx_mcdi_release(mcdi);
-- 
2.7.4


Reply via email to