OSDN Git Service

ethtool: handle info/flash data copying outside rtnl_lock
authorJakub Kicinski <kuba@kernel.org>
Sat, 30 Oct 2021 17:18:49 +0000 (10:18 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 1 Nov 2021 13:26:07 +0000 (13:26 +0000)
commit095cfcfe13e5a6599cf0a41fe1e8bbfa76cd1c9d
tree28b02c6b4d14e41257ee0d8883d774e17a8d290c
parentf49deaa64af10276ef0c9a09558152f990b5f3b1
ethtool: handle info/flash data copying outside rtnl_lock

We need to increase the lifetime of the data for .get_info
and .flash_update beyond their handlers inside rtnl_lock.

Allocate a union on the heap and use it instead.

Note that we now copy the ethcmd before we lookup dev,
hopefully there is no crazy user space depending on error
codes.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ethtool/ioctl.c