Re: [PATCH] PHYLIB: Locking fixes for PHY I/O potentially sleeping
From: Haavard Skinnemoen <hidden>
Date: 2008-01-29 20:12:37
From: Haavard Skinnemoen <hidden>
Date: 2008-01-29 20:12:37
On Tue, 29 Jan 2008 10:05:09 -0600 Nate Case [off-list ref] wrote:
+/* PHY timer which schedules the state machine work */
+static void phy_timer(unsigned long data)
+{
+ struct phy_device *phydev = (struct phy_device *)data;
+
+ /*
+ * PHY I/O operations can potentially sleep so we ensure that
+ * it's done from a process context
+ */
+ schedule_work(&phydev->state_queue);
+}If you use schedule_delayed_work() instead, you can get rid of the timer. Haavard