[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sun, 5 Apr 2020 00:07:08 +0800
From: kbuild test robot <lkp@...el.com>
To: vladimir.stankovic@...playlink.com
Cc: kbuild-all@...ts.01.org, gregkh@...uxfoundation.org,
linux-kernel@...r.kernel.org, linux-usb@...r.kernel.org,
mausb-host-devel@...playlink.com
Subject: Re: [PATCH v4 7/8] usb: mausb_host: MA-USB PAL events processing
Hi,
I love your patch! Perhaps something to improve:
[auto build test WARNING on usb/usb-testing]
[also build test WARNING on balbi-usb/next peter.chen-usb/ci-for-usb-next linus/master linux/master v5.6 next-20200403]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/vladimir-stankovic-displaylink-com/Add-MA-USB-Host-driver/20200328-042436
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@...el.com>
coccinelle warnings: (new ones prefixed by >>)
>> drivers/usb/mausb_host/utils.c:209:1-18: ERROR: nested lock+irqsave that reuses flags from line 201.
--
>> drivers/usb/mausb_host/hpal_events.c:86:46-49: ERROR: reference preceded by free on line 85
vim +209 drivers/usb/mausb_host/utils.c
182
183 static ssize_t mausb_file_write(struct file *filp, const char __user *buffer,
184 size_t size, loff_t *offset)
185 {
186 ssize_t num_of_bytes_to_write =
187 sizeof(struct mausb_events_notification);
188 struct mausb_events_notification notification;
189 unsigned long flags;
190 struct mausb_device *dev;
191
192 if (size != (size_t)num_of_bytes_to_write) {
193 mausb_pr_alert("Different expected bytes to write (%ld) from actual size (%ld)",
194 num_of_bytes_to_write, size);
195 return MAUSB_DRIVER_WRITE_ERROR;
196 }
197
198 if (copy_from_user(¬ification, buffer, size))
199 return MAUSB_DRIVER_WRITE_ERROR;
200
> 201 spin_lock_irqsave(&mss.lock, flags);
202 dev = mausb_get_dev_from_addr_unsafe(notification.madev_addr);
203
204 if (!dev) {
205 spin_unlock_irqrestore(&mss.lock, flags);
206 return 0;
207 }
208
> 209 spin_lock_irqsave(&dev->num_of_user_events_lock, flags);
210 dev->num_of_user_events += notification.num_of_events;
211 dev->num_of_completed_events += notification.num_of_completed_events;
212 spin_unlock_irqrestore(&dev->num_of_user_events_lock, flags);
213
214 queue_work(dev->workq, &dev->work);
215 spin_unlock_irqrestore(&mss.lock, flags);
216
217 return num_of_bytes_to_write;
218 }
219
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Powered by blists - more mailing lists