Hi Michael,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net/master]
url:
https://github.com/0day-ci/linux/commits/Michael-Chan/bnxt_en-Bug-fixes/2...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git
1aa3b2207e889a948049c9a8016cedb0218c2389
config: arm64-buildonly-randconfig-r003-20211115 (attached as .config)
compiler: aarch64-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
#
https://github.com/0day-ci/linux/commit/b17bc036418692ffb8055b7cbcdff979e...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review Michael-Chan/bnxt_en-Bug-fixes/20211115-154005
git checkout b17bc036418692ffb8055b7cbcdff979ec378e37
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir
ARCH=arm64 SHELL=/bin/bash drivers/net/ethernet/broadcom/bnxt/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c: In function
'bnxt_dl_reload_down':
> drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c:445:60: error:
'struct bnxt' has no member named 'sriov_cfg'
445 |
if (BNXT_PF(bp) && (bp->pf.active_vfs || bp->sriov_cfg)) {
| ^~
vim +445 drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c
433
434 static int bnxt_dl_reload_down(struct devlink *dl, bool netns_change,
435 enum devlink_reload_action action,
436 enum devlink_reload_limit limit,
437 struct netlink_ext_ack *extack)
438 {
439 struct bnxt *bp = bnxt_get_bp_from_dl(dl);
440 int rc = 0;
441
442 switch (action) {
443 case DEVLINK_RELOAD_ACTION_DRIVER_REINIT: {
444 rtnl_lock();
445 if (BNXT_PF(bp) && (bp->pf.active_vfs ||
bp->sriov_cfg)) {
446 NL_SET_ERR_MSG_MOD(extack,
447 "reload is unsupported while VFs are allocated or being
configured");
448 rtnl_unlock();
449 return -EOPNOTSUPP;
450 }
451 if (bp->dev->reg_state == NETREG_UNREGISTERED) {
452 rtnl_unlock();
453 return -ENODEV;
454 }
455 bnxt_ulp_stop(bp);
456 if (netif_running(bp->dev)) {
457 rc = bnxt_close_nic(bp, true, true);
458 if (rc) {
459 NL_SET_ERR_MSG_MOD(extack, "Failed to close");
460 dev_close(bp->dev);
461 rtnl_unlock();
462 break;
463 }
464 }
465 bnxt_vf_reps_free(bp);
466 rc = bnxt_hwrm_func_drv_unrgtr(bp);
467 if (rc) {
468 NL_SET_ERR_MSG_MOD(extack, "Failed to deregister");
469 if (netif_running(bp->dev))
470 dev_close(bp->dev);
471 rtnl_unlock();
472 break;
473 }
474 bnxt_cancel_reservations(bp, false);
475 bnxt_free_ctx_mem(bp);
476 kfree(bp->ctx);
477 bp->ctx = NULL;
478 break;
479 }
480 case DEVLINK_RELOAD_ACTION_FW_ACTIVATE: {
481 if (limit == DEVLINK_RELOAD_LIMIT_NO_RESET)
482 return bnxt_dl_livepatch_activate(bp, extack);
483 if (~bp->fw_cap & BNXT_FW_CAP_HOT_RESET) {
484 NL_SET_ERR_MSG_MOD(extack, "Device not capable, requires reboot");
485 return -EOPNOTSUPP;
486 }
487 if (!bnxt_hwrm_reset_permitted(bp)) {
488 NL_SET_ERR_MSG_MOD(extack,
489 "Reset denied by firmware, it may be inhibited by remote
driver");
490 return -EPERM;
491 }
492 rtnl_lock();
493 if (bp->dev->reg_state == NETREG_UNREGISTERED) {
494 rtnl_unlock();
495 return -ENODEV;
496 }
497 if (netif_running(bp->dev))
498 set_bit(BNXT_STATE_FW_ACTIVATE, &bp->state);
499 rc = bnxt_hwrm_firmware_reset(bp->dev,
500 FW_RESET_REQ_EMBEDDED_PROC_TYPE_CHIP,
501 FW_RESET_REQ_SELFRST_STATUS_SELFRSTASAP,
502 FW_RESET_REQ_FLAGS_RESET_GRACEFUL |
503 FW_RESET_REQ_FLAGS_FW_ACTIVATION);
504 if (rc) {
505 NL_SET_ERR_MSG_MOD(extack, "Failed to activate firmware");
506 clear_bit(BNXT_STATE_FW_ACTIVATE, &bp->state);
507 rtnl_unlock();
508 }
509 break;
510 }
511 default:
512 rc = -EOPNOTSUPP;
513 }
514
515 return rc;
516 }
517
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org