Skip to content

Commit

Permalink
ipmi: Clean up the error handling for channel config errors
Browse files Browse the repository at this point in the history
The code to send the channel config errors was missing an error report
in one place and needed some more information in another, and had an
extraneous bit of code.  Clean all that up.

Signed-off-by: Corey Minyard <cminyard@mvista.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Corey Minyard authored and Linus Torvalds committed Oct 7, 2014
1 parent bfe01a5 commit 1f66842
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions drivers/char/ipmi/ipmi_msghandler.c
Original file line number Diff line number Diff line change
Expand Up @@ -2796,7 +2796,6 @@ channel_handler(ipmi_smi_t intf, struct ipmi_recv_msg *msg)
= IPMI_CHANNEL_MEDIUM_IPMB;
intf->channels[0].protocol
= IPMI_CHANNEL_PROTOCOL_IPMB;
rv = -ENOSYS;

intf->curr_channel = IPMI_MAX_CHANNELS;
wake_up(&intf->waitq);
Expand All @@ -2821,12 +2820,12 @@ channel_handler(ipmi_smi_t intf, struct ipmi_recv_msg *msg)

if (rv) {
/* Got an error somehow, just give up. */
printk(KERN_WARNING PFX
"Error sending channel information for channel"
" %d: %d\n", intf->curr_channel, rv);

intf->curr_channel = IPMI_MAX_CHANNELS;
wake_up(&intf->waitq);

printk(KERN_WARNING PFX
"Error sending channel information: %d\n",
rv);
}
}
out:
Expand Down Expand Up @@ -2964,8 +2963,12 @@ int ipmi_register_smi(struct ipmi_smi_handlers *handlers,
intf->null_user_handler = channel_handler;
intf->curr_channel = 0;
rv = send_channel_info_cmd(intf, 0);
if (rv)
if (rv) {
printk(KERN_WARNING PFX
"Error sending channel information for channel"
" 0, %d\n", rv);
goto out;
}

/* Wait for the channel info to be read. */
wait_event(intf->waitq,
Expand Down

0 comments on commit 1f66842

Please sign in to comment.