Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell11
提交
31005142
D
dragonwell11
项目概览
openanolis
/
dragonwell11
通知
7
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell11
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
31005142
编写于
6月 18, 2014
作者:
J
jmasa
浏览文件
操作
浏览文件
下载
差异文件
Merge
上级
efa410f6
9d4be789
变更
11
隐藏空白更改
内联
并排
Showing
11 changed file
with
49 addition
and
43 deletion
+49
-43
hotspot/agent/src/os/linux/libproc.h
hotspot/agent/src/os/linux/libproc.h
+1
-1
hotspot/src/share/vm/compiler/methodLiveness.cpp
hotspot/src/share/vm/compiler/methodLiveness.cpp
+2
-2
hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
+1
-1
hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
...pot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
+7
-21
hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
...pot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
+0
-2
hotspot/src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp
...e/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp
+1
-1
hotspot/src/share/vm/runtime/arguments.cpp
hotspot/src/share/vm/runtime/arguments.cpp
+2
-0
hotspot/src/share/vm/runtime/arguments.hpp
hotspot/src/share/vm/runtime/arguments.hpp
+1
-0
hotspot/src/share/vm/runtime/arguments_ext.cpp
hotspot/src/share/vm/runtime/arguments_ext.cpp
+30
-0
hotspot/src/share/vm/runtime/java.cpp
hotspot/src/share/vm/runtime/java.cpp
+2
-7
hotspot/src/share/vm/runtime/thread.cpp
hotspot/src/share/vm/runtime/thread.cpp
+2
-8
未找到文件。
hotspot/agent/src/os/linux/libproc.h
浏览文件 @
31005142
...
...
@@ -34,7 +34,7 @@
#include "libproc_md.h"
#endif
#include <
linux
/ptrace.h>
#include <
sys
/ptrace.h>
/************************************************************************************
...
...
hotspot/src/share/vm/compiler/methodLiveness.cpp
浏览文件 @
31005142
...
...
@@ -475,7 +475,7 @@ MethodLivenessResult MethodLiveness::get_liveness_at(int entry_bci) {
bci
=
0
;
}
MethodLivenessResult
answer
((
uintptr
_t
*
)
NULL
,
0
);
MethodLivenessResult
answer
((
BitMap
::
bm_word
_t
*
)
NULL
,
0
);
if
(
_block_count
>
0
)
{
if
(
TimeLivenessAnalysis
)
_time_total
.
start
();
...
...
@@ -1000,7 +1000,7 @@ bool MethodLiveness::BasicBlock::merge_exception(BitMap other) {
}
MethodLivenessResult
MethodLiveness
::
BasicBlock
::
get_liveness_at
(
ciMethod
*
method
,
int
bci
)
{
MethodLivenessResult
answer
(
NEW_RESOURCE_ARRAY
(
uintptr
_t
,
_analyzer
->
bit_map_size_words
()),
MethodLivenessResult
answer
(
NEW_RESOURCE_ARRAY
(
BitMap
::
bm_word
_t
,
_analyzer
->
bit_map_size_words
()),
_analyzer
->
bit_map_size_bits
());
answer
.
set_is_valid
();
...
...
hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
浏览文件 @
31005142
...
...
@@ -127,7 +127,7 @@ bool CMBitMap::allocate(ReservedSpace heap_rs) {
}
assert
(
_virtual_space
.
committed_size
()
==
brs
.
size
(),
"didn't reserve backing store for all of concurrent marking bit map?"
);
_bm
.
set_map
((
uintptr
_t
*
)
_virtual_space
.
low
());
_bm
.
set_map
((
BitMap
::
bm_word
_t
*
)
_virtual_space
.
low
());
assert
(
_virtual_space
.
committed_size
()
<<
(
_shifter
+
LogBitsPerByte
)
>=
_bmWordSize
,
"inconsistency in bit map sizing"
);
_bm
.
set_size
(
_bmWordSize
>>
_shifter
);
...
...
hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
浏览文件 @
31005142
...
...
@@ -433,14 +433,6 @@ HeapRegion* G1CollectedHeap::pop_dirty_cards_region()
return
hr
;
}
void
G1CollectedHeap
::
stop_conc_gc_threads
()
{
_cg1r
->
stop
();
_cmThread
->
stop
();
if
(
G1StringDedup
::
is_enabled
())
{
G1StringDedup
::
stop
();
}
}
#ifdef ASSERT
// A region is added to the collection set as it is retired
// so an address p can point to a region which will be in the
...
...
@@ -2174,20 +2166,14 @@ jint G1CollectedHeap::initialize() {
}
void
G1CollectedHeap
::
stop
()
{
#if 0
// Stopping concurrent worker threads is currently disabled until
// some bugs in concurrent mark has been resolve. Without fixing
// those bugs first we risk haning during VM exit when trying to
// stop these threads.
// Abort any ongoing concurrent root region scanning and stop all
// concurrent threads. We do this to make sure these threads do
// not continue to execute and access resources (e.g. gclog_or_tty)
// Stop all concurrent threads. We do this to make sure these threads
// do not continue to execute and access resources (e.g. gclog_or_tty)
// that are destroyed during shutdown.
_cm->root_regions()->abort();
_cm->root_regions()->wait_until_scan_finished();
stop_conc_gc_threads();
#endif
_cg1r
->
stop
();
_cmThread
->
stop
();
if
(
G1StringDedup
::
is_enabled
())
{
G1StringDedup
::
stop
();
}
}
size_t
G1CollectedHeap
::
conservative_max_heap_alignment
()
{
...
...
hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
浏览文件 @
31005142
...
...
@@ -1684,8 +1684,6 @@ public:
void
print_all_rsets
()
PRODUCT_RETURN
;
public:
void
stop_conc_gc_threads
();
size_t
pending_card_num
();
size_t
cards_scanned
();
...
...
hotspot/src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp
浏览文件 @
31005142
...
...
@@ -71,7 +71,7 @@ ParMarkBitMap::initialize(MemRegion covered_region)
if
(
_virtual_space
!=
NULL
&&
_virtual_space
->
expand_by
(
_reserved_byte_size
))
{
_region_start
=
covered_region
.
start
();
_region_size
=
covered_region
.
word_size
();
idx_t
*
map
=
(
idx
_t
*
)
_virtual_space
->
reserved_low_addr
();
BitMap
::
bm_word_t
*
map
=
(
BitMap
::
bm_word
_t
*
)
_virtual_space
->
reserved_low_addr
();
_beg_bits
.
set_map
(
map
);
_beg_bits
.
set_size
(
bits
/
2
);
_end_bits
.
set_map
(
map
+
words
/
2
);
...
...
hotspot/src/share/vm/runtime/arguments.cpp
浏览文件 @
31005142
...
...
@@ -2453,6 +2453,8 @@ bool Arguments::check_vm_args_consistency() {
warning
(
"The VM option CICompilerCountPerCPU overrides CICompilerCount."
);
}
status
&=
check_vm_args_consistency_ext
();
return
status
;
}
...
...
hotspot/src/share/vm/runtime/arguments.hpp
浏览文件 @
31005142
...
...
@@ -462,6 +462,7 @@ class Arguments : AllStatic {
static
void
check_deprecated_gc_flags
();
// Check consistency or otherwise of VM argument settings
static
bool
check_vm_args_consistency
();
static
bool
check_vm_args_consistency_ext
();
// Check stack pages settings
static
bool
check_stack_pages
();
// Used by os_solaris
...
...
hotspot/src/share/vm/runtime/arguments_ext.cpp
0 → 100644
浏览文件 @
31005142
/*
* Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
#include "precompiled.hpp"
#include "runtime/arguments.hpp"
bool
Arguments
::
check_vm_args_consistency_ext
()
{
return
true
;
}
hotspot/src/share/vm/runtime/java.cpp
浏览文件 @
31005142
...
...
@@ -501,9 +501,6 @@ void before_exit(JavaThread * thread) {
os
::
infinite_sleep
();
}
// Stop any ongoing concurrent GC work
Universe
::
heap
()
->
stop
();
// Terminate watcher thread - must before disenrolling any periodic task
if
(
PeriodicTask
::
num_tasks
()
>
0
)
WatcherThread
::
stop
();
...
...
@@ -518,10 +515,8 @@ void before_exit(JavaThread * thread) {
StatSampler
::
disengage
();
StatSampler
::
destroy
();
// We do not need to explicitly stop concurrent GC threads because the
// JVM will be taken down at a safepoint when such threads are inactive --
// except for some concurrent G1 threads, see (comment in)
// Threads::destroy_vm().
// Stop concurrent GC threads
Universe
::
heap
()
->
stop
();
// Print GC/heap related information.
if
(
PrintGCDetails
)
{
...
...
hotspot/src/share/vm/runtime/thread.cpp
浏览文件 @
31005142
...
...
@@ -3933,14 +3933,8 @@ bool Threads::destroy_vm() {
// GC vm_operations can get caught at the safepoint, and the
// heap is unparseable if they are caught. Grab the Heap_lock
// to prevent this. The GC vm_operations will not be able to
// queue until after the vm thread is dead.
// After this point, we'll never emerge out of the safepoint before
// the VM exits, so concurrent GC threads do not need to be explicitly
// stopped; they remain inactive until the process exits.
// Note: some concurrent G1 threads may be running during a safepoint,
// but these will not be accessing the heap, just some G1-specific side
// data structures that are not accessed by any other threads but them
// after this point in a terminal safepoint.
// queue until after the vm thread is dead. After this point,
// we'll never emerge out of the safepoint before the VM exits.
MutexLocker
ml
(
Heap_lock
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录