CC: [email protected] In-Reply-To: <[email protected]> References: <[email protected]> TO: Johan Hovold <[email protected]>
Hi Johan, I love your patch! Perhaps something to improve: [auto build test WARNING on johan-usb-serial/usb-next] [also build test WARNING on usb/usb-testing linus/master balbi-usb/testing/next peter-chen-usb/for-usb-next v5.16-rc8] [cannot apply to next-20220105] [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] url: https://github.com/0day-ci/linux/commits/Johan-Hovold/gnss-add-USB-support/20211220-192005 base: https://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial.git usb-next :::::: branch date: 2 weeks ago :::::: commit date: 2 weeks ago config: parisc-randconfig-m031-20220105 (https://download.01.org/0day-ci/archive/20220106/[email protected]/config) compiler: hppa-linux-gcc (GCC) 11.2.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <[email protected]> Reported-by: Dan Carpenter <[email protected]> smatch warnings: drivers/gnss/usb.c:155 gnss_usb_probe() warn: missing error code 'ret' vim +/ret +155 drivers/gnss/usb.c 8b66a253fbf538 Johan Hovold 2021-12-20 116 8b66a253fbf538 Johan Hovold 2021-12-20 117 static int gnss_usb_probe(struct usb_interface *intf, const struct usb_device_id *id) 8b66a253fbf538 Johan Hovold 2021-12-20 118 { 8b66a253fbf538 Johan Hovold 2021-12-20 119 struct usb_device *udev = interface_to_usbdev(intf); 8b66a253fbf538 Johan Hovold 2021-12-20 120 struct usb_endpoint_descriptor *in, *out; 8b66a253fbf538 Johan Hovold 2021-12-20 121 struct gnss_device *gdev; 8b66a253fbf538 Johan Hovold 2021-12-20 122 struct gnss_usb *gusb; 8b66a253fbf538 Johan Hovold 2021-12-20 123 struct urb *urb; 8b66a253fbf538 Johan Hovold 2021-12-20 124 size_t buf_len; 8b66a253fbf538 Johan Hovold 2021-12-20 125 void *buf; 8b66a253fbf538 Johan Hovold 2021-12-20 126 int ret; 8b66a253fbf538 Johan Hovold 2021-12-20 127 8b66a253fbf538 Johan Hovold 2021-12-20 128 ret = usb_find_common_endpoints(intf->cur_altsetting, &in, &out, NULL, 8b66a253fbf538 Johan Hovold 2021-12-20 129 NULL); 8b66a253fbf538 Johan Hovold 2021-12-20 130 if (ret) 8b66a253fbf538 Johan Hovold 2021-12-20 131 return ret; 8b66a253fbf538 Johan Hovold 2021-12-20 132 8b66a253fbf538 Johan Hovold 2021-12-20 133 gusb = kzalloc(sizeof(*gusb), GFP_KERNEL); 8b66a253fbf538 Johan Hovold 2021-12-20 134 if (!gusb) 8b66a253fbf538 Johan Hovold 2021-12-20 135 return -ENOMEM; 8b66a253fbf538 Johan Hovold 2021-12-20 136 8b66a253fbf538 Johan Hovold 2021-12-20 137 gdev = gnss_allocate_device(&intf->dev); 8b66a253fbf538 Johan Hovold 2021-12-20 138 if (!gdev) { 8b66a253fbf538 Johan Hovold 2021-12-20 139 ret = -ENOMEM; 8b66a253fbf538 Johan Hovold 2021-12-20 140 goto err_free_gusb; 8b66a253fbf538 Johan Hovold 2021-12-20 141 } 8b66a253fbf538 Johan Hovold 2021-12-20 142 8b66a253fbf538 Johan Hovold 2021-12-20 143 gdev->ops = &gnss_usb_gnss_ops; 8b66a253fbf538 Johan Hovold 2021-12-20 144 gdev->type = GNSS_TYPE_NMEA; 8b66a253fbf538 Johan Hovold 2021-12-20 145 gnss_set_drvdata(gdev, gusb); 8b66a253fbf538 Johan Hovold 2021-12-20 146 8b66a253fbf538 Johan Hovold 2021-12-20 147 urb = usb_alloc_urb(0, GFP_KERNEL); 8b66a253fbf538 Johan Hovold 2021-12-20 148 if (!urb) 8b66a253fbf538 Johan Hovold 2021-12-20 149 goto err_put_gdev; 8b66a253fbf538 Johan Hovold 2021-12-20 150 8b66a253fbf538 Johan Hovold 2021-12-20 151 buf_len = max(usb_endpoint_maxp(in), GNSS_USB_READ_BUF_LEN); 8b66a253fbf538 Johan Hovold 2021-12-20 152 8b66a253fbf538 Johan Hovold 2021-12-20 153 buf = kzalloc(buf_len, GFP_KERNEL); 8b66a253fbf538 Johan Hovold 2021-12-20 154 if (!buf) 8b66a253fbf538 Johan Hovold 2021-12-20 @155 goto err_free_urb; 8b66a253fbf538 Johan Hovold 2021-12-20 156 8b66a253fbf538 Johan Hovold 2021-12-20 157 usb_fill_bulk_urb(urb, udev, 8b66a253fbf538 Johan Hovold 2021-12-20 158 usb_rcvbulkpipe(udev, usb_endpoint_num(in)), 8b66a253fbf538 Johan Hovold 2021-12-20 159 buf, buf_len, gnss_usb_rx_complete, gusb); 8b66a253fbf538 Johan Hovold 2021-12-20 160 8b66a253fbf538 Johan Hovold 2021-12-20 161 gusb->intf = intf; 8b66a253fbf538 Johan Hovold 2021-12-20 162 gusb->udev = udev; 8b66a253fbf538 Johan Hovold 2021-12-20 163 gusb->gdev = gdev; 8b66a253fbf538 Johan Hovold 2021-12-20 164 gusb->read_urb = urb; 8b66a253fbf538 Johan Hovold 2021-12-20 165 gusb->write_pipe = usb_sndbulkpipe(udev, usb_endpoint_num(out)); 8b66a253fbf538 Johan Hovold 2021-12-20 166 8b66a253fbf538 Johan Hovold 2021-12-20 167 ret = gnss_register_device(gdev); 8b66a253fbf538 Johan Hovold 2021-12-20 168 if (ret) 8b66a253fbf538 Johan Hovold 2021-12-20 169 goto err_free_buf; 8b66a253fbf538 Johan Hovold 2021-12-20 170 8b66a253fbf538 Johan Hovold 2021-12-20 171 usb_set_intfdata(intf, gusb); 8b66a253fbf538 Johan Hovold 2021-12-20 172 8b66a253fbf538 Johan Hovold 2021-12-20 173 return 0; 8b66a253fbf538 Johan Hovold 2021-12-20 174 8b66a253fbf538 Johan Hovold 2021-12-20 175 err_free_buf: 8b66a253fbf538 Johan Hovold 2021-12-20 176 kfree(buf); 8b66a253fbf538 Johan Hovold 2021-12-20 177 err_free_urb: 8b66a253fbf538 Johan Hovold 2021-12-20 178 usb_free_urb(urb); 8b66a253fbf538 Johan Hovold 2021-12-20 179 err_put_gdev: 8b66a253fbf538 Johan Hovold 2021-12-20 180 gnss_put_device(gdev); 8b66a253fbf538 Johan Hovold 2021-12-20 181 err_free_gusb: 8b66a253fbf538 Johan Hovold 2021-12-20 182 kfree(gusb); 8b66a253fbf538 Johan Hovold 2021-12-20 183 8b66a253fbf538 Johan Hovold 2021-12-20 184 return ret; 8b66a253fbf538 Johan Hovold 2021-12-20 185 } 8b66a253fbf538 Johan Hovold 2021-12-20 186 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected] _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
