Re: [PATCH V1 2/3] drivers/fpga/amd: Add communication with firmware

From: kernel test robot
Date: Wed Oct 09 2024 - 01:30:40 EST


Hi David,

kernel test robot noticed the following build warnings:

[auto build test WARNING on linus/master]
[also build test WARNING on v6.12-rc2 next-20241008]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/David-Zhang/drivers-fpga-amd-Add-communication-with-firmware/20241008-060253
base: linus/master
patch link: https://lore.kernel.org/r/20241007220128.3023169-2-yidong.zhang%40amd.com
patch subject: [PATCH V1 2/3] drivers/fpga/amd: Add communication with firmware
config: i386-randconfig-054-20241009 (https://download.01.org/0day-ci/archive/20241009/202410091338.c38eM1Hd-lkp@xxxxxxxxx/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202410091338.c38eM1Hd-lkp@xxxxxxxxx/

cocci warnings: (new ones prefixed by >>)
>> drivers/fpga/amd/vmgmt-rm.c:183:2-3: Unneeded semicolon
--
>> drivers/fpga/amd/vmgmt-rm.c:498:10-17: WARNING: vzalloc should be used for buffer, instead of vmalloc/memset

vim +183 drivers/fpga/amd/vmgmt-rm.c

146
147 int rm_queue_create_cmd(struct rm_device *rdev, enum rm_queue_opcode opcode,
148 struct rm_cmd **cmd_ptr)
149 {
150 struct rm_cmd *cmd = NULL;
151 int ret, id;
152 u16 size;
153
154 if (rdev->firewall_tripped)
155 return -ENODEV;
156
157 cmd = kzalloc(sizeof(*cmd), GFP_KERNEL);
158 if (!cmd)
159 return -ENOMEM;
160 cmd->rdev = rdev;
161
162 switch (opcode) {
163 case RM_QUEUE_OP_LOAD_XCLBIN:
164 fallthrough;
165 case RM_QUEUE_OP_LOAD_FW:
166 fallthrough;
167 case RM_QUEUE_OP_LOAD_APU_FW:
168 size = sizeof(struct rm_cmd_sq_bin);
169 break;
170 case RM_QUEUE_OP_GET_LOG_PAGE:
171 size = sizeof(struct rm_cmd_sq_log_page);
172 break;
173 case RM_QUEUE_OP_IDENTIFY:
174 size = 0;
175 break;
176 case RM_QUEUE_OP_VMR_CONTROL:
177 size = sizeof(struct rm_cmd_sq_ctrl);
178 break;
179 default:
180 vmgmt_err(rdev->vdev, "Invalid cmd opcode %d", opcode);
181 ret = -EINVAL;
182 goto error;
> 183 };
184
185 cmd->opcode = opcode;
186 cmd->sq_msg.hdr.opcode = FIELD_PREP(RM_CMD_SQ_HDR_OPS_MSK, opcode);
187 cmd->sq_msg.hdr.msg_size = FIELD_PREP(RM_CMD_SQ_HDR_SIZE_MSK, size);
188
189 id = ida_alloc_range(&rm_cmd_ids, RM_CMD_ID_MIN, RM_CMD_ID_MAX, GFP_KERNEL);
190 if (id < 0) {
191 vmgmt_err(rdev->vdev, "Failed to alloc cmd ID: %d", id);
192 ret = id;
193 goto error;
194 }
195 cmd->sq_msg.hdr.id = id;
196
197 init_completion(&cmd->executed);
198
199 *cmd_ptr = cmd;
200 return 0;
201 error:
202 kfree(cmd);
203 return ret;
204 }
205

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki