cxgb4: Use struct_size() helper
authorGustavo A. R. Silva <gustavoars@kernel.org>
Fri, 19 Jun 2020 18:01:49 +0000 (13:01 -0500)
committerDavid S. Miller <davem@davemloft.net>
Fri, 19 Jun 2020 20:42:08 +0000 (13:42 -0700)
Make use of the struct_size() helper instead of an open-coded version
in order to avoid any potential type mistakes.

This code was detected with the help of Coccinelle and, audited and
fixed manually.

Addresses-KSPP-ID: https://github.com/KSPP/linux/issues/83
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb4/sge.c

index 1359158..b3da3d0 100644 (file)
@@ -2431,7 +2431,7 @@ int cxgb4_ethofld_send_flowc(struct net_device *dev, u32 eotid, u32 tc)
        struct sk_buff *skb;
        int ret = 0;
 
-       len = sizeof(*flowc) + sizeof(struct fw_flowc_mnemval) * nparams;
+       len = struct_size(flowc, mnemval, nparams);
        len16 = DIV_ROUND_UP(len, 16);
 
        entry = cxgb4_lookup_eotid(&adap->tids, eotid);