forked from async-profiler/async-profiler
-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update from upstream (take 2) #4
Merged
Merged
Changes from all commits
Commits
Show all changes
119 commits
Select commit
Hold shift + click to select a range
985738e
Replace source/target with release in pom.xml
apangin a175293
#881: --to/from arguments did not work with jfrsync
apangin 7643623
#872: Get rid of libstdc++ streams
apangin 03004b6
#769: Workaround for JDK-8312065 on JDK 8
apangin f657048
#885: Print error message if JVM fails to load libasyncProfiler.so
apangin deec218
#884: Record event timestamps early
apangin e751ea1
#886: Support cstack=vm for slowdebug JVM
apangin ad05845
Fix Proto encoding of negative integers (#889)
cklin 3b2d969
Fix memory leak of keys from jvmti->GetSystemProperties (#891)
Charmik 6248a87
Updated comment on -j option
apangin 9fe16b6
#892: Resolve tracepoint id in asprof
apangin 7be97a0
Fix DefineClass crash on OpenJ9
apangin ddc280d
#896: Flame Graph: alt+click to remove stacks
apangin cbecc6f
#893: Fix [no_Java_frame] on ARM64
apangin 1be8838
Do not parse the same executable twice
apangin 397f450
#759: Discover available profiling signal automatically
apangin a75ebc7
#905, #895: Converter enhancements
apangin 241f5e3
Build failure due to missing -ldl
apangin 5da0a5f
FlameGraph: search with Command+F key (⌘F) on mac (#906)
qwwdfsad 978fe2c
Pack stack traces in pprof format
apangin 005f7a3
Workaround dependency on GLIBCXX_3.4.20
apangin 059cf13
#917: Allow `-e alloc,cpu,lock` syntax
apangin ac514e5
#914: Do not set DebugNonSafepoints, if it is already set in the Comm…
apangin 2de2a18
jfrconv: autodetect pb.gz output format
apangin 26a94a1
Build jfrconv.exe for Windows
apangin 07e6015
#921: Fix compilation failure on ARM32
apangin 9733a08
An option to accumulate JFR events in memory instead of flushing to a…
apangin b96d09a
Minor refactoring
apangin ed7d848
#928: Do not record live object samples between JFR chunks
apangin 048cafa
#923: Adjust VMStructs for JDK 23
apangin 0c4cd5c
#934: Fix crash on Zing in a native thread
apangin 34a9e13
#923: cstack=vm support for JDK 23+
apangin 2f30dc3
#940: lseek64 is not declared when compiling on Alpine/aarch64
apangin 4753436
JfrReader should read strings in a constant pool
apangin dbcaa4d
JfrReader should jump over custom events
apangin 33a65c8
#895: Rewrote jfrconv to make it a statically linked executable
apangin 9660e15
Fix jfrconv build rules for macOS
apangin 28fbb13
Handle truncated JFRs
apangin 30f4f32
Cleanup dead code
apangin f4528de
Added CoC and Contributing Guidelines
apangin df4af83
Added issue and pull request templates
apangin 0d90f1c
Do not package redundant .md files
apangin 4e9f096
Simplify Makefile
apangin c253454
#952: Solve musl and glibc compatibility issues
apangin e38cd32
#952: Docker image for building async-profiler release packages for x…
apangin 76c2024
Test framework and a set of new tests (#812, #951)
roy-soumadipta 174e295
Test framework cleanup and fixes
apangin bd095f1
#955: Add --libpath option to specify the path of libasyncProfier.so …
yanglong1010 c9cb0c1
Minor cleanup
apangin 6207d5d
Fix unsafe access to CodeCache
apangin 09f0a8f
#959: JFR converter fails to filter thread states in jfrsync profiles
apangin 7f712bb
Fixed recursion in pthread_create when using native profiling API
apangin 78123a8
Fixed parsing non-PIC executables
apangin 321a712
Added Native API test
apangin 4011896
#929: Load symbols from debuginfod cache (#962)
krk 179b0b1
Minor stylistic changes
apangin 7631114
#843: Fix race between parsing and concurrent unloading of shared lib…
apangin 02670cc
Fixed out-of-bounds array access in getDebuginfodCache()
apangin b8025a2
Make JfrClass field method public so that G1HeapSummary class has acc…
Alih789 d92b893
Add flamegraph to collapsed conversion in test framework (#976)
roy-soumadipta b9a3737
Avoid JVM crash by deleting JNI refs after calling GetMethodDeclaring…
krk 25fa02e
Sample contended locks by overflowing interval bucket (#982)
krk c122fde
Enable jfr tests (#992)
roy-soumadipta 69e0479
#993: Filter native frames in allocation profile
apangin e6a1581
Fix KernelTests#notLinux test (#997)
parttimenerd c299592
#993: Filter native frames in allocation profile: OpenJ9 and stripped…
apangin 6d7f73a
Profiling output respects loglevel (#986)
krk 69c9dda
An option to display instruction addresses (#1002)
apangin f66056a
Make profiler version and arch tag configurable (#1004)
shipilev 0ed06fa
Tweak tests so that they pass more reliably (#1006)
openorclose 2833cab
Whitespace at EOL
apangin d66717c
Add new test to validate JFR output with JDK JFR parser. (#1005)
roy-soumadipta 82ebeda
Add missing copyright header. (#1010)
roy-soumadipta 5a093b6
Fixed test compilation warnings
apangin e504460
#983: Added support for jfr->collapsed conversion
apangin a386afa
#1003: Support both tracefs and debugfs for kernel tracepoints
apangin f53bfd4
#1007: Optimize wall clock profiling
apangin f43a6f8
Lock sampling fixes:
apangin 9db2631
Fixed test compatibility issues
apangin 1ed9df9
Intercept java.util.concurrent locks more efficiently (#1013)
apangin 2d04311
Fixed warnings with -Xcheck:jni
apangin 1291692
Obtain can_generate_sampled_object_alloc_events JVMTI capability only…
openorclose 37ff942
EventAggregator collects both samples and values
apangin 061f03d
An option to coarsen flame graphs (#1018)
apangin e0885e3
Assert on total wait time in lock contention tests (#1017)
krk 4208d5c
Minor style/formatting changes
apangin 3992d6a
Fixed crashes on Alpine when profiling native apps
apangin 445bafb
Do not fail sudo tests if running under root
apangin 4ee2a5d
Log test args and inputs. (#1021)
krk 74ffc67
Fix flaky tests
apangin 80b59a0
Update tests to pass more reliably (#1022)
openorclose 8c28cd8
Implement builds on each commit using Github Actions (#998)
openorclose 63009d0
Update paths to codebuild runners (#1028)
openorclose da3f5f3
Reset CallTraceStorage counters before reporting live objects (#1009)
krk 5a90a82
Add GHA to validate required license headers (#1016)
roy-soumadipta 62dca46
Simplify java assertions and add messages to all (#1027)
krk 59d2def
Next generation test runner (#1023)
krk ecd8f3a
Refactor nightly builds to delete previous release and create a new r…
openorclose 6bd9dfa
Merged Dockerfiles
apangin 08f29f8
Fix possible uninitialized variable access, method_class (#1034)
krk 0432101
#1040: Removed the link to outdated wiki
apangin f59894d
EventAggregator helper method
apangin 116504c
Initialize rem_* in DwarfParser.parseInstructions (#1039)
krk 870833b
#1007: Use ExecutionSample event for CPU profiling and WallClockSampl…
apangin adecac7
Print exceptions in test output; measure test run time in seconds
apangin 6c32ce9
#1044: Fall back to ctimer for CPU profiling when perf_events are una…
apangin 6f2c6cc
Nightly builds enhancement (#1047)
openorclose 0cd9726
#1044: Automatically switch on --all-user for non-CPU events if kerne…
apangin 36168a1
#1041: Adjust SP of a caller frame obtained with __builtin_frame_address
apangin e6a319e
Increase setup_lib_path buf size to PATH_MAX (#1049)
krk 083d85f
Upload hs_err logs to artifacts (#1050)
openorclose f863502
Initialize CodeCache to NULL (#1051)
krk 603db84
Fix errors in LockTests.datagramSocketLock (#1053)
alvdavi 3cf733d
Unit test fw from scratch and PerfEventType::forName tests (#1036)
krk 6682ad6
Test corretto 11, 17, 21, 23 in CI (#1058)
krk 3e7c839
Merge remote-tracking branch 'upstream/master' into update-from-upstream
aleks-p 80fb581
Fix tests
aleks-p ee0d73d
Re-add missing bits to Dockerfile
aleks-p 19b8d64
Package the jar on release
aleks-p File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,3 +7,4 @@ cmake-build-debug/ | |
/test/*.class | ||
.vscode | ||
*.iml | ||
/src/api/**/*.class |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
header: | ||
- paths: | ||
- 'src/jattach' | ||
license: | ||
content: | | ||
Copyright The jattach authors | ||
SPDX-License-Identifier: Apache-2.0 | ||
|
||
comment: on-failure | ||
|
||
- paths: | ||
- 'src' | ||
- 'test' | ||
paths-ignore: | ||
- 'src/jattach' | ||
- 'src/res' | ||
license: | ||
content: | | ||
Copyright The async-profiler authors | ||
SPDX-License-Identifier: Apache-2.0 | ||
|
||
comment: on-failure |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,41 @@ | ||
FROM centos:7 as glibc | ||
RUN yum -y update && yum -y install make git gcc-c++ java-11-openjdk-devel glibc-static | ||
ADD ./src /asprof/src | ||
ADD ./Makefile ./LICENSE ./*.md ./JavaHome.class /asprof/ | ||
WORKDIR /asprof | ||
RUN make release | ||
# Image for building async-profiler release packages | ||
|
||
# Stage 0: download and build musl | ||
FROM public.ecr.aws/debian/debian:10-slim | ||
|
||
RUN apt-get update && apt-get install -y --no-install-recommends \ | ||
sudo libicu-dev patchelf curl make g++ openjdk-11-jdk-headless gcovr && \ | ||
rm -rf /var/cache/apt /var/lib/apt/lists/* | ||
|
||
ARG musl_src=musl-1.2.5 | ||
ARG musl_sha256=a9a118bbe84d8764da0ea0d28b3ab3fae8477fc7e4085d90102b8596fc7c75e4 | ||
|
||
FROM alpine:3.13 as musl | ||
RUN apk add gcc g++ make openjdk11 linux-headers | ||
ADD https://musl.libc.org/releases/${musl_src}.tar.gz / | ||
RUN echo ${musl_sha256} ${musl_src}.tar.gz | sha256sum -c | ||
|
||
RUN ["/bin/bash", "-c", "\ | ||
tar xfz ${musl_src}.tar.gz && \ | ||
cd /${musl_src} && \ | ||
./configure --disable-shared --prefix=/usr/local/musl && \ | ||
make -j`nproc` && make install && make clean && \ | ||
ln -s /usr/include/$(arch)-linux-gnu/asm /usr/include/{asm-generic,linux} /usr/local/musl/include/"] | ||
|
||
# Stage 1: install build tools + copy musl toolchain from the previous step | ||
FROM public.ecr.aws/debian/debian:10-slim | ||
|
||
# The following command should be exactly the same as at stage 0 to benefit from caching. | ||
# libicu-dev is needed for the github actions runner | ||
RUN apt-get update && apt-get install -y --no-install-recommends \ | ||
sudo libicu-dev patchelf curl make g++ openjdk-11-jdk-headless gcovr && \ | ||
rm -rf /var/cache/apt /var/lib/apt/lists/* | ||
|
||
COPY --from=0 /usr/local/musl /usr/local/musl | ||
|
||
RUN mkdir -p /asprof | ||
ADD ./src /asprof/src | ||
ADD ./Makefile ./LICENSE ./*.md ./JavaHome.class /asprof/ | ||
WORKDIR /asprof | ||
RUN make release | ||
|
||
|
||
FROM scratch | ||
COPY --from=glibc /asprof/*.tar.gz / | ||
COPY --from=musl /asprof/*.tar.gz / | ||
COPY --from=1 /asprof/*.tar.gz / |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To not forget: Change this back in case we decide not to bump.