Merge pull request #14407 from karalabe/ethash-generation-race

consensus/ethash: fix a timestamp update race
This commit is contained in:
Péter Szilágyi 2017-05-03 09:17:01 +03:00 committed by GitHub
commit 59966255ad

View File

@ -467,8 +467,9 @@ func (ethash *Ethash) cache(block uint64) []uint32 {
future = &cache{epoch: epoch + 1} future = &cache{epoch: epoch + 1}
ethash.fcache = future ethash.fcache = future
} }
} // New current cache, set its initial timestamp
current.used = time.Now() current.used = time.Now()
}
ethash.lock.Unlock() ethash.lock.Unlock()
// Wait for generation finish, bump the timestamp and finalize the cache // Wait for generation finish, bump the timestamp and finalize the cache
@ -529,8 +530,9 @@ func (ethash *Ethash) dataset(block uint64) []uint32 {
future = &dataset{epoch: epoch + 1} future = &dataset{epoch: epoch + 1}
ethash.fdataset = future ethash.fdataset = future
} }
} // New current dataset, set its initial timestamp
current.used = time.Now() current.used = time.Now()
}
ethash.lock.Unlock() ethash.lock.Unlock()
// Wait for generation finish, bump the timestamp and finalize the cache // Wait for generation finish, bump the timestamp and finalize the cache