diff options
| author | Corey Minyard <cminyard@mvista.com> | 2008-04-29 01:01:01 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-29 08:06:14 -0700 | 
| commit | 4ea18425436e7c72716b7f8d314775f399821195 (patch) | |
| tree | dc722c409987a9959168174ca9f613e5713787f6 | |
| parent | 02fdb36ae7f55db7757b623acd27a62d5000d755 (diff) | |
| download | olio-linux-3.10-4ea18425436e7c72716b7f8d314775f399821195.tar.xz olio-linux-3.10-4ea18425436e7c72716b7f8d314775f399821195.zip  | |
ipmi: hold ATTN until upper layer ready
Hold handling of ATTN until the upper layer has reported that it is
ready.
Signed-off-by: Corey Minyard <cminyard@mvista.com>
Cc: Patrick Schoeller <Patrick.Schoeller@hp.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
| -rw-r--r-- | drivers/char/ipmi/ipmi_si_intf.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c index 4f560d0bb80..1a8c1ca9055 100644 --- a/drivers/char/ipmi/ipmi_si_intf.c +++ b/drivers/char/ipmi/ipmi_si_intf.c @@ -723,8 +723,11 @@ static enum si_sm_result smi_event_handler(struct smi_info *smi_info,  		si_sm_result = smi_info->handlers->event(smi_info->si_sm, 0);  	} -	/* We prefer handling attn over new messages. */ -	if (si_sm_result == SI_SM_ATTN) +	/* +	 * We prefer handling attn over new messages.  But don't do +	 * this if there is not yet an upper layer to handle anything. +	 */ +	if (likely(smi_info->intf) && si_sm_result == SI_SM_ATTN)  	{  		unsigned char msg[2];  |