On Thu, Oct 05, 2017 at 06:08:19PM +0200, Julia Lawall wrote: > It looks like an unlock is needed before line 1707. > > julia > > ---------- Forwarded message ---------- > Date: Thu, 5 Oct 2017 19:35:31 +0800 > From: kbuild test robot <fengguang...@intel.com> > To: kbu...@01.org > Cc: Julia Lawall <julia.law...@lip6.fr> > Subject: [usb:usb-testing 9/39] drivers/usb/host/max3421-hcd.c:1707:2-8: > preceding lock on line 1702 > > CC: kbuild-...@01.org > CC: linux-usb@vger.kernel.org > TO: Jules Maselbas <jules.masel...@grenoble-inp.org> > CC: "Greg Kroah-Hartman" <gre...@linuxfoundation.org> > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git > usb-testing > head: 2847d242a1e48ca734cee742efa0f70abf545d1e > commit: 721fdc83b31b1b22c34b2d77304890877c624c6b [9/39] usb: max3421: Add > devicetree support > :::::: branch date: 3 hours ago > :::::: commit date: 28 hours ago > > >> drivers/usb/host/max3421-hcd.c:1707:2-8: preceding lock on line 1702 > > # > https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?id=721fdc83b31b1b22c34b2d77304890877c624c6b > git remote add usb > https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git > git remote update usb > git checkout 721fdc83b31b1b22c34b2d77304890877c624c6b > vim +1707 drivers/usb/host/max3421-hcd.c > > 2d53139f David Mosberger 2014-04-28 1691 > 2d53139f David Mosberger 2014-04-28 1692 static int > 2d53139f David Mosberger 2014-04-28 1693 max3421_hub_control(struct > usb_hcd *hcd, u16 type_req, u16 value, u16 index, > 2d53139f David Mosberger 2014-04-28 1694 char *buf, > u16 length) > 2d53139f David Mosberger 2014-04-28 1695 { > 2d53139f David Mosberger 2014-04-28 1696 struct spi_device *spi > = to_spi_device(hcd->self.controller); > 2d53139f David Mosberger 2014-04-28 1697 struct max3421_hcd > *max3421_hcd = hcd_to_max3421(hcd); > 2d53139f David Mosberger 2014-04-28 1698 struct > max3421_hcd_platform_data *pdata; > 2d53139f David Mosberger 2014-04-28 1699 unsigned long flags; > 2d53139f David Mosberger 2014-04-28 1700 int retval = 0; > 2d53139f David Mosberger 2014-04-28 1701 > 2d53139f David Mosberger 2014-04-28 @1702 > spin_lock_irqsave(&max3421_hcd->lock, flags); > 2d53139f David Mosberger 2014-04-28 1703 > 2d53139f David Mosberger 2014-04-28 1704 pdata = > spi->dev.platform_data; > 721fdc83 Jules Maselbas 2017-09-15 1705 if (!pdata) { > 721fdc83 Jules Maselbas 2017-09-15 1706 > dev_err(&spi->dev, "Device platform data is missing\n"); > 721fdc83 Jules Maselbas 2017-09-15 @1707 return -EFAULT; > 721fdc83 Jules Maselbas 2017-09-15 1708 } > 2d53139f David Mosberger 2014-04-28 1709 > 2d53139f David Mosberger 2014-04-28 1710 switch (type_req) { > 2d53139f David Mosberger 2014-04-28 1711 case ClearHubFeature: > 2d53139f David Mosberger 2014-04-28 1712 break; > 2d53139f David Mosberger 2014-04-28 1713 case ClearPortFeature: > 2d53139f David Mosberger 2014-04-28 1714 switch (value) { > 2d53139f David Mosberger 2014-04-28 1715 case > USB_PORT_FEAT_SUSPEND: > 2d53139f David Mosberger 2014-04-28 1716 break; > 2d53139f David Mosberger 2014-04-28 1717 case > USB_PORT_FEAT_POWER: > 2d53139f David Mosberger 2014-04-28 1718 > dev_dbg(hcd->self.controller, "power-off\n"); > 4055e5e5 David Mosberger-Tang 2014-05-29 1719 > max3421_gpout_set_value(hcd, pdata->vbus_gpout, > 4055e5e5 David Mosberger-Tang 2014-05-29 1720 > !pdata->vbus_active_level); > 2d53139f David Mosberger 2014-04-28 1721 /* > FALLS THROUGH */ > 2d53139f David Mosberger 2014-04-28 1722 default: > 2d53139f David Mosberger 2014-04-28 1723 > max3421_hcd->port_status &= ~(1 << value); > 2d53139f David Mosberger 2014-04-28 1724 } > 2d53139f David Mosberger 2014-04-28 1725 break; > 2d53139f David Mosberger 2014-04-28 1726 case GetHubDescriptor: > 2d53139f David Mosberger 2014-04-28 1727 > hub_descriptor((struct usb_hub_descriptor *) buf); > 2d53139f David Mosberger 2014-04-28 1728 break; > 2d53139f David Mosberger 2014-04-28 1729 > 2d53139f David Mosberger 2014-04-28 1730 case DeviceRequest | > USB_REQ_GET_DESCRIPTOR: > 2d53139f David Mosberger 2014-04-28 1731 case GetPortErrorCount: > 2d53139f David Mosberger 2014-04-28 1732 case SetHubDepth: > 2d53139f David Mosberger 2014-04-28 1733 /* USB3 only */ > 2d53139f David Mosberger 2014-04-28 1734 goto error; > 2d53139f David Mosberger 2014-04-28 1735 > 2d53139f David Mosberger 2014-04-28 1736 case GetHubStatus: > 2d53139f David Mosberger 2014-04-28 1737 *(__le32 *) buf > = cpu_to_le32(0); > 2d53139f David Mosberger 2014-04-28 1738 break; > 2d53139f David Mosberger 2014-04-28 1739 > 2d53139f David Mosberger 2014-04-28 1740 case GetPortStatus: > 2d53139f David Mosberger 2014-04-28 1741 if (index != 1) > { > 2d53139f David Mosberger 2014-04-28 1742 retval > = -EPIPE; > 2d53139f David Mosberger 2014-04-28 1743 goto > error; > 2d53139f David Mosberger 2014-04-28 1744 } > 2d53139f David Mosberger 2014-04-28 1745 ((__le16 *) > buf)[0] = cpu_to_le16(max3421_hcd->port_status); > 2d53139f David Mosberger 2014-04-28 1746 ((__le16 *) > buf)[1] = > 2d53139f David Mosberger 2014-04-28 1747 > cpu_to_le16(max3421_hcd->port_status >> 16); > 2d53139f David Mosberger 2014-04-28 1748 break; > 2d53139f David Mosberger 2014-04-28 1749 > 2d53139f David Mosberger 2014-04-28 1750 case SetHubFeature: > 2d53139f David Mosberger 2014-04-28 1751 retval = -EPIPE; > 2d53139f David Mosberger 2014-04-28 1752 break; > 2d53139f David Mosberger 2014-04-28 1753 > 2d53139f David Mosberger 2014-04-28 1754 case SetPortFeature: > 2d53139f David Mosberger 2014-04-28 1755 switch (value) { > 2d53139f David Mosberger 2014-04-28 1756 case > USB_PORT_FEAT_LINK_STATE: > 2d53139f David Mosberger 2014-04-28 1757 case > USB_PORT_FEAT_U1_TIMEOUT: > 2d53139f David Mosberger 2014-04-28 1758 case > USB_PORT_FEAT_U2_TIMEOUT: > 2d53139f David Mosberger 2014-04-28 1759 case > USB_PORT_FEAT_BH_PORT_RESET: > 2d53139f David Mosberger 2014-04-28 1760 goto > error; > 2d53139f David Mosberger 2014-04-28 1761 case > USB_PORT_FEAT_SUSPEND: > 2d53139f David Mosberger 2014-04-28 1762 if > (max3421_hcd->active) > 2d53139f David Mosberger 2014-04-28 1763 > max3421_hcd->port_status |= > 2d53139f David Mosberger 2014-04-28 1764 > USB_PORT_STAT_SUSPEND; > 2d53139f David Mosberger 2014-04-28 1765 break; > 2d53139f David Mosberger 2014-04-28 1766 case > USB_PORT_FEAT_POWER: > 2d53139f David Mosberger 2014-04-28 1767 > dev_dbg(hcd->self.controller, "power-on\n"); > 2d53139f David Mosberger 2014-04-28 1768 > max3421_hcd->port_status |= USB_PORT_STAT_POWER; > 4055e5e5 David Mosberger-Tang 2014-05-29 1769 > max3421_gpout_set_value(hcd, pdata->vbus_gpout, > 4055e5e5 David Mosberger-Tang 2014-05-29 1770 > pdata->vbus_active_level); > 2d53139f David Mosberger 2014-04-28 1771 break; > 2d53139f David Mosberger 2014-04-28 1772 case > USB_PORT_FEAT_RESET: > 2d53139f David Mosberger 2014-04-28 1773 > max3421_reset_port(hcd); > 2d53139f David Mosberger 2014-04-28 1774 /* > FALLS THROUGH */ > 2d53139f David Mosberger 2014-04-28 1775 default: > 2d53139f David Mosberger 2014-04-28 1776 if > ((max3421_hcd->port_status & USB_PORT_STAT_POWER) > 2d53139f David Mosberger 2014-04-28 1777 != > 0) > 2d53139f David Mosberger 2014-04-28 1778 > max3421_hcd->port_status |= (1 << value); > 2d53139f David Mosberger 2014-04-28 1779 } > 2d53139f David Mosberger 2014-04-28 1780 break; > 2d53139f David Mosberger 2014-04-28 1781 > 2d53139f David Mosberger 2014-04-28 1782 default: > 2d53139f David Mosberger 2014-04-28 1783 > dev_dbg(hcd->self.controller, > 2d53139f David Mosberger 2014-04-28 1784 "hub > control req%04x v%04x i%04x l%d\n", > 2d53139f David Mosberger 2014-04-28 1785 > type_req, value, index, length); > 2d53139f David Mosberger 2014-04-28 1786 error: /* > "protocol stall" on error */ > 2d53139f David Mosberger 2014-04-28 1787 retval = -EPIPE; > 2d53139f David Mosberger 2014-04-28 1788 } > 2d53139f David Mosberger 2014-04-28 1789 > 2d53139f David Mosberger 2014-04-28 1790 > spin_unlock_irqrestore(&max3421_hcd->lock, flags); > 2d53139f David Mosberger 2014-04-28 1791 return retval; > 2d53139f David Mosberger 2014-04-28 1792 } > 2d53139f David Mosberger 2014-04-28 1793 >
Yes, Jules, please fix this. thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html