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]

Reply via email to