[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20110408.130312.71109273.davem@davemloft.net>
Date: Fri, 08 Apr 2011 13:03:12 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: mchan@...adcom.com
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH net-next] cnic: Fix rtnl deadlock
From: "Michael Chan" <mchan@...adcom.com>
Date: Fri, 8 Apr 2011 10:44:14 -0700
> When cnic_stop_hw() -> cnic_cm_stop_bnx2x_hw() is called under rtnl_lock()
> from NETDEV_DOWN event, it waits for cnic_delete_task() to complete.
> It will deadlock when cnic_delete_task() takes rtnl_lock() before
> calling cnic_ulp_stop_one().
>
> We fix it by removing the rtnl_lock() in cnic_delete_task().
> cnic_ulp_stop_one() has mutex and atomic bit ops to prevent important
> operations from being done more than once, so it is not necessary to take
> rtnl_lock().
>
> Signed-off-by: Michael Chan <mchan@...adcom.com>
Applied, thanks Michael.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists