I think you picked two bad terms. "Linux asynchronous IO" has meaning more than just "IO under Linux that's not blocking". That's what most pages using those terms are referring to, so it makes sense that that's what Google would give you.
"Hashmap", the term you searched for, is a term popularized by the Java world; I think most C programmers still call them "hashtables". (Hash map is a better term, as many excellent map implementations aren't actually based on hashes; see "Judy" for example.) A search for "C concurrent hashtable" gave me a lot of useful results. (You are also suffering from C's lack of a coherent community here. Lots of people write this sort of thing, but few think to share it. Hence, not many search results.)
"Hashmap", the term you searched for, is a term popularized by the Java world; I think most C programmers still call them "hashtables". (Hash map is a better term, as many excellent map implementations aren't actually based on hashes; see "Judy" for example.) A search for "C concurrent hashtable" gave me a lot of useful results. (You are also suffering from C's lack of a coherent community here. Lots of people write this sort of thing, but few think to share it. Hence, not many search results.)