linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ipmi: This patch decreases the IPMI message transaction time in Interrupt mode
@ 2011-10-19  5:31 Srinivas_G_Gowda
  2011-11-25 12:21 ` Srinivas_G_Gowda
  0 siblings, 1 reply; 2+ messages in thread
From: Srinivas_G_Gowda @ 2011-10-19  5:31 UTC (permalink / raw)
  To: linux-kernel; +Cc: minyard

[-- Attachment #1: Type: text/plain, Size: 0 bytes --]



[-- Attachment #2: 0001-ipmi-interrupt-fast-transaction.patch --]
[-- Type: text/plain, Size: 1387 bytes --]

Subject: [PATCH] This patch  decreases the IPMI message transaction time in Interrupt mode
 ---------------------------------------------------------------------------------------------
 In function sender(), start_next_msg(smi_info) is when the driver is ready to send the data to BMC,
 but counts on the timeout to start the transaction.In interrupt mode what I observed is that driver
 simply wastes time, counting on the timer to trigger the transaction.  What I have done here is to
 cut the wait,and trigger the call to the handler.
 This patch considerably decreases the IPMI transaction time (cuts off ~9ms for a single ipmitool transaction).

 Signed-off-by: Srinivas_Gowda <srinivas_g_gowda@dell.com>
---
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c
index 9397ab4..5d1e0ca 100644
--- a/drivers/char/ipmi/ipmi_si_intf.c
+++ b/drivers/char/ipmi/ipmi_si_intf.c
@@ -932,8 +932,10 @@ static void sender(void                *send_info,
 	spin_unlock_irqrestore(&smi_info->msg_lock, flags);
 
 	spin_lock_irqsave(&smi_info->si_lock, flags);
-	if (smi_info->si_state == SI_NORMAL && smi_info->curr_msg == NULL)
+	if (smi_info->si_state == SI_NORMAL && smi_info->curr_msg == NULL) {
 		start_next_msg(smi_info);
+		mod_timer(&smi_info->si_timer, jiffies + 1);
+	}
 	spin_unlock_irqrestore(&smi_info->si_lock, flags);
 }
 


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] ipmi: This patch decreases the IPMI message transaction time in Interrupt mode
  2011-10-19  5:31 [PATCH] ipmi: This patch decreases the IPMI message transaction time in Interrupt mode Srinivas_G_Gowda
@ 2011-11-25 12:21 ` Srinivas_G_Gowda
  0 siblings, 0 replies; 2+ messages in thread
From: Srinivas_G_Gowda @ 2011-11-25 12:21 UTC (permalink / raw)
  To: linux-kernel, minyard

[-- Attachment #1: Type: text/plain, Size: 50 bytes --]

On 10/19/2011 11:01 AM, Gowda, Srinivas G wrote:

[-- Attachment #2: 0001-ipmi-interrupt-fast-transaction.patch --]
[-- Type: text/plain, Size: 1081 bytes --]

Subject: [PATCH] This patch  decreases the IPMI message transaction time in Interrupt mode
 ---------------------------------------------------------------------------------------------
 What I have done this time is to directly call the handler
 
 This patch considerably decreases the IPMI transaction time (cuts off ~9ms for a single ipmitool transaction).

 Signed-off-by: Srinivas_Gowda <srinivas_g_gowda@dell.com>
---
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c
index 9397ab4..5d1e0ca 100644
--- a/drivers/char/ipmi/ipmi_si_intf.c
+++ b/drivers/char/ipmi/ipmi_si_intf.c
@@ -932,8 +932,10 @@ static void sender(void                *send_info,
 	spin_unlock_irqrestore(&smi_info->msg_lock, flags);
 
 	spin_lock_irqsave(&smi_info->si_lock, flags);
-	if (smi_info->si_state == SI_NORMAL && smi_info->curr_msg == NULL)
+	if (smi_info->si_state == SI_NORMAL && smi_info->curr_msg == NULL) {
 		start_next_msg(smi_info);
+		smi_event_handler(smi_info, 0);
+	}
 	spin_unlock_irqrestore(&smi_info->si_lock, flags);
 }
 


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-11-25 12:36 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-10-19  5:31 [PATCH] ipmi: This patch decreases the IPMI message transaction time in Interrupt mode Srinivas_G_Gowda
2011-11-25 12:21 ` Srinivas_G_Gowda

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).