Fri, Feb 22, 2019 at 11:07:57PM CET, jakub.kicin...@netronome.com wrote: >Commit 76726ccb7f46 ("devlink: add flash update command") and >commit 2d8dc5bbf4e7 ("devlink: Add support for reload") >access devlink ops without NULL-checking. Add the missing checks. >Note that all drivers currently implementing devlink pass non-NULL >ops, so this is not a problem.
Wouldn't it be better to rather put WARN_ON&fail when driver calls devlink_alloc() with NULL ops and avoid these checks in the whole code? > >Reported-by: Florian Fainelli <f.faine...@gmail.com> >Signed-off-by: Jakub Kicinski <jakub.kicin...@netronome.com> >--- > net/core/devlink.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > >diff --git a/net/core/devlink.c b/net/core/devlink.c >index 78c6ea1870ca..38cb0239dede 100644 >--- a/net/core/devlink.c >+++ b/net/core/devlink.c >@@ -2651,7 +2651,7 @@ static int devlink_nl_cmd_reload(struct sk_buff *skb, >struct genl_info *info) > struct devlink *devlink = info->user_ptr[0]; > int err; > >- if (!devlink->ops->reload) >+ if (!devlink->ops || !devlink->ops->reload) > return -EOPNOTSUPP; > > err = devlink_resources_validate(devlink, NULL, info); >@@ -2669,7 +2669,7 @@ static int devlink_nl_cmd_flash_update(struct sk_buff >*skb, > const char *file_name, *component; > struct nlattr *nla_component; > >- if (!devlink->ops->flash_update) >+ if (!devlink->ops || !devlink->ops->flash_update) > return -EOPNOTSUPP; > > if (!info->attrs[DEVLINK_ATTR_FLASH_UPDATE_FILE_NAME]) >-- >2.19.2 >