On Mon, Feb 15, 2021 at 02:03:31PM +0100, Jinpu Wang wrote: > Hi, Dan, > > On Mon, Feb 15, 2021 at 1:44 PM Dan Carpenter <[email protected]> > wrote: > > > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git > > wip/jgg-for-next > > head: c88b31c46cefe50f524a1ad3deaf1599bc9ee2e6 > > commit: f0751419d3a15fb06d9b7d9435312472c3cb122d [198/203] RDMA/rtrs: Only > > allow addition of path to an already established session > > config: ia64-randconfig-m031-20210209 (attached as .config) > > compiler: ia64-linux-gcc (GCC) 9.3.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/ulp/rtrs/rtrs-srv.c:1805 rtrs_rdma_connect() warn: > > passing zero to 'PTR_ERR' > > > > vim +/PTR_ERR +1805 drivers/infiniband/ulp/rtrs/rtrs-srv.c > > > > 9cb837480424e7 Jack Wang 2020-05-11 1760 static int > > rtrs_rdma_connect(struct rdma_cm_id *cm_id, > > 9cb837480424e7 Jack Wang 2020-05-11 1761 > > const struct rtrs_msg_conn_req *msg, > > 9cb837480424e7 Jack Wang 2020-05-11 1762 > > size_t len) > > 9cb837480424e7 Jack Wang 2020-05-11 1763 { > > 9cb837480424e7 Jack Wang 2020-05-11 1764 struct rtrs_srv_ctx > > *ctx = cm_id->context; > > 9cb837480424e7 Jack Wang 2020-05-11 1765 struct > > rtrs_srv_sess *sess; > > 9cb837480424e7 Jack Wang 2020-05-11 1766 struct rtrs_srv > > *srv; > > 9cb837480424e7 Jack Wang 2020-05-11 1767 > > 9cb837480424e7 Jack Wang 2020-05-11 1768 u16 version, > > con_num, cid; > > 9cb837480424e7 Jack Wang 2020-05-11 1769 u16 recon_cnt; > > 9cb837480424e7 Jack Wang 2020-05-11 1770 int err; > > 9cb837480424e7 Jack Wang 2020-05-11 1771 > > 9cb837480424e7 Jack Wang 2020-05-11 1772 if (len < > > sizeof(*msg)) { > > 9cb837480424e7 Jack Wang 2020-05-11 1773 > > pr_err("Invalid RTRS connection request\n"); > > 9cb837480424e7 Jack Wang 2020-05-11 1774 goto > > reject_w_econnreset; > > 9cb837480424e7 Jack Wang 2020-05-11 1775 } > > 9cb837480424e7 Jack Wang 2020-05-11 1776 if > > (le16_to_cpu(msg->magic) != RTRS_MAGIC) { > > 9cb837480424e7 Jack Wang 2020-05-11 1777 > > pr_err("Invalid RTRS magic\n"); > > 9cb837480424e7 Jack Wang 2020-05-11 1778 goto > > reject_w_econnreset; > > 9cb837480424e7 Jack Wang 2020-05-11 1779 } > > 9cb837480424e7 Jack Wang 2020-05-11 1780 version = > > le16_to_cpu(msg->version); > > 9cb837480424e7 Jack Wang 2020-05-11 1781 if (version >> 8 != > > RTRS_PROTO_VER_MAJOR) { > > 9cb837480424e7 Jack Wang 2020-05-11 1782 > > pr_err("Unsupported major RTRS version: %d, expected %d\n", > > 9cb837480424e7 Jack Wang 2020-05-11 1783 > > version >> 8, RTRS_PROTO_VER_MAJOR); > > 9cb837480424e7 Jack Wang 2020-05-11 1784 goto > > reject_w_econnreset; > > 9cb837480424e7 Jack Wang 2020-05-11 1785 } > > 9cb837480424e7 Jack Wang 2020-05-11 1786 con_num = > > le16_to_cpu(msg->cid_num); > > 9cb837480424e7 Jack Wang 2020-05-11 1787 if (con_num > 4096) > > { > > 9cb837480424e7 Jack Wang 2020-05-11 1788 /* Sanity > > check */ > > 9cb837480424e7 Jack Wang 2020-05-11 1789 pr_err("Too > > many connections requested: %d\n", con_num); > > 9cb837480424e7 Jack Wang 2020-05-11 1790 goto > > reject_w_econnreset; > > 9cb837480424e7 Jack Wang 2020-05-11 1791 } > > 9cb837480424e7 Jack Wang 2020-05-11 1792 cid = > > le16_to_cpu(msg->cid); > > 9cb837480424e7 Jack Wang 2020-05-11 1793 if (cid >= con_num) > > { > > 9cb837480424e7 Jack Wang 2020-05-11 1794 /* Sanity > > check */ > > 9cb837480424e7 Jack Wang 2020-05-11 1795 > > pr_err("Incorrect cid: %d >= %d\n", cid, con_num); > > 9cb837480424e7 Jack Wang 2020-05-11 1796 goto > > reject_w_econnreset; > > 9cb837480424e7 Jack Wang 2020-05-11 1797 } > > 9cb837480424e7 Jack Wang 2020-05-11 1798 recon_cnt = > > le16_to_cpu(msg->recon_cnt); > > f0751419d3a15f Md Haris Iqbal 2021-02-12 1799 srv = > > get_or_create_srv(ctx, &msg->paths_uuid, msg->first_conn); > > d715ff8acbd587 Guoqing Jiang 2020-10-23 1800 /* > > d715ff8acbd587 Guoqing Jiang 2020-10-23 1801 * "refcount == 0" > > happens if a previous thread calls get_or_create_srv > > d715ff8acbd587 Guoqing Jiang 2020-10-23 1802 * allocate srv, > > but chunks of srv are not allocated yet. > > d715ff8acbd587 Guoqing Jiang 2020-10-23 1803 */ > > f0751419d3a15f Md Haris Iqbal 2021-02-12 1804 if (IS_ERR(srv) || > > refcount_read(&srv->refcount) == 0) { > > f0751419d3a15f Md Haris Iqbal 2021-02-12 @1805 err = > > PTR_ERR(srv); > > > > It's not 100% clear to me that an error code is required when > > refcount_read() is zero. Maybe "err = 0;" is okay in that situation? > I don't see how srv can be zero
The cross function database was probably out of date. regards, dan carpenter _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
