Note that ConcurrentHashMap has been overhauled for JDK8.
The preliminary version, partially waiting for stability
on lambda-related stuff, has been out a while as
jsr166e.ConcurrenthashMapV8 (see
http://gee.cs.oswego.edu/dl/concurrency-interest/index.html)
It is easy to add seeded murmur hash code to this,
which I plan to do. One question:
Given the JDK8 conventions in your mail,
it seems that field hashMask can never be zero,
so doesn't need to be checked, but is in your JDK8 diffs:
int h = hashMask;
if ((0 != h) && (k instanceof String)) {
return ((String) k).hash32() ^ h;
... and further simplifying a bit from there.
(Also "hashMask" seems like an odd name for this. "hashSeed"?)
-Doug