Mercurial > hg > graal-jvmci-8
view agent/make/mkinstall @ 1716:be3f9c242c9d
6948538: CMS: BOT walkers can fall into object allocation and initialization cracks
Summary: GC workers now recognize an intermediate transient state of blocks which are allocated but have not yet completed initialization. blk_start() calls do not attempt to determine the size of a block in the transient state, rather waiting for the block to become initialized so that it is safe to query its size. Audited and ensured the order of initialization of object fields (klass, free bit and size) to respect block state transition protocol. Also included some new assertion checking code enabled in debug mode.
Reviewed-by: chrisphi, johnc, poonam
author | ysr |
---|---|
date | Mon, 16 Aug 2010 15:58:42 -0700 |
parents | a61af66fc99e |
children | 4fe850c65ed1 |
line wrap: on
line source
# make the directories SA_NAME=sa17 SA_TEST=$SA_NAME/test mkdir $SA_NAME mkdir $SA_NAME/solaris mkdir $SA_NAME/solaris/amd64 mkdir $SA_NAME/solaris/sparc mkdir $SA_NAME/solaris/sparcv9 mkdir $SA_NAME/solaris/i386 mkdir $SA_NAME/linux mkdir $SA_NAME/linux/i386 mkdir $SA_NAME/linux/ia64 mkdir $SA_NAME/linux/amd64 mkdir $SA_NAME/win32 mkdir $SA_NAME/win32/i386 mkdir $SA_NAME/win32/ia64 mkdir $SA_NAME/win32/amd64 mkdir $SA_TEST # make sa.jar jar -cvf $SA_NAME/sa.jar -C ../build/classes . # copy the native libraries cp ../src/os/solaris/proc/amd64/libsaproc.so $SA_NAME/solaris/amd64 cp ../src/os/solaris/proc/sparc/libsaproc.so $SA_NAME/solaris/sparc cp ../src/os/solaris/proc/sparcv9/libsaproc.so $SA_NAME/solaris/sparcv9 cp ../src/os/solaris/proc/i386/libsaproc.so $SA_NAME/solaris/i386 cp ../src/os/linux/i386/libsaproc.so $SA_NAME/linux/i386 cp ../src/os/linux/ia64/libsaproc.so $SA_NAME/linux/ia64 cp ../src/os/linux/amd64/libsaproc.so $SA_NAME/linux/amd64 cp ../src/os/win32/windbg/i386/sawindbg.dll $SA_NAME/win32/i386 cp ../src/os/win32/windbg/ia64/sawindbg.dll $SA_NAME/win32/ia64 cp ../src/os/win32/windbg/amd64/sawindbg.dll $SA_NAME/win32/amd64 # copy Unix (Solaris and Linux) shell scripts cp saenv.sh $SA_NAME ; chmod 755 $SA_NAME/saenv.sh cp saenv64.sh $SA_NAME ; chmod 755 $SA_NAME/saenv64.sh cp clhsdbproc.sh $SA_NAME ; chmod 755 $SA_NAME/clhsdbproc.sh cp clhsdbproc64.sh $SA_NAME ; chmod 755 $SA_NAME/clhsdbproc64.sh cp dumpflagsproc.sh $SA_NAME ; chmod 755 $SA_NAME/dumpflagsproc.sh cp dumpflagsproc64.sh $SA_NAME ; chmod 755 $SA_NAME/dumpflagsproc64.sh cp dumpsyspropsproc.sh $SA_NAME ; chmod 755 $SA_NAME/dumpsyspropsproc.sh cp dumpsyspropsproc64.sh $SA_NAME ; chmod 755 $SA_NAME/dumpsyspropsproc64.sh cp finalizerinfoproc.sh $SA_NAME ; chmod 755 $SA_NAME/finalizerinfoproc.sh cp finalizerinfoproc64.sh $SA_NAME ; chmod 755 $SA_NAME/finalizerinfoproc64.sh cp heapdumpproc.sh $SA_NAME ; chmod 755 $SA_NAME/heapdumpproc.sh cp heapdumpproc64.sh $SA_NAME ; chmod 755 $SA_NAME/heapdumpproc64.sh cp heapsumproc.sh $SA_NAME ; chmod 755 $SA_NAME/heapsumproc.sh cp heapsumproc64.sh $SA_NAME ; chmod 755 $SA_NAME/heapsumproc64.sh cp hsdbproc.sh $SA_NAME ; chmod 755 $SA_NAME/hsdbproc.sh cp hsdbproc64.sh $SA_NAME ; chmod 755 $SA_NAME/hsdbproc64.sh cp jcoreproc.sh $SA_NAME ; chmod 755 $SA_NAME/jcoreproc.sh cp jcoreproc64.sh $SA_NAME ; chmod 755 $SA_NAME/jcoreproc64.sh cp jdbcore.sh $SA_NAME ; chmod 755 $SA_NAME/jdbcore.sh cp jdbcore64.sh $SA_NAME ; chmod 755 $SA_NAME/jdbcore64.sh cp jdbproc.sh $SA_NAME ; chmod 755 $SA_NAME/jdbproc.sh cp jdbproc64.sh $SA_NAME ; chmod 755 $SA_NAME/jdbproc64.sh cp jhistoproc.sh $SA_NAME ; chmod 755 $SA_NAME/jhistoproc.sh cp jhistoproc64.sh $SA_NAME ; chmod 755 $SA_NAME/jhistoproc64.sh cp jsdbproc.sh $SA_NAME ; chmod 755 $SA_NAME/jsdbproc.sh cp jsdbproc64.sh $SA_NAME ; chmod 755 $SA_NAME/jsdbproc64.sh cp jstackproc.sh $SA_NAME ; chmod 755 $SA_NAME/jstackproc.sh cp jstackproc64.sh $SA_NAME ; chmod 755 $SA_NAME/jstackproc64.sh cp permstatproc.sh $SA_NAME ; chmod 755 $SA_NAME/permstatproc.sh cp permstatproc64.sh $SA_NAME ; chmod 755 $SA_NAME/permstatproc64.sh cp pmapproc.sh $SA_NAME ; chmod 755 $SA_NAME/pmapproc.sh cp pmapproc64.sh $SA_NAME ; chmod 755 $SA_NAME/pmapproc64.sh cp pstackproc.sh $SA_NAME ; chmod 755 $SA_NAME/pstackproc.sh cp pstackproc64.sh $SA_NAME ; chmod 755 $SA_NAME/pstackproc64.sh cp soqlproc.sh $SA_NAME ; chmod 755 $SA_NAME/soqlproc.sh cp soqlproc64.sh $SA_NAME ; chmod 755 $SA_NAME/soqlproc64.sh cp start-debug-server $SA_NAME ; chmod 755 $SA_NAME/start-debug-server cp start-debug-server-proc.sh $SA_NAME ; chmod 755 $SA_NAME/start-debug-server-proc.sh cp start-debug-server-proc64.sh $SA_NAME ; chmod 755 $SA_NAME/start-debug-server-proc64.sh cp start-rmiregistry.sh $SA_NAME ; chmod 755 $SA_NAME/start-rmiregistry.sh # copy Windows batch files cp saenv.bat $SA_NAME ; chmod 755 $SA_NAME/saenv.bat cp saenv64.bat $SA_NAME ; chmod 755 $SA_NAME/saenv64.bat cp clhsdbwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/clhsdbwindbg.bat cp clhsdbwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/clhsdbwindbg64.bat cp dumpflagswindbg.bat $SA_NAME ; chmod 755 $SA_NAME/dumpflagswindbg.bat cp dumpflagswindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/dumpflagswindbg64.bat cp dumpsyspropswindbg.bat $SA_NAME ; chmod 755 $SA_NAME/dumpsyspropswindbg.bat cp dumpsyspropswindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/dumpsyspropswindbg64.bat cp finalizerinfowindbg.bat $SA_NAME ; chmod 755 $SA_NAME/finalizerinfowindbg.bat cp finalizerinfowindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/finalizerinfowindbg64.bat cp heapdumpwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/heapdumpwindbg.bat cp heapdumpwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/heapdumpwindbg64.bat cp heapsumwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/heapsumwindbg.bat cp heapsumwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/heapsumwindbg64.bat cp hsdbwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/hsdbwindbg.bat cp hsdbwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/hsdbwindbg64.bat cp jcorewindbg.bat $SA_NAME ; chmod 755 $SA_NAME/jcorewindbg.bat cp jcorewindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/jcorewindbg64.bat cp jhistowindbg.bat $SA_NAME ; chmod 755 $SA_NAME/jhistowindbg.bat cp jhistowindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/jhistowindbg64.bat cp jsdbwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/jsdbwindbg.bat cp jsdbwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/jsdbwindbg64.bat cp jstackwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/jstackwindbg.bat cp jstackwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/jstackwindbg64.bat cp permstatwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/permstatwindbg.bat cp permstatwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/permstatwindbg64.bat cp pmapwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/pmapwindbg.bat cp pmapwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/pmapwindbg64.bat cp pstackwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/pstackwindbg.bat cp pstackwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/pstackwindbg64.bat cp soqlwindbg.bat $SA_NAME ; chmod 755 $SA_NAME/soqlwindbg.bat cp soqlwindbg64.bat $SA_NAME ; chmod 755 $SA_NAME/soqlwindbg64.bat cp start-debug-server-windbg.bat $SA_NAME ; chmod 755 $SA_NAME/start-debug-server-windbg.bat cp start-debug-server-windbg64.bat $SA_NAME ; chmod 755 $SA_NAME/start-debug-server-windbg64.bat cp start-rmiregistry.bat $SA_NAME ; chmod 755 $SA_NAME/start-rmiregistry.bat # make the libproc test cd ../test/libproc ; make; cd ../../make # copy libproc test suite cp ../test/libproc/README $SA_TEST/README-libproc cp ../test/libproc/libproctest.sh $SA_TEST ; chmod 755 $SA_TEST/libproctest.sh cp ../test/libproc/libproctest64.sh $SA_TEST ; chmod 755 $SA_TEST/libproctest64.sh cp ../test/libproc/*.class $SA_TEST # copy RMI security policy file cp grantAll.policy $SA_NAME # copy documentation mkdir $SA_NAME/doc cp ../doc/*.html $SA_NAME/doc chmod 644 $SA_NAME/doc/*.html # make lib dir and copy other jar files mkdir $SA_NAME/lib cp ../src/share/lib/*.jar $SA_NAME/lib # tar and gzip tar -cvf $SA_NAME.tar $SA_NAME gzip $SA_NAME.tar # cleanup \rm -rf $SA_NAME