lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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(&notification, 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

Powered by Openwall GNU/*/Linux Powered by OpenVZ