<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16587" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2>Index:
Q:/projinf2/trunk/hw/mlx4/kernel/bus/net/catas.c<BR>===================================================================<BR>---
Q:/projinf2/trunk/hw/mlx4/kernel/bus/net/catas.c (revision 4101)<BR>+++
Q:/projinf2/trunk/hw/mlx4/kernel/bus/net/catas.c (working copy)<BR>@@
-345,6 +345,7 @@<BR> {<BR> struct ib_device
*ibdev;<BR> struct mlx4_dev *dev;<BR>+ int err =
0;<BR> <BR> unsigned long flags;<BR> <BR>@@ -370,17 +371,19
@@<BR> // to allow for end of operations that are in
progress<BR> reset_work = IoAllocateWorkItem(
dev->pdev->p_self_do );<BR> if (!reset_work)
{<BR>+ spin_unlock_irqrestore(&ibdev->event_handler_lock,
flags);<BR> mlx4_err(dev, "mlx4_reset_request
IoAllocateWorkItem failed, reset will not be
propagated\n");<BR>- return -EFAULT;<BR>+ err
= -EFAULT;<BR>+ goto
err_workitem;<BR> }<BR> event_handler->rsrv_ptr
= reset_work;<BR> IoQueueWorkItem( reset_work, card_reset_wi,
DelayedWorkQueue, event_handler
);<BR> }<BR>-<BR>+err_workitem:<BR> spin_unlock_irqrestore(&ibdev->event_handler_lock,
flags);<BR> <BR> <BR>- return 0;<BR>+ return
err;<BR> }<BR> <BR> int mlx4_reset_cb_register( struct
ib_event_handler *event_handler )<BR></FONT></DIV></BODY></HTML>