cxgb4: Use struct_group() for memcpy() region
authorKees Cook <keescook@chromium.org>
Thu, 18 Nov 2021 18:42:35 +0000 (10:42 -0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 19 Nov 2021 11:17:09 +0000 (11:17 +0000)
commit641d3ef00ce3982aadceeeba6c3e24bee43ce62e
tree4af1c86b89f87bb158ed3958fdabc814657aeea6
parent88181f1d3474f59fb897ed01e4e4d8f77802fa4a
cxgb4: Use struct_group() for memcpy() region

In preparation for FORTIFY_SOURCE performing compile-time and run-time
field bounds checking for memcpy(), memmove(), and memset(), avoid
intentionally writing across neighboring fields.

Use struct_group() in struct fw_eth_tx_pkt_vm_wr around members ethmacdst,
ethmacsrc, ethtype, and vlantci, so they can be referenced together. This
will allow memcpy() and sizeof() to more easily reason about sizes,
improve readability, and avoid future warnings about writing beyond the
end of ethmacdst.

"pahole" shows no size nor member offset changes to struct
fw_eth_tx_pkt_vm_wr. "objdump -d" shows no object code changes.

Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb4/sge.c
drivers/net/ethernet/chelsio/cxgb4/t4fw_api.h
drivers/net/ethernet/chelsio/cxgb4vf/sge.c