On Tue, Apr 12, 2016 at 03:10:01PM +0200, Oliver Neukum wrote:
> On Tue, 2016-04-12 at 14:43 +0300, Heikki Krogerus wrote:
> 
> > +static int ucsi_init(struct ucsi *ucsi)
> > +{
> > +   struct ucsi_connector *con;
> > +   struct ucsi_control ctrl;
> > +   int ret;
> > +   int i;
> > +
> > +   atomic_set(&ucsi->event_pending, 0);
> > +   init_completion(&ucsi->complete);
> > +   mutex_init(&ucsi->ppm_lock);
> > +
> > +   mutex_lock(&ucsi->ppm_lock);
> > +
> > +   /* Reset */
> > +   ret = ucsi_acpi_cmd(ucsi, UCSI_PPM_RESET);
> > +   if (ret)
> > +           return ret;
> 
> With a lock held?

Good catch. Thanks.

> > +static int ucsi_acpi_remove(struct platform_device *pdev)
> > +{
> > +   struct ucsi *ucsi = platform_get_drvdata(pdev);
> > +
> > +   acpi_remove_notify_handler(ACPI_HANDLE(&pdev->dev),
> > +                              ACPI_ALL_NOTIFY, ucsi_acpi_notify);
> > +
> > +   /* Disable all notifications */
> > +   ucsi_acpi_cmd(ucsi, UCSI_SET_NOTIFICATION_ENABLE);
> 
> You remove the handler before you disable notifications?

I'll change the order.

Thanks,

-- 
heikki
--
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

Reply via email to