Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4f2ad811 authored by Nishanth Aravamudan's avatar Nishanth Aravamudan Committed by Jeff Garzik
Browse files

[PATCH] net/lanstreamer: replace schedule_timeout() with ssleep()/msleep_interruptible()



Use ssleep() / msleep_interruptible() [as appropriate]
instead of schedule_timeout() to guarantee the task delays as expected.

Signed-off-by: default avatarNishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: default avatarMaximilian Attems <janitor@sternwelten.at>
Signed-off-by: default avatarDomen Puncer <domen@coderock.org>
parent f17697a3
Loading
Loading
Loading
Loading
+2 −4
Original line number Original line Diff line number Diff line
@@ -455,8 +455,7 @@ static int streamer_reset(struct net_device *dev)
	writew(readw(streamer_mmio + BCTL) | BCTL_SOFTRESET, streamer_mmio + BCTL);
	writew(readw(streamer_mmio + BCTL) | BCTL_SOFTRESET, streamer_mmio + BCTL);
	t = jiffies;
	t = jiffies;
	/* Hold soft reset bit for a while */
	/* Hold soft reset bit for a while */
	current->state = TASK_UNINTERRUPTIBLE;
	ssleep(1);
	schedule_timeout(HZ);
	
	
	writew(readw(streamer_mmio + BCTL) & ~BCTL_SOFTRESET,
	writew(readw(streamer_mmio + BCTL) & ~BCTL_SOFTRESET,
	       streamer_mmio + BCTL);
	       streamer_mmio + BCTL);
@@ -512,8 +511,7 @@ static int streamer_reset(struct net_device *dev)
	writew(SISR_MI, streamer_mmio + SISR_MASK_SUM);
	writew(SISR_MI, streamer_mmio + SISR_MASK_SUM);


	while (!((readw(streamer_mmio + SISR)) & SISR_SRB_REPLY)) {
	while (!((readw(streamer_mmio + SISR)) & SISR_SRB_REPLY)) {
		current->state = TASK_INTERRUPTIBLE;
		msleep_interruptible(100);
		schedule_timeout(HZ/10);
		if (jiffies - t > 40 * HZ) {
		if (jiffies - t > 40 * HZ) {
			printk(KERN_ERR
			printk(KERN_ERR
			       "IBM PCI tokenring card not responding\n");
			       "IBM PCI tokenring card not responding\n");