Primary meaning of ENOSYS is "system call not available" but it's also used with meaning "function not implemented". Both are not applicable here. Typically this error occurs when the device was unplugged. usbhid_raw_request returns -ENODEV in such a case what seems to be more reasonable. Therefore use -ENODEV also here. Primary motivation for this change is a change in the LED subsystem to ignore -ENODEV if the device was most likely unplugged. Signed-off-by: Heiner Kallweit <hkallweit1@xxxxxxxxx> --- drivers/hid/usbhid/hid-core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c index ad71160..64a8d9c 100644 --- a/drivers/hid/usbhid/hid-core.c +++ b/drivers/hid/usbhid/hid-core.c @@ -928,7 +928,7 @@ static int usbhid_output_report(struct hid_device *hid, __u8 *buf, size_t count) int actual_length, skipped_report_id = 0, ret; if (!usbhid->urbout) - return -ENOSYS; + return -ENODEV; if (buf[0] == 0x0) { /* Don't send the Report ID */ -- 2.7.0 -- 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