CC: [email protected] CC: [email protected] TO: Shay Drory <[email protected]> CC: Jason Gunthorpe <[email protected]> CC: Maor Gottlieb <[email protected]> CC: Leon Romanovsky <[email protected]>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: a4849f6000e29235a2707f22e39da6b897bb9543 commit: ad50294d4d6b573654cddf09a689592414b28b45 RDMA/mlx5: Create ODP EQ only when ODP MR is created date: 8 months ago :::::: branch date: 6 hours ago :::::: commit date: 8 months ago config: ia64-randconfig-m031-20211122 (https://download.01.org/0day-ci/archive/20211126/[email protected]/config) compiler: ia64-linux-gcc (GCC) 11.2.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <[email protected]> Reported-by: Dan Carpenter <[email protected]> smatch warnings: drivers/infiniband/hw/mlx5/odp.c:1541 mlx5r_odp_create_eq() warn: missing error code 'err' vim +/err +1541 drivers/infiniband/hw/mlx5/odp.c d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1533 ad50294d4d6b573 Shay Drory 2021-03-14 1534 int mlx5r_odp_create_eq(struct mlx5_ib_dev *dev, struct mlx5_ib_pf_eq *eq) d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1535 { d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1536 struct mlx5_eq_param param = {}; ad50294d4d6b573 Shay Drory 2021-03-14 1537 int err = 0; d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1538 ad50294d4d6b573 Shay Drory 2021-03-14 1539 mutex_lock(&dev->odp_eq_mutex); ad50294d4d6b573 Shay Drory 2021-03-14 1540 if (eq->core) ad50294d4d6b573 Shay Drory 2021-03-14 @1541 goto unlock; d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1542 INIT_WORK(&eq->work, mlx5_ib_eq_pf_action); d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1543 spin_lock_init(&eq->lock); d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1544 eq->dev = dev; d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1545 d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1546 eq->pool = mempool_create_kmalloc_pool(MLX5_IB_NUM_PF_DRAIN, d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1547 sizeof(struct mlx5_pagefault)); ad50294d4d6b573 Shay Drory 2021-03-14 1548 if (!eq->pool) { ad50294d4d6b573 Shay Drory 2021-03-14 1549 err = -ENOMEM; ad50294d4d6b573 Shay Drory 2021-03-14 1550 goto unlock; ad50294d4d6b573 Shay Drory 2021-03-14 1551 } d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1552 d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1553 eq->wq = alloc_workqueue("mlx5_ib_page_fault", d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1554 WQ_HIGHPRI | WQ_UNBOUND | WQ_MEM_RECLAIM, d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1555 MLX5_NUM_CMD_EQE); d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1556 if (!eq->wq) { d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1557 err = -ENOMEM; d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1558 goto err_mempool; d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1559 } d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1560 ca390799c2aa036 Yuval Avnery 2019-06-10 1561 eq->irq_nb.notifier_call = mlx5_ib_eq_pf_int; d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1562 param = (struct mlx5_eq_param){ 81bfa206032a67f Ariel Levkovich 2019-06-10 1563 .irq_index = 0, d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1564 .nent = MLX5_IB_NUM_PF_EQE, d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1565 }; b9a7ba556207485 Yishai Hadas 2019-06-30 1566 param.mask[0] = 1ull << MLX5_EVENT_TYPE_PAGE_FAULT; 24163189da487b4 Yuval Avnery 2019-06-10 1567 eq->core = mlx5_eq_create_generic(dev->mdev, ¶m); d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1568 if (IS_ERR(eq->core)) { d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1569 err = PTR_ERR(eq->core); d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1570 goto err_wq; d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1571 } 1f8a7bee27e63d7 Yuval Avnery 2019-06-10 1572 err = mlx5_eq_enable(dev->mdev, eq->core, &eq->irq_nb); 1f8a7bee27e63d7 Yuval Avnery 2019-06-10 1573 if (err) { 1f8a7bee27e63d7 Yuval Avnery 2019-06-10 1574 mlx5_ib_err(dev, "failed to enable odp EQ %d\n", err); 1f8a7bee27e63d7 Yuval Avnery 2019-06-10 1575 goto err_eq; 1f8a7bee27e63d7 Yuval Avnery 2019-06-10 1576 } d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1577 ad50294d4d6b573 Shay Drory 2021-03-14 1578 mutex_unlock(&dev->odp_eq_mutex); d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1579 return 0; 1f8a7bee27e63d7 Yuval Avnery 2019-06-10 1580 err_eq: 1f8a7bee27e63d7 Yuval Avnery 2019-06-10 1581 mlx5_eq_destroy_generic(dev->mdev, eq->core); d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1582 err_wq: ad50294d4d6b573 Shay Drory 2021-03-14 1583 eq->core = NULL; d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1584 destroy_workqueue(eq->wq); d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1585 err_mempool: d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1586 mempool_destroy(eq->pool); ad50294d4d6b573 Shay Drory 2021-03-14 1587 unlock: ad50294d4d6b573 Shay Drory 2021-03-14 1588 mutex_unlock(&dev->odp_eq_mutex); d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1589 return err; d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1590 } d5d284b829a6eb7 Saeed Mahameed 2018-11-19 1591 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected] _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
