On Wed, Sep 20, 2023 at 4:16 AM Zhijian Li (Fujitsu) <lizhijian@xxxxxxxxxxx> wrote: > > > > On 19/09/2023 17:30, Leon Romanovsky wrote: > > On Tue, Sep 19, 2023 at 04:26:54PM +0800, Zhu Yanjun wrote: > >> > >> 在 2023/9/19 16:17, Leon Romanovsky 写道: > >>> On Tue, Sep 19, 2023 at 10:08:06AM +0800, Zhu Yanjun wrote: > >>>> From: Zhu Yanjun <yanjun.zhu@xxxxxxxxx> > >>>> > >>>> No functionality change. The variable which is not initialized fully > >>>> will introduce potential risks. > >>> Are you sure about not being initialized? > >> > >> About this problem, I think we discussed it previously in RDMA maillist. > >> > >> And at that time, IIRC, you shared a link with me. The link is as below. > >> > >> https://www.ex-parrot.com/~chris/random/initialise.html > >> > >> From what we discussed and the above link, I think it is not initialized > >> fully. > > > > I remember that discussion and it was about slightly different thing: > > {} vs {0} in Linux kernel. > > > Well, in my mind, I thought they are the same. see: https://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html#Initializing-Structure-Members > > In current kernel, {NULL/0} is used in so many other places. beside {NULL}, another partial initializing form > struct class { > int a, b, c, d, e; > } instance = { > .a = x, > .b = y, > }; > > They are also used everywhere, it's definitely based on the truth instance.{c,d,e} to be "0". I also think they are the same. oth it is harmless. Thx > > > Thanks > > > > > > > However I don't think that I sent you that link. > > Anyway, let's take this patch as it is harmless. > > > > Thanks > > > >> > >> > >> Zhu Yanjun > >> > >>> > >>> Thanks > >>> > >>>> Signed-off-by: Zhu Yanjun <yanjun.zhu@xxxxxxxxx> > >>>> --- > >>>> drivers/infiniband/ulp/rtrs/rtrs.c | 2 +- > >>>> 1 file changed, 1 insertion(+), 1 deletion(-) > >>>> > >>>> diff --git a/drivers/infiniband/ulp/rtrs/rtrs.c b/drivers/infiniband/ulp/rtrs/rtrs.c > >>>> index 3696f367ff51..d80edfffd2e4 100644 > >>>> --- a/drivers/infiniband/ulp/rtrs/rtrs.c > >>>> +++ b/drivers/infiniband/ulp/rtrs/rtrs.c > >>>> @@ -255,7 +255,7 @@ static int create_cq(struct rtrs_con *con, int cq_vector, int nr_cqe, > >>>> static int create_qp(struct rtrs_con *con, struct ib_pd *pd, > >>>> u32 max_send_wr, u32 max_recv_wr, u32 max_sge) > >>>> { > >>>> - struct ib_qp_init_attr init_attr = {NULL}; > >>>> + struct ib_qp_init_attr init_attr = {}; > >>>> struct rdma_cm_id *cm_id = con->cm_id; > >>>> int ret; > >>>> -- > >>>> 2.40.1 > >>>>