158 Commits

Author SHA1 Message Date
Dmitry Samersoff
98c327bc7d 8009062: poor performance of JNI AttachCurrentThread after fix for 7017193
Don't re-evaluate stack bounds for main thread before install guard page

Reviewed-by: coleenp, dholmes, dlong
2013-08-29 21:48:23 +04:00
Stefan Karlsson
7ade7987a0 8007074: SIGSEGV at ParMarkBitMap::verify_clear()
Replace the broken large pages implementation on Linux. New flag: -XX:+UseTransparentHugePages - Linux specific flag to turn on transparent huge page hinting with madvise(..., MAP_HUGETLB). Changed behavior: -XX:+UseLargePages - tries to use -XX:+UseTransparentHugePages before trying other large pages implementations (on Linux). Changed behavior: -XX:+UseHugeTLBFS - Use upfront allocation of Large Pages instead of using the broken implementation to dynamically committing large pages. Changed behavior: -XX:LargePageSizeInBytes - Turned off the ability to use this flag on Linux and provides warning to user if set to a value different than the OS chosen large page size. Changed behavior: Setting no large page size - Now defaults to use -XX:UseTransparentHugePages if the OS supports it. Previously, -XX:+UseHugeTLBFS was chosen if the OS was configured to use large pages.

Reviewed-by: tschatzl, dcubed, brutisso
2013-08-16 13:22:32 +02:00
Calvin Cheung
ef70244a9a 8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
Added (sig < MAXSIGNUM) check in jsig.c

Reviewed-by: dholmes, acorn
2013-07-17 12:22:57 -07:00
Peter Allwin
221308625d 7162400: Intermittent java.io.IOException: Bad file number during HotSpotVirtualMachine.executeCommand
Intermittent java.io.IOException: Bad file number during HotSpotVirtualMachine.executeCommand

Reviewed-by: dcubed, dholmes, sspitsyn, mgerdin, ctornqvi, dsamersoff
2013-07-12 18:43:27 +02:00
Daniel D. Daugherty
765f5cd4e7 8015884: runThese crashed with SIGSEGV, hs_err has an error instead of stacktrace
Dl_info struct should only be used if dladdr() has returned non-zero (no errors) and always check the dladdr() return value; Dl_info.dli_sname and Dl_info.dli_saddr fields should only be used if non-NULL; update/improve runtime/6888954/vmerrors.sh test

Reviewed-by: dsamersoff, zgu, hseigel, coleenp
2013-07-04 21:10:17 -07:00
Zhengyu Gu
61a30f035b 8013651: NMT: reserve/release sequence id's in incorrect order due to race
Fixed NMT race condition for realloc, uncommit and release

Reviewed-by: coleenp, ccheung
2013-06-18 08:44:08 -04:00
Ron Durbin
be6e745755 7178026: os::close can restart ::close but that is not a restartable syscall
Removed restart macros from all os:close calls on Solaris, Linux, MacOS X platforms.

Reviewed-by: dcubed, dholmes
2013-06-14 07:46:22 -07:00
Daniel D. Daugherty
72a51a0c44 8013057: assert(_needs_gc || SafepointSynchronize::is_at_safepoint()) failed: only read at safepoint
Detect mmap() commit failures in Linux and Solaris os::commit_memory() impls and call vm_exit_out_of_memory(). Add os::commit_memory_or_exit(). Also tidy up some NMT accounting and some mmap() return value checking.

Reviewed-by: zgu, stefank, dholmes, dsamersoff
2013-06-13 11:16:38 -07:00
Staffan Larsen
718f3252f6 8005849: JEP 167: Event-Based JVM Tracing
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Co-authored-by: Bengt Rutisson <bengt.rutisson@oracle.com>
Co-authored-by: Calvin Cheung <calvin.cheung@oracle.com>
Co-authored-by: Erik Gahlin <erik.gahlin@oracle.com>
Co-authored-by: Erik Helin <erik.helin@oracle.com>
Co-authored-by: Jesper Wilhelmsson <jesper.wilhelmsson@oracle.com>
Co-authored-by: Keith McGuigan <keith.mcguigan@oracle.com>
Co-authored-by: Mattias Tobiasson <mattias.tobiasson@oracle.com>
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Co-authored-by: Mikael Auno <mikael.auno@oracle.com>
Co-authored-by: Nils Eliasson <nils.eliasson@oracle.com>
Co-authored-by: Nils Loodin <nils.loodin@oracle.com>
Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
Reviewed-by: acorn, coleenp, sla
2013-06-10 11:30:51 +02:00
Thomas Schatzl
54964edefa 8013895: G1: G1SummarizeRSetStats output on Linux needs improvemen
Fixed the output of G1SummarizeRSetStats: too small datatype for the number of concurrently processed cards, added concurrent remembered set thread time retrieval for Linux and Windows (BSD uses os::elapsedTime() now), and other cleanup. The information presented during VM operation is now relative to the previous output, not always cumulative if G1SummarizeRSetStatsPeriod > 0. At VM exit, the code prints a cumulative summary.

Reviewed-by: johnc, jwilhelm
2013-05-28 09:32:06 +02:00
Vladimir Kozlov
43fbbe98b7 Merge 2013-05-02 18:50:05 -07:00
Vladimir Danushevsky
867c30e1bd 8013398: Adjust number of stack guard pages on systems with large memory page size
Auto adjust number of stack guard pages on systems with large memory page size

Reviewed-by: bobv, coleenp
2013-04-30 17:36:01 -04:00
Mikael Vidstedt
9e8a3585b0 8012015: Use PROT_NONE when reserving memory
Reserved memory had PROT_READ+PROT_WRITE access on Linux/bsd, now changed to PROT_NONE.

Reviewed-by: dholmes, ctornqvi
2013-04-29 11:03:49 -07:00
Vladimir Ivanov
f26c1a6c88 8012260: ciReplay: Include PID into the name of replay data file
Reviewed-by: kvn, twisti
2013-04-25 11:02:32 -07:00
Niclas Adlertz
09fdc18edc 8011621: live_ranges_in_separate_class.patch
Reviewed-by: kvn, roland
2013-04-16 10:08:41 +02:00
Zhengyu Gu
e722199fc0 Merge 2013-04-05 23:10:04 -07:00
Calvin Cheung
a72b5d24e6 8006001: [parfait] Possible file leak in hotspot/src/os/linux/vm/perfMemory_linux.cpp
Reviewed-by: zgu, coleenp, hseigel, dholmes
2013-04-05 11:15:13 -07:00
Daniel D. Daugherty
78339229bb Merge 2013-04-05 10:38:08 -07:00
Mikael Vidstedt
eeb83733a6 8003310: Enable -Wunused-function when compiling with gcc
Add the -Wunused-function flag and remove a number of unused functions.

Reviewed-by: dholmes, coleenp, kvn
2013-04-04 10:01:26 -07:00
Calvin Cheung
33f6dd2215 8006103: [parfait] Possible null pointer dereference at hotspot/src/os/linux/vm/os_linux.cpp; os_windows.cpp; os_solaris.cpp; os_bsd.cpp
Reviewed-by: zgu, iklam
2013-04-03 16:43:09 -07:00
Mikael Gerdin
0a963fd1b7 Merge 2013-04-03 09:19:02 +02:00
Thomas Schatzl
bb5bd507d7 7112912: Message "Error occurred during initialization of VM" on boxes with lots of RAM
Ergonomics now also takes available virtual memory into account when deciding for a heap size. The helper method to determine the maximum allocatable memory block now uses the appropriate OS specific calls to retrieve available virtual memory for the java process. In 32 bit environments this method now also searches for the maximum actually reservable amount of memory. Merge previously separate implementations for Linux/BSD/Solaris into a single method.

Reviewed-by: jmasa, tamao
2013-03-27 19:21:18 +01:00
Ioi Lam
ba67f14480 8010389: After fix for 7107135 a failed dlopen() call results in a VM crash
Call dlerror() in VM thread as necessary.

Reviewed-by: coleenp, dholmes
2013-03-21 20:46:46 -07:00
Zhengyu Gu
4cdcd6dc13 8008257: NMT: assert(new_rec->is_allocation_record()) failed when running with shared memory option
Corrected virtual memory recording and tagging code when large pages are used

Reviewed-by: coleenp, ccheung
2013-03-07 14:06:44 -05:00
Ioi Lam
5116181e1f 7107135: Stack guard pages are no more protected after loading a shared library with executable stack
Detect the execstack attribute of the loaded library and attempt to fix the stack guard using Safepoint op.

Reviewed-by: dholmes, zgu
2013-03-05 13:55:56 -08:00
Volker Simonis
76fa595599 8008959: Fix non-PCH build on Linux, Windows and MacOS X
Fix the build without precompiled headers by either including the missing ".inline.hpp" files into the appropriate files or by turning inline-functions declared in header files into ordinary functions in ".cpp" files.

Reviewed-by: coleenp, stefank, dholmes
2013-02-27 09:40:30 +01:00
Harold Seigel
2d47fd6658 8004495: [parfait] False positive Buffer overflow in hotspot/src/os/linux/vm/os_linux.cpp
Delete the questionable source code because it is for no-longer supported versions of Linux.

Reviewed-by: mikael, coleenp
2013-02-20 07:16:23 -05:00
Harold Seigel
301152ddb7 6749267: Signal handler should save/restore errno
Save errno before processing signal, then restore it.

Reviewed-by: acorn, sspitsyn
2013-02-19 08:51:56 -05:00
Morris Meyer
7d8f623180 6518907: cleanup IA64 specific code in Hotspot
Removed unused IA64 specific code

Reviewed-by: twisti, kvn, dholmes
2013-01-25 16:50:33 -08:00
Dave Dice
98c357abf8 8004902: correctness fixes motivated by contended locking work (6607129)
Misc correctness fixes

Reviewed-by: acorn, dholmes, dice, sspitsyn
2013-01-22 05:56:42 -08:00
Harold Seigel
68f3dd76c9 7102489: RFE: cleanup jlong typedef on __APPLE__and _LLP64 systems
Define jlong as long on all LP64 platforms and add JLONG_FORMAT macro.

Reviewed-by: dholmes, coleenp, mikael, kvn
2013-01-17 10:25:16 -05:00
Ron Durbin
9c761152db 8005044: remove crufty '_g' support from HS runtime code
Phase 2 is removing '_g' support from the Runtime code.

Reviewed-by: dcubed, coleenp, hseigel
2012-12-19 10:35:08 -08:00
Roland Westrelin
d8921b191a Merge 2012-12-07 01:09:03 -08:00
Stefan Karlsson
57204d9f34 8003935: Simplify the needed includes for using Thread::current()
Reviewed-by: dholmes, rbackman, coleenp
2012-11-27 14:20:21 +01:00
Christian Thalinger
2c2c007448 8003240: x86: move MacroAssembler into separate file
Reviewed-by: kvn
2012-11-30 15:23:16 -08:00
Bill Pittore
dd5c8eb660 8001185: parsing of sun.boot.library.path in os::dll_build_name somewhat broken
Dll_dir can contain multiple paths, need to parse them correctly when loading agents

Reviewed-by: dholmes, dlong
2012-11-07 17:53:02 -05:00
Zhengyu Gu
3e481cdd81 7199092: NMT: NMT needs to deal overlapped virtual memory ranges
Enhanced virtual memory tracking to track committed regions as well as reserved regions, so NMT now can generate virtual memory map.

Reviewed-by: acorn, coleenp
2012-10-19 21:40:07 -04:00
Vladimir Kozlov
5f132a5ec3 Merge 2012-10-12 09:22:52 -07:00
Mikael Vidstedt
769dd50182 7197424: update copyright year to match last edit in jdk8 hotspot repository
Update copyright year to 2012 for relevant files

Reviewed-by: dholmes, coleenp
2012-10-09 10:09:34 -07:00
Vladimir Ivanov
822deb6ee6 7177003: C1: LogCompilation support
Add LogCompilation support in C1 - both client and tiered mode.

Reviewed-by: twisti, kvn
2012-10-05 18:57:10 -07:00
Nils Eliasson
e228ec4078 8000102: Resolve include conflicts
Removing include of c1/c1_runtime.hpp and opto/runtime.hpp from all os-files.

Reviewed-by: kvn
2012-10-04 06:31:07 -07:00
Brandon Mitchell
f51faf2bbe 7194409: os::javaTimeNanos() shows hot on CPU_CLK_UNHALTED profiles
Add inline directives to os::Linux::supports_monotonic_clock() and os::Bsd::supports_monotonic_clock().

Reviewed-by: johnc, azeemj, mikael
2012-08-29 13:02:54 -07:00
Mikael Vidstedt
af253d110d 7129724: MAC: Core file location is wrong in crash report
Updated core path location to reflect macosx default

Reviewed-by: dholmes, kamg
2012-07-03 17:35:00 -07:00
Zhengyu Gu
a39b17624a 6995781: Native Memory Tracking (Phase 1)
7151532: DCmd for hotspot native memory tracking

Implementation of native memory tracking phase 1, which tracks VM native memory usage, and related DCmd

Reviewed-by: acorn, coleenp, fparain
2012-06-28 17:03:16 -04:00
Rickard Bäckman
be3945d9ff 7161732: Improve handling of thread_id in OSThread
Reviewed-by: dholmes, kamg
2012-05-22 10:11:53 +02:00
Nils Loodin
7d82c13142 7165755: OS Information much longer on linux than other platforms
Reviewed-by: sla, dholmes
2012-05-10 15:44:19 +02:00
Rickard Bäckman
cf406f37e3 7160570: Intrinsification support for tracing framework
Reviewed-by: sla, never
2012-03-06 12:36:59 +01:00
Igor Veresov
12b4b456cb 7151089: PS NUMA: NUMA allocator should not attempt to free pages when using SHM large pages
Don't attempt to uncommit SHM-based large pages

Reviewed-by: kvn
2012-03-12 13:12:07 -07:00
Dean Long
9cd12c0bcd 7142641: -Xshared:on fails on ARM
Map read-only pages MAP_PRIVATE instead of MAP_SHARED

Reviewed-by: dcubed, dholmes
2012-02-29 12:58:49 -05:00
Paul Hohensee
09e21afaaa 7082553: Interpret Thread.setPriority(Thread.MAX_PRIORITY) to mean FX60 on Solaris 10 and 11
Add CriticalPriority == MaxPriority+1 and enable scheduling class as well as thread priority to change on Solaris.

Reviewed-by: dholmes, dcubed
2012-01-26 20:06:06 -05:00