Skip to content

Commit

Permalink
[PATCH] ... and more work_struct-induced breakage (mips)
Browse files Browse the repository at this point in the history
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Al Viro authored and Linus Torvalds committed Dec 6, 2006
1 parent 4927b3f commit 91c7c56
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 5 deletions.
9 changes: 8 additions & 1 deletion drivers/i2c/chips/m41t00.c
Original file line number Diff line number Diff line change
Expand Up @@ -215,8 +215,15 @@ m41t00_set(void *arg)
}

static ulong new_time;
/* well, isn't this API just _lovely_? */
static void
m41t00_barf(struct work_struct *unusable)
{
m41t00_set(&new_time);
}

static struct workqueue_struct *m41t00_wq;
static DECLARE_WORK(m41t00_work, m41t00_set, &new_time);
static DECLARE_WORK(m41t00_work, m41t00_barf);

int
m41t00_set_rtc_time(ulong nowtime)
Expand Down
9 changes: 5 additions & 4 deletions drivers/net/mv643xx_eth.c
Original file line number Diff line number Diff line change
Expand Up @@ -277,9 +277,11 @@ static void mv643xx_eth_tx_timeout(struct net_device *dev)
*
* Actual routine to reset the adapter when a timeout on Tx has occurred
*/
static void mv643xx_eth_tx_timeout_task(struct net_device *dev)
static void mv643xx_eth_tx_timeout_task(struct work_struct *ugly)
{
struct mv643xx_private *mp = netdev_priv(dev);
struct mv643xx_private *mp = container_of(ugly, struct mv643xx_private,
tx_timeout_task);
struct net_device *dev = mp->mii.dev; /* yuck */

if (!netif_running(dev))
return;
Expand Down Expand Up @@ -1360,8 +1362,7 @@ static int mv643xx_eth_probe(struct platform_device *pdev)
#endif

/* Configure the timeout task */
INIT_WORK(&mp->tx_timeout_task,
(void (*)(void *))mv643xx_eth_tx_timeout_task, dev);
INIT_WORK(&mp->tx_timeout_task, mv643xx_eth_tx_timeout_task);

spin_lock_init(&mp->lock);

Expand Down

0 comments on commit 91c7c56

Please sign in to comment.