Coroutines and deadlocks

Not sure, but looks like a bug in coroutines. Simplified reproducer:

import kotlinx.coroutines.*

suspend fun main() {
    (1..Runtime.getRuntime().availableProcessors()).map {
        GlobalScope.async {
            runBlocking {
                GlobalScope.async{}.await()
            }
        }
    }.awaitAll()

    println("done")
}

If I remember correctly, Default dispatcher uses FJP, which should automatically expand when all threads are blocked.