Re: [PATCH net-next v6 5/7] net: ethtool: Add new power limit get and set features

From: Jakub Kicinski
Date: Fri Jul 05 2024 - 21:41:29 EST


On Thu, 04 Jul 2024 10:12:00 +0200 Kory Maincent wrote:
> + if (tb[ETHTOOL_A_PODL_PSE_ADMIN_CONTROL] ||
> + tb[ETHTOOL_A_C33_PSE_ADMIN_CONTROL]) {
> + struct pse_control_config config = {};
> +
> + if (pse_has_podl(phydev->psec))
> + config.podl_admin_control = nla_get_u32(tb[ETHTOOL_A_PODL_PSE_ADMIN_CONTROL]);
> + if (pse_has_c33(phydev->psec))
> + config.c33_admin_control = nla_get_u32(tb[ETHTOOL_A_C33_PSE_ADMIN_CONTROL]);

This smells of null-deref if user only passes one of the attributes.
But the fix should probably be in ethnl_set_pse_validate() so it won't
conflict (I'm speculating that it will need to go to net).