summaryrefslogtreecommitdiff
path: root/include/uapi
diff options
context:
space:
mode:
authorRatheesh Kannoth <rkannoth@marvell.com>2026-05-21 12:52:57 +0300
committerJakub Kicinski <kuba@kernel.org>2026-05-26 00:03:06 +0300
commitd603517771d8e08a2d8fc9e1f7682ce393d3973a (patch)
treed897f11904b5bc3fa34638e846a9b9df7c00abcf /include/uapi
parente57516529a5bd9e228d1cd80b460fbc1c34bbea4 (diff)
downloadlinux-d603517771d8e08a2d8fc9e1f7682ce393d3973a.tar.xz
devlink: pass param values by pointer
union devlink_param_value grows substantially once U64 array parameters are added to devlink (from 32 bytes to over 264 bytes). devlink_nl_param_value_fill_one() and devlink_nl_param_value_put() copy the union by value in several places. Passing two instances as value arguments alone consumes over 528 bytes of stack; combined with deeper call chains the parameter stack can approach 800 bytes and trip CONFIG_FRAME_WARN more easily. Switch internal helpers and exported driver APIs to pass pointers to union devlink_param_value rather than passing the union by value. Reviewed-by: Petr Machata <petrm@nvidia.com> # for mlxsw Acked-by: Przemek Kitszel <przemyslaw.kitszel@intel.com> Reviewed-by: Arthur Kiyanovski <akiyano@amazon.com> #for ena Signed-off-by: Ratheesh Kannoth <rkannoth@marvell.com> Link: https://patch.msgid.link/20260521095303.2395584-4-rkannoth@marvell.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'include/uapi')
0 files changed, 0 insertions, 0 deletions