* [linux-next:master 8112/9729] net/ethtool/netlink.c:698 ethnl_perphy_start() warn: potential spectre issue 'ethnl_default_requests' [r]
@ 2025-05-09 1:48 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-05-09 1:48 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Dan Carpenter
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Maxime Chevallier <maxime.chevallier@bootlin.com>
CC: Jakub Kicinski <kuba@kernel.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: f48887a98b78880b7711aca311fbbbcaad6c4e3b
commit: 172265b44cd3c90b76f2153a15abf64520d70e4a [8112/9729] net: ethtool: Introduce per-PHY DUMP operations
:::::: branch date: 17 hours ago
:::::: commit date: 3 days ago
config: i386-randconfig-141-20250508 (https://download.01.org/0day-ci/archive/20250509/202505090940.M2T3pmPS-lkp@intel.com/config)
compiler: clang version 20.1.2 (https://github.com/llvm/llvm-project 58df0ef89dd64126512e4ee27b4ac3fd8ddf6247)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202505090940.M2T3pmPS-lkp@intel.com/
New smatch warnings:
net/ethtool/netlink.c:698 ethnl_perphy_start() warn: potential spectre issue 'ethnl_default_requests' [r]
net/ethtool/netlink.c:699 ethnl_perphy_start() warn: possible spectre second half. 'ops'
Old smatch warnings:
net/ethtool/netlink.c:644 ethnl_default_start() warn: potential spectre issue 'ethnl_default_requests' [r]
net/ethtool/netlink.c:645 ethnl_default_start() warn: possible spectre second half. 'ops'
vim +/ethnl_default_requests +698 net/ethtool/netlink.c
728480f1244200 Michal Kubecek 2019-12-27 682
172265b44cd3c9 Maxime Chevallier 2025-05-02 683 /* per-PHY ->start() handler for GET requests */
172265b44cd3c9 Maxime Chevallier 2025-05-02 684 static int ethnl_perphy_start(struct netlink_callback *cb)
172265b44cd3c9 Maxime Chevallier 2025-05-02 685 {
172265b44cd3c9 Maxime Chevallier 2025-05-02 686 struct ethnl_perphy_dump_ctx *phy_ctx = ethnl_perphy_dump_context(cb);
172265b44cd3c9 Maxime Chevallier 2025-05-02 687 const struct genl_dumpit_info *info = genl_dumpit_info(cb);
172265b44cd3c9 Maxime Chevallier 2025-05-02 688 struct ethnl_dump_ctx *ctx = &phy_ctx->ethnl_ctx;
172265b44cd3c9 Maxime Chevallier 2025-05-02 689 struct ethnl_reply_data *reply_data;
172265b44cd3c9 Maxime Chevallier 2025-05-02 690 const struct ethnl_request_ops *ops;
172265b44cd3c9 Maxime Chevallier 2025-05-02 691 struct ethnl_req_info *req_info;
172265b44cd3c9 Maxime Chevallier 2025-05-02 692 struct genlmsghdr *ghdr;
172265b44cd3c9 Maxime Chevallier 2025-05-02 693 int ret;
172265b44cd3c9 Maxime Chevallier 2025-05-02 694
172265b44cd3c9 Maxime Chevallier 2025-05-02 695 BUILD_BUG_ON(sizeof(*ctx) > sizeof(cb->ctx));
172265b44cd3c9 Maxime Chevallier 2025-05-02 696
172265b44cd3c9 Maxime Chevallier 2025-05-02 697 ghdr = nlmsg_data(cb->nlh);
172265b44cd3c9 Maxime Chevallier 2025-05-02 @698 ops = ethnl_default_requests[ghdr->cmd];
172265b44cd3c9 Maxime Chevallier 2025-05-02 @699 if (WARN_ONCE(!ops, "cmd %u has no ethnl_request_ops\n", ghdr->cmd))
172265b44cd3c9 Maxime Chevallier 2025-05-02 700 return -EOPNOTSUPP;
172265b44cd3c9 Maxime Chevallier 2025-05-02 701 req_info = kzalloc(ops->req_info_size, GFP_KERNEL);
172265b44cd3c9 Maxime Chevallier 2025-05-02 702 if (!req_info)
172265b44cd3c9 Maxime Chevallier 2025-05-02 703 return -ENOMEM;
172265b44cd3c9 Maxime Chevallier 2025-05-02 704 reply_data = kmalloc(ops->reply_data_size, GFP_KERNEL);
172265b44cd3c9 Maxime Chevallier 2025-05-02 705 if (!reply_data) {
172265b44cd3c9 Maxime Chevallier 2025-05-02 706 ret = -ENOMEM;
172265b44cd3c9 Maxime Chevallier 2025-05-02 707 goto free_req_info;
172265b44cd3c9 Maxime Chevallier 2025-05-02 708 }
172265b44cd3c9 Maxime Chevallier 2025-05-02 709
172265b44cd3c9 Maxime Chevallier 2025-05-02 710 /* Unlike per-dev dump, don't ignore dev. The dump handler
172265b44cd3c9 Maxime Chevallier 2025-05-02 711 * will notice it and dump PHYs from given dev. We only keep track of
172265b44cd3c9 Maxime Chevallier 2025-05-02 712 * the dev's ifindex, .dumpit() will grab and release the netdev itself.
172265b44cd3c9 Maxime Chevallier 2025-05-02 713 */
172265b44cd3c9 Maxime Chevallier 2025-05-02 714 ret = ethnl_default_parse(req_info, &info->info, ops, false);
172265b44cd3c9 Maxime Chevallier 2025-05-02 715 if (req_info->dev) {
172265b44cd3c9 Maxime Chevallier 2025-05-02 716 phy_ctx->ifindex = req_info->dev->ifindex;
172265b44cd3c9 Maxime Chevallier 2025-05-02 717 netdev_put(req_info->dev, &req_info->dev_tracker);
172265b44cd3c9 Maxime Chevallier 2025-05-02 718 req_info->dev = NULL;
172265b44cd3c9 Maxime Chevallier 2025-05-02 719 }
172265b44cd3c9 Maxime Chevallier 2025-05-02 720 if (ret < 0)
172265b44cd3c9 Maxime Chevallier 2025-05-02 721 goto free_reply_data;
172265b44cd3c9 Maxime Chevallier 2025-05-02 722
172265b44cd3c9 Maxime Chevallier 2025-05-02 723 ctx->ops = ops;
172265b44cd3c9 Maxime Chevallier 2025-05-02 724 ctx->req_info = req_info;
172265b44cd3c9 Maxime Chevallier 2025-05-02 725 ctx->reply_data = reply_data;
172265b44cd3c9 Maxime Chevallier 2025-05-02 726 ctx->pos_ifindex = 0;
172265b44cd3c9 Maxime Chevallier 2025-05-02 727
172265b44cd3c9 Maxime Chevallier 2025-05-02 728 return 0;
172265b44cd3c9 Maxime Chevallier 2025-05-02 729
172265b44cd3c9 Maxime Chevallier 2025-05-02 730 free_reply_data:
172265b44cd3c9 Maxime Chevallier 2025-05-02 731 kfree(reply_data);
172265b44cd3c9 Maxime Chevallier 2025-05-02 732 free_req_info:
172265b44cd3c9 Maxime Chevallier 2025-05-02 733 kfree(req_info);
172265b44cd3c9 Maxime Chevallier 2025-05-02 734
172265b44cd3c9 Maxime Chevallier 2025-05-02 735 return ret;
172265b44cd3c9 Maxime Chevallier 2025-05-02 736 }
172265b44cd3c9 Maxime Chevallier 2025-05-02 737
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2025-05-09 1:50 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-09 1:48 [linux-next:master 8112/9729] net/ethtool/netlink.c:698 ethnl_perphy_start() warn: potential spectre issue 'ethnl_default_requests' [r] kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.