|
@@ -961,10 +961,9 @@ static ssize_t ffs_epfile_io(struct file *file, struct ffs_io_data *io_data)
|
|
/* In the meantime, endpoint got disabled or changed. */
|
|
/* In the meantime, endpoint got disabled or changed. */
|
|
ret = -ESHUTDOWN;
|
|
ret = -ESHUTDOWN;
|
|
} else if (halt) {
|
|
} else if (halt) {
|
|
- /* Halt */
|
|
|
|
- if (likely(epfile->ep == ep) && !WARN_ON(!ep->ep))
|
|
|
|
- usb_ep_set_halt(ep->ep);
|
|
|
|
- ret = -EBADMSG;
|
|
|
|
|
|
+ ret = usb_ep_set_halt(ep->ep);
|
|
|
|
+ if (!ret)
|
|
|
|
+ ret = -EBADMSG;
|
|
} else if (unlikely(data_len == -EINVAL)) {
|
|
} else if (unlikely(data_len == -EINVAL)) {
|
|
/*
|
|
/*
|
|
* Sanity Check: even though data_len can't be used
|
|
* Sanity Check: even though data_len can't be used
|