On Wed, Jan 13, 2021 at 07:38:28PM -0800, Thinh Nguyen wrote: ...
@@ -1543,10 +1546,12 @@ static ssize_t soft_connect_store(struct device *dev, usb_gadget_udc_stop(udc); } else { dev_err(dev, "unsupported command '%s'\n", buf);
return -EINVAL;
}ret = -EINVAL;
- return n;
+out:
- mutex_unlock(&udc_lock);
- return ret;
}
This is *very* tricky: the return value will be easily broken if someone adds any code later after the else body and before the "out" label.