- 
    Enhancement 
- 
    Resolution: Won't Fix
- 
     P4 P4
- 
    None
- 
    None
- 
        generic
- 
        generic
                    ZGC performs try_mark_object after poping ZMarkStackEntry in GC thread. There could be massive duplicated ZMarkStackEntry for same object with current push-before-mark poilcy.
Propose adding mark-before-enqueue policy in ZGC, try mark object before push and only enqueue if try-mark success.
http://cr.openjdk.java.net/~hshi/8260267/ZGCMarkStack_v1.patch authored by Chao Wang.
Related discussion in https://bugs.openjdk.java.net/browse/JDK-8260267
After discussion, siwtch marking from BFS to DFS(only push to local) order when exceed limit.
Propose adding mark-before-enqueue policy in ZGC, try mark object before push and only enqueue if try-mark success.
http://cr.openjdk.java.net/~hshi/8260267/ZGCMarkStack_v1.patch authored by Chao Wang.
Related discussion in https://bugs.openjdk.java.net/browse/JDK-8260267
After discussion, siwtch marking from BFS to DFS(only push to local) order when exceed limit.
- relates to
- 
                    JDK-8260267 ZGC: Reduce mark stack usage -           
- Resolved
 
-         
- 
                    JDK-8265116 ZGC: Steal local stacks instead of flushing them -           
- Resolved
 
-