Staging
v0.8.1
v0.8.1
https://github.com/torvalds/linux
Revision 3e3183bab0257a6d02038658c53b491e1378612f authored by David Woodhouse on 05 August 2006, 19:15:19 UTC, committed by Linus Torvalds on 06 August 2006, 15:57:49 UTC
While busy-waiting for completion, check the hardware after scheduling; don't schedule and then immediately check the _timeout_. If the yield() took a long time (as it does on my OLPC prototype board when it's busy), we'd report a timeout even though the hardware was now ready. This fixes it, and also switches the yield() for a cond_resched() because we don't actually want to be _that_ nice about it. I see nice tightly-packed SMBus transactions now, rather than waiting for milliseconds between successive phases. Actually, we shouldn't be busy-waiting here at all. We should be using interrupts. That's an exercise for another day though. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Cc: Christer Weinigel <wingel@nano-system.com> Cc: <Jordan.Crouse@amd.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
1 parent 225add6
Tip revision: 3e3183bab0257a6d02038658c53b491e1378612f authored by David Woodhouse on 05 August 2006, 19:15:19 UTC
[PATCH] SCX200_ACB: eliminate spurious timeout errors
[PATCH] SCX200_ACB: eliminate spurious timeout errors
Tip revision: 3e3183b
File | Mode | Size |
---|---|---|
raid6test | ||
.gitignore | -rw-r--r-- | 51 bytes |
Kconfig | -rw-r--r-- | 8.9 KB |
Makefile | -rw-r--r-- | 3.5 KB |
bitmap.c | -rw-r--r-- | 38.3 KB |
dm-bio-list.h | -rw-r--r-- | 1.0 KB |
dm-bio-record.h | -rw-r--r-- | 1.1 KB |
dm-crypt.c | -rw-r--r-- | 22.4 KB |
dm-emc.c | -rw-r--r-- | 8.3 KB |
dm-exception-store.c | -rw-r--r-- | 14.5 KB |
dm-hw-handler.c | -rw-r--r-- | 4.3 KB |
dm-hw-handler.h | -rw-r--r-- | 1.5 KB |
dm-io.c | -rw-r--r-- | 9.9 KB |
dm-io.h | -rw-r--r-- | 1.9 KB |
dm-ioctl.c | -rw-r--r-- | 30.2 KB |
dm-linear.c | -rw-r--r-- | 2.4 KB |
dm-log.c | -rw-r--r-- | 15.0 KB |
dm-log.h | -rw-r--r-- | 3.3 KB |
dm-mpath.c | -rw-r--r-- | 28.7 KB |
dm-mpath.h | -rw-r--r-- | 491 bytes |
dm-path-selector.c | -rw-r--r-- | 2.6 KB |
dm-path-selector.h | -rw-r--r-- | 2.3 KB |
dm-raid1.c | -rw-r--r-- | 28.6 KB |
dm-round-robin.c | -rw-r--r-- | 4.5 KB |
dm-snap.c | -rw-r--r-- | 27.5 KB |
dm-snap.h | -rw-r--r-- | 3.4 KB |
dm-stripe.c | -rw-r--r-- | 4.8 KB |
dm-table.c | -rw-r--r-- | 20.7 KB |
dm-target.c | -rw-r--r-- | 3.2 KB |
dm-zero.c | -rw-r--r-- | 1.5 KB |
dm.c | -rw-r--r-- | 27.1 KB |
dm.h | -rw-r--r-- | 3.6 KB |
faulty.c | -rw-r--r-- | 8.3 KB |
kcopyd.c | -rw-r--r-- | 13.7 KB |
kcopyd.h | -rw-r--r-- | 1.1 KB |
linear.c | -rw-r--r-- | 10.7 KB |
md.c | -rw-r--r-- | 138.8 KB |
mktables.c | -rw-r--r-- | 2.8 KB |
multipath.c | -rw-r--r-- | 14.4 KB |
raid0.c | -rw-r--r-- | 14.1 KB |
raid1.c | -rw-r--r-- | 56.0 KB |
raid10.c | -rw-r--r-- | 58.2 KB |
raid5.c | -rw-r--r-- | 107.0 KB |
raid6.h | -rw-r--r-- | 3.9 KB |
raid6algos.c | -rw-r--r-- | 3.9 KB |
raid6altivec.uc | -rw-r--r-- | 3.3 KB |
raid6int.uc | -rw-r--r-- | 2.7 KB |
raid6mmx.c | -rw-r--r-- | 4.0 KB |
raid6recov.c | -rw-r--r-- | 3.4 KB |
raid6sse1.c | -rw-r--r-- | 5.1 KB |
raid6sse2.c | -rw-r--r-- | 8.5 KB |
raid6x86.h | -rw-r--r-- | 7.2 KB |
unroll.pl | -rw-r--r-- | 492 bytes |
xor.c | -rw-r--r-- | 3.5 KB |
Computing file changes ...