diff --git a/README.md b/README.md
index 40ee7533f6db8da5dffc0a0cbb78bd3c75e59e14..c83f697d92577bab3d8f6b64c3fd70af243da00c 100644
--- a/README.md
+++ b/README.md
@@ -38,6 +38,7 @@ The following students (in alphabetical order) have helped with various parts of
 The following students (in alphabetical order) have helped with various parts of libfibre:
 
 - Qin An (FreeBSD/kqueue)
+- Bilal Akhtar (gdb extension)
 - Peng Chen (split stack support)
 - Wen Shi (gdb extension)
 
diff --git a/src/libfibre/Poller.cc b/src/libfibre/Poller.cc
index 556c5b95c0a83f37b49b10fd749d691308d0a9da..83636337c9ff7b0d64bde5b7a4e22f6fd0dad511 100644
--- a/src/libfibre/Poller.cc
+++ b/src/libfibre/Poller.cc
@@ -85,12 +85,13 @@ inline int MasterPoller::blockingPoll() {
   if (_lfEventEngine->tryblock<true>(timerFD)) {
 #if __linux__
     uint64_t count;
-    SYSCALLIO(read(timerFD, (void*)&count, sizeof(count)));
+    if (TRY_SYSCALLIO(read(timerFD, (void*)&count, sizeof(count)), EAGAIN) < 0) goto skipTimeout;
 #endif
     Time currTime;
     SYSCALL(clock_gettime(CLOCK_REALTIME, &currTime));
     defaultTimerQueue->checkExpiry(currTime);
   }
+skipTimeout:
   return PollerThread::blockingPoll();
 }
 
diff --git a/src/libfibre/Poller.h b/src/libfibre/Poller.h
index 13b70a1aa2bb1fcf7f166ca8d9e745f7774b2da0..651f6176ac3b21548531d4c5b2152202e6455e65 100644
--- a/src/libfibre/Poller.h
+++ b/src/libfibre/Poller.h
@@ -231,7 +231,7 @@ public:
   void finish() {
 #if !TESTING_POLLER_IDLETIMEDWAIT
     pollThreshold = 0;
-    pollCond.signal()
+    pollCond.signal();
 #endif // !TESTING_POLLER_IDLETIMEDWAIT
   }
 #endif // TESTING_POLLER_IDLEWAIT
diff --git a/src/libfibre/include/u++.h b/src/libfibre/include/u++.h
index c5857b12370a5d6907de35656d9ae4d0787c6ea6..5090729a714e0f05af040bbe6f687b876b788ba6 100644
--- a/src/libfibre/include/u++.h
+++ b/src/libfibre/include/u++.h
@@ -11,7 +11,7 @@
 
 typedef uProcessor SystemProcessor;
 #define CurrProcessor uThisProcessor
-typedef uCluster FibreCluuster;
+typedef uCluster FibreCluster;
 #define CurrCluster uThisCluster
 
 _Task Fibre {
diff --git a/src/libfibre/lfbasics.h b/src/libfibre/lfbasics.h
index 1884237b99e617c883a0f5108c7c3c7556b339a6..db9c1a98aeaf209f3b1b6a3161052aed0d30c7bc 100644
--- a/src/libfibre/lfbasics.h
+++ b/src/libfibre/lfbasics.h
@@ -270,10 +270,8 @@ extern void _lfNotifyTimeout(const Time& timeout);
 // **** global constants
 
 #ifdef SPLIT_STACK
-static const size_t minimumStackSize =  2 * pagesize<1>();
 static const size_t defaultStackSize =  2 * pagesize<1>();
 #else
-static const size_t minimumStackSize =  1 * pagesize<1>();
 static const size_t defaultStackSize = 16 * pagesize<1>();
 #endif
 static const size_t stackProtection = pagesize<1>();