Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2209660 | 7 | Y. Ramakrishna | P2 | Closed | Fixed | b141 |
JDK-8017356 | 6u65 | Abhijit Saha | P2 | Closed | Fixed | b01 |
JDK-8004252 | 6u60 | Paul Nauman | P2 | Closed | Fixed | b01 |
non_clean_card_iterate() collects contiguous ranges of dirty cards
which are then processed by ClearNoncleanCardWrapper in a second traversal.
There is really no need for two traversals, rather non_clean_card_iterate()
need not be used and all of the work can instead accomplished in a single
traversal of the cards in the range being scanned by CleanNoncleanCardWrapper.
This might even improve performance by a bit (but more importantly it would
reduce the complexity and interdependencies within the card table hierarchy).
which are then processed by ClearNoncleanCardWrapper in a second traversal.
There is really no need for two traversals, rather non_clean_card_iterate()
need not be used and all of the work can instead accomplished in a single
traversal of the cards in the range being scanned by CleanNoncleanCardWrapper.
This might even improve performance by a bit (but more importantly it would
reduce the complexity and interdependencies within the card table hierarchy).
- backported by
-
JDK-2209660 Unnecessary double traversal of dirty card windows
- Closed
-
JDK-8004252 Unnecessary double traversal of dirty card windows
- Closed
-
JDK-8017356 Unnecessary double traversal of dirty card windows
- Closed
- relates to
-
JDK-7036837 cardtable interface and class hierarchy simplification
- Closed
-
JDK-6883834 ParNew: assert(!_g->to()->is_in_reserved(obj),"Scanning field twice?") with LargeObjects tests
- Closed