diff --git a/miner/worker.go b/miner/worker.go
index d3cd10ed26d4afe986c54b1624c01268c42106c4..59a47a1220ea0d7d0676574413a2fc3d367d38eb 100644
--- a/miner/worker.go
+++ b/miner/worker.go
@@ -297,6 +297,7 @@ func (w *worker) newWorkLoop(recommit time.Duration) {
 	)
 
 	timer := time.NewTimer(0)
+	defer timer.Stop()
 	<-timer.C // discard the initial tick
 
 	// commit aborts in-flight transaction execution with given signal and resubmits a new one.