Re: [PATCH V6 XRT Alveo 08/20] fpga: xrt: driver infrastructure
From: Tom Rix <trix@redhat.com>
Date: 2021-05-13 15:27:28
Also in:
linux-fpga, lkml
From: Tom Rix <trix@redhat.com>
Date: 2021-05-13 15:27:28
Also in:
linux-fpga, lkml
On 5/11/21 6:53 PM, Lizhi Hou wrote:
Infrastructure code providing APIs for managing leaf driver instance groups, facilitating inter-leaf driver calls and root calls. Signed-off-by: Sonal Santan <redacted> Signed-off-by: Max Zhen <redacted> Signed-off-by: Lizhi Hou <redacted> Reviewed-by: Tom Rix <trix@redhat.com>
+
+int xrt_subdev_root_request(struct xrt_device *self, u32 cmd, void *arg)
+{
+ struct device *dev = DEV(self);
+ struct xrt_subdev_platdata *pdata = DEV_PDATA(self);
+
+ WARN_ON(!pdata->xsp_root_cb);
+ return (*pdata->xsp_root_cb)(dev->parent, pdata->xsp_root_cb_arg, cmd, arg);I am running v6 through clang's static analyzer. It reports this problem drivers/fpga/xrt/lib/subdev.c:72:9: warning: Called function pointer is null (null dereference) return (*pdata->xsp_root_cb)(dev->parent, pdata->xsp_root_cb_arg, cmd, arg); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Though there is a warn_on, can you also add a return -EINVAL; To cover this case? Tom
+}