On Wed, 4 Jan 2017, Xu, Even wrote: > > [ ... snip ... ] > > > > > > +static ssize_t ishtp_cl_write(struct file *file, const char __user > > > *ubuf, > > > + size_t length, loff_t *offset) > > > +{ > > > + struct ishtp_cl_miscdev *ishtp_cl_misc = file- > > > >private_data; > > > + struct ishtp_cl *cl; > > > + void *write_buf; > > > + struct ishtp_device *dev; > > > + int ret; > > > + > > > + /* Non-blocking semantics are not supported */ > > > + if (file->f_flags & O_NONBLOCK) { > > > + ret = -EINVAL; > > > + goto out_unlock; > > When taking the error path here you'd try to unlock > > ishtp_cl_misc->cl_mutex before actually acquiring it. > > > > Thanks for your comments, Jiri, I update my patch below: Greg, how would you like to handle this (after you're done with reviewing it of course), given that this driver depends on the preceeding 6 patches to intel-ish-hid driver? Thanks, -- Jiri Kosina SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html