[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20170602.141245.815479944666453393.davem@davemloft.net>
Date: Fri, 02 Jun 2017 14:12:45 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: liu.xiang6@....com.cn
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] net: davicom: dm9000: Avoid spinlock recursion during
dm9000_timeout routine
From: Liu Xiang <liu.xiang6@....com.cn>
Date: Wed, 31 May 2017 23:06:42 +0800
> On the DM9000B, dm9000_phy_write() is called after the main spinlock
> is held, during the dm9000_timeout() routine. Spinlock recursion
> occurs because the main spinlock is requested again in
> dm9000_phy_write(). So spinlock should be avoided in dm9000_phy_write()
> during the dm9000_timeout() routine.
>
> Signed-off-by: Liu Xiang <liu.xiang6@....com.cn>
It think this is racy.
Now, during a timeout device reset, another thread of control can come
in and access phy registers without any synchronization whatsoever.
Powered by blists - more mailing lists