Use a half nonce range before cycling through avalon's scanwork to ensure it gets a chance to fill work if time is tight for the write thread to signal a wakeup.
diff --git a/driver-avalon.c b/driver-avalon.c
index 66603c5..edebe1c 100644
--- a/driver-avalon.c
+++ b/driver-avalon.c
@@ -1046,8 +1046,8 @@ static int64_t avalon_scanhash(struct thr_info *thr)
int64_t hash_count, us_timeout;
struct timespec abstime;
- /* Full nonce range */
- us_timeout = 0x100000000ll / info->asic_count / info->frequency;
+ /* Half nonce range */
+ us_timeout = 0x80000000ll / info->asic_count / info->frequency;
tdiff.tv_sec = us_timeout / 1000000;
tdiff.tv_usec = us_timeout - (tdiff.tv_sec * 1000000);
cgtime(&now);