From: David Kershner Date: Mon, 21 Nov 2016 17:15:51 +0000 (-0500) Subject: staging: unisys: visorbus: device_responder add error handling X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=29b2780974767df4006d9b8cc7d412d23d99e9a7;p=linux-beck.git staging: unisys: visorbus: device_responder add error handling The function controlvm_respond returns proper error handling, so now we can propagate the error up and handle it appropriately. Signed-off-by: David Kershner Reported-by: Greg Kroah-Hartman Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/unisys/visorbus/visorchipset.c b/drivers/staging/unisys/visorbus/visorchipset.c index f740b52482cd..50e245ed23e9 100644 --- a/drivers/staging/unisys/visorbus/visorchipset.c +++ b/drivers/staging/unisys/visorbus/visorchipset.c @@ -676,18 +676,18 @@ device_changestate_responder(enum controlvm_id cmd_id, CONTROLVM_QUEUE_REQUEST, &outmsg); } -static void +static int device_responder(enum controlvm_id cmd_id, struct controlvm_message_header *pending_msg_hdr, int response) { if (!pending_msg_hdr) - return; /* no controlvm response needed */ + return -EIO; if (pending_msg_hdr->id != (u32)cmd_id) - return; + return -EINVAL; - controlvm_respond(pending_msg_hdr, response); + return controlvm_respond(pending_msg_hdr, response); } static int