diff a/test/hotspot/jtreg/ProblemList-vthread.txt b/test/hotspot/jtreg/ProblemList-vthread.txt
--- /dev/null
+++ b/test/hotspot/jtreg/ProblemList-vthread.txt
@@ -0,0 +1,151 @@
+##########
+## Tests failing when main() is executed in additional vthread or in vthread instead of thread
+
+
+####
+# OOME in unexpected thread
+gc/g1/ihop/TestIHOPStatic.java
+
+
+####
+# Test failing because of incorrect stacktrace for main thread
+
+runtime/Throwable/TestThrowable.java
+runtime/handshake/HandshakeWalkStackTest.java
+runtime/handshake/HandshakeWalkStackFallbackTest.java
+runtime/ErrorHandling/TestCrashOnOutOfMemoryError.java
+runtime/ErrorHandling/TestExitOnOutOfMemoryError.java
+runtime/ErrorHandling/TestHeapDumpPath.java
+runtime/ErrorHandling/TestOnOutOfMemoryError.java
+runtime/Throwable/StackTraceLogging.java
+runtime/Throwable/TestMaxJavaStackTraceDepth.java
+
+
+####
+# TODO check what are the cds issues with vthread
+runtime/cds/serviceability/ReplaceCriticalClasses.java
+runtime/cds/serviceability/ReplaceCriticalClassesForSubgraphs.java
+runtime/cds/TestInterpreterMethodEntries.java#id0
+runtime/cds/TestInterpreterMethodEntries.java#id1
+
+
+####
+# Something wrong with test.jdk/test.src properties
+runtime/Dictionary/ProtectionDomainCacheTest.java
+runtime/jni/checked/TestCheckedEnsureLocalCapacity.java
+runtime/Dictionary/ProtectionDomainCacheTest.java
+
+
+####
+# Don't work with ProcessTools wrapper
+serviceability/sa/ClhsdbCDSCore.java
+serviceability/logging/TestLogRotation.java
+compiler/c2/Test8062950.java
+
+
+####
+# Custom cp adding (overriding -cp)
+
+runtime/verifier/TestMultiANewArray.java
+runtime/verifier/OverriderMsg.java
+runtime/verifier/TestANewArray.java
+runtime/StackTrace/LargeClassTest.java
+runtime/LocalVariableTable/TestLVT.java
+runtime/duplAttributes/DuplAttributesTest.java
+runtime/EnclosingMethodAttr/EnclMethodAttr.java
+runtime/classFileParserBug/TestEmptyBootstrapMethodsAttr.java
+runtime/classFileParserBug/ClassFileParserBug.java
+runtime/ClassFile/UnsupportedClassFileVersion.java
+runtime/ClassFile/JsrRewriting.java
+runtime/ClassFile/OomWhileParsingRepeatedJsr.java
+runtime/cds/appcds/ClassLoaderTest.java
+runtime/cds/appcds/HelloTest.java
+runtime/cds/appcds/sharedStrings/SharedStringsBasic.java
+runtime/cds/BootAppendTests.java
+runtime/BootstrapMethod/BSMCalledTwice.java
+compiler/aot/fingerprint/SelfChangedCDS.java
+compiler/aot/verification/ClassAndLibraryNotMatchTest.java
+
+
+####
+# Fail to run main() in thread
+# Class with main() is not public, or it's outer class is not public
+
+compiler/aot/fingerprint/SelfChangedCDS.java
+compiler/aot/verification/ClassAndLibraryNotMatchTest.java
+gc/TestSmallHeap.java
+gc/TestVerifySilently.java
+gc/TestVerifySubSet.java
+gc/arguments/TestNewSizeThreadIncrease.java
+gc/cms/GuardShrinkWarning.java
+gc/concurrent_phase_control/TestConcurrentPhaseControlG1.java
+gc/ergonomics/TestDynamicNumberOfGCThreads.java
+gc/g1/TestEagerReclaimHumongousRegions.java
+gc/g1/TestEagerReclaimHumongousRegionsClearMarkBits.java
+gc/g1/TestEagerReclaimHumongousRegionsWithRefs.java
+gc/g1/TestHumongousAllocInitialMark.java
+gc/g1/TestHumongousCodeCacheRoots.java
+gc/g1/TestPLABSizeBounds.java
+gc/g1/TestPrintRegionRememberedSetInfo.java
+gc/g1/mixedgc/TestLogging.java
+gc/logging/TestDeprecatedPrintFlags.java
+gc/logging/TestMetaSpaceLog.java
+gc/logging/TestPrintReferences.java
+gc/serial/HeapChangeLogging.java
+serviceability/sa/TestCpoolForInvokeDynamic.java
+gc/TestSmallHeap.java
+runtime/logging/VtablesTest.java
+runtime/BootstrapMethod/TestLambdaExceptionInInitializer.java
+compiler/inlining/InlineAccessors.java
+compiler/jsr292/ContinuousCallSiteTargetChange.java
+compiler/jsr292/MHInlineTest.java
+compiler/jsr292/PollutedTrapCounts.java
+gc/TestAgeOutput.java
+gc/TestNumWorkerOutput.java
+gc/arguments/TestMaxHeapSizeTools.java
+gc/arguments/TestUseCompressedOopsErgoTools.java
+gc/g1/TestEagerReclaimHumongousRegionsLog.java
+gc/g1/TestG1TraceEagerReclaimHumongousObjects.java
+gc/g1/TestGCLogMessages.java
+gc/g1/TestHumongousAllocNearlyFullRegion.java
+gc/g1/TestPLABOutput.java
+gc/g1/TestPeriodicLogMessages.java
+gc/g1/TestRemsetLoggingTools.java
+gc/g1/TestShrinkAuxiliaryData.java
+gc/g1/TestShrinkDefragmentedHeap.java
+gc/g1/TestStringDeduplicationTools.java
+gc/g1/ihop/TestIHOPStatic.java
+gc/logging/TestGCId.java
+gc/parallel/AdaptiveGCBoundary.java
+gc/z/TestHighUsage.java
+runtime/Dictionary/CleanProtectionDomain.java
+runtime/Dictionary/ProtectionDomainCacheTest.java
+runtime/ErrorHandling/ProblematicFrameTest.java
+runtime/MemberName/MemberNameLeak.java
+runtime/Shutdown/ShutdownTest.java
+runtime/condy/CondyBadLDC.jasm
+runtime/condy/CondyBadLDC2_W.jasm
+runtime/condy/CondyUseLDC_W.jasm
+runtime/condy/CondyUsesIndyBSM.jcod
+runtime/condy/IndyUsesCondyBSM.jcod
+runtime/execstack/Test.java
+runtime/execstack/TestMT.java
+runtime/handshake/HandshakeTransitionTest.java
+runtime/logging/ClassLoadUnloadTest.java
+
+
+####
+# dont run classname (-version/empty)
+
+runtime/symboltable/ShortLivedSymbolCleanup.java
+runtime/logging/LoaderConstraintsTest.java
+
+
+#####
+# Seems module patching doesn't work with wrapper
+
+runtime/modules/PatchModule/PatchModuleTestJarDir.java
+runtime/modules/PatchModule/PatchModuleJavaBase.java
+runtime/modules/PatchModule/PatchModuleTestJar.java
+runtime/modules/PatchModule/PatchModuleTest.java
+runtime/modules/PatchModule/PatchModuleClassList.java
