Hi Bob, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on c9eeabac5e8d27a3f40280908e089058bab39edb] url: https://github.com/intel-lab-lkp/linux/commits/Bob-Pearson/RDMA-rxe-Enable-scatter-gather-support-for-skbs/20221028-025839 base: c9eeabac5e8d27a3f40280908e089058bab39edb patch link: https://lore.kernel.org/r/20221027185510.33808-4-rpearsonhpe%40gmail.com patch subject: [PATCH for-next 03/17] RDMA/rxe: Isolate code to build request packet config: arm64-allyesconfig compiler: clang version 16.0.0 (https://github.com/llvm/llvm-project 791a7ae1ba3efd6bca96338e10ffde557ba83920) 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 # install arm64 cross compiling tool for clang build # apt-get install binutils-aarch64-linux-gnu # https://github.com/intel-lab-lkp/linux/commit/574d2b0517821f3c83c7962814b820a6880e2224 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Bob-Pearson/RDMA-rxe-Enable-scatter-gather-support-for-skbs/20221028-025839 git checkout 574d2b0517821f3c83c7962814b820a6880e2224 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/infiniband/sw/rxe/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot All warnings (new ones prefixed by >>): >> drivers/infiniband/sw/rxe/rxe_req.c:482:6: warning: variable 'skb' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized] if (unlikely(!av)) ^~~~~~~~~~~~~ include/linux/compiler.h:78:22: note: expanded from macro 'unlikely' # define unlikely(x) __builtin_expect(!!(x), 0) ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/infiniband/sw/rxe/rxe_req.c:523:6: note: uninitialized use occurs here if (skb) ^~~ drivers/infiniband/sw/rxe/rxe_req.c:482:2: note: remove the 'if' if its condition is always false if (unlikely(!av)) ^~~~~~~~~~~~~~~~~~ drivers/infiniband/sw/rxe/rxe_req.c:465:21: note: initialize the variable 'skb' to silence this warning struct sk_buff *skb; ^ = NULL 1 warning generated. vim +482 drivers/infiniband/sw/rxe/rxe_req.c 458 459 static struct sk_buff *rxe_init_req_packet(struct rxe_qp *qp, 460 struct rxe_send_wqe *wqe, 461 int opcode, u32 payload, 462 struct rxe_pkt_info *pkt) 463 { 464 struct rxe_dev *rxe = to_rdev(qp->ibqp.device); 465 struct sk_buff *skb; 466 struct rxe_av *av; 467 struct rxe_ah *ah; 468 void *padp; 469 int pad; 470 int err = -EINVAL; 471 472 pkt->rxe = rxe; 473 pkt->opcode = opcode; 474 pkt->qp = qp; 475 pkt->psn = qp->req.psn; 476 pkt->mask = rxe_opcode[opcode].mask; 477 pkt->wqe = wqe; 478 pkt->port_num = 1; 479 480 /* get address vector and address handle for UD qps only */ 481 av = rxe_get_av(pkt, &ah); > 482 if (unlikely(!av)) 483 goto err_out; 484 485 /* length from start of bth to end of icrc */ 486 pad = (-payload) & 0x3; 487 pkt->paylen = rxe_opcode[opcode].length + payload + 488 pad + RXE_ICRC_SIZE; 489 490 /* init skb */ 491 skb = rxe_init_packet(rxe, av, pkt); 492 if (unlikely(!skb)) 493 goto err_out; 494 495 rxe_init_roce_hdrs(qp, wqe, pkt, pad); 496 497 if (pkt->mask & RXE_WRITE_OR_SEND_MASK) { 498 err = rxe_init_payload(qp, wqe, pkt, payload); 499 if (err) 500 goto err_out; 501 } 502 503 if (pad) { 504 padp = payload_addr(pkt) + payload; 505 memset(padp, 0, pad); 506 } 507 508 /* IP and UDP network headers */ 509 err = rxe_prepare(av, pkt, skb); 510 if (err) 511 goto err_out; 512 513 if (ah) 514 rxe_put(ah); 515 516 return skb; 517 518 err_out: 519 if (err == -EFAULT) 520 wqe->status = IB_WC_LOC_PROT_ERR; 521 else 522 wqe->status = IB_WC_LOC_QP_OP_ERR; 523 if (skb) 524 kfree_skb(skb); 525 if (ah) 526 rxe_put(ah); 527 528 return NULL; 529 } 530 -- 0-DAY CI Kernel Test Service https://01.org/lkp