kernel: use struct group to wipe psb6970 volatile priv data
authorAleksander Jan Bajkowski <olek2@wp.pl>
Thu, 25 May 2023 20:20:15 +0000 (22:20 +0200)
committerChristian Lamparter <chunkeey@gmail.com>
Thu, 8 Jun 2023 15:25:22 +0000 (17:25 +0200)
commitd69becd3071d560cd1c9ea655cbba26adce91f61
tree8ac37a6222412f35043bff1ee09459df3e7caae0
parentcc87f6629b8a120420075cd984a4e6ece6c669df
kernel: use struct group to wipe psb6970 volatile priv data

Instead of reference vlan and do strange subtraction, use the handy
struct_group() to create a virtual struct of the same size of the
members. This permits to have a more secure memset and fix compilation
warning in 6.1 where additional checks are done.

Fix compilation warning:
| inlined from 'psb6970_reset_switch' at drivers/net/phy/psb6970.c:275:2:
| ./include/linux/fortify-string.h:314:25: error: call to '__write_overflow_field'
| declared with attribute warning: detected write beyond size of field
| (1st parameter); maybe use struct_group()? [-Werror=attribute-warning]
|  314 |                         __write_overflow_field(p_size_field, size);
|      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|cc1: all warnings being treated as errors

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
target/linux/generic/files/drivers/net/phy/psb6970.c