On Mon, Jan 27, 2020 at 01:10:10PM +0530, Devesh Sharma wrote: > > > static int bnxt_re_alloc_res(struct bnxt_re_dev *rdev) > > > { > > > + struct bnxt_qplib_ctx *qplib_ctx; > > > + struct bnxt_re_ring_attr rattr; > > > int num_vec_created = 0; > > > - dma_addr_t *pg_map; > > > int rc = 0, i; > > > - int pages; > > > u8 type; > > > > > > + memset(&rattr, 0, sizeof(rattr)); > > > > Initialize rattr to zero from the beginning and save call to memset. > I moved from static initialization to memset due to some sparse/smatch > warnings, rattr has a "pointer member". That is why you need to use = {} not the weird '= {0}' version 0 initializes the first member to zero and default initializes the rest which doesn't work properly if the first member is not an integral value. Jason