[crac] RFR: Improved open file descriptors tracking
Radim Vansa
duke at openjdk.org
Tue Jan 31 10:34:43 UTC 2023
Tracks `java.io.FileDescriptor` instances as CRaC resource; before checkpoint these are reported and if not allow-listed (e.g. as opened as standard descriptors) an exception is thrown. Further investigation can use system property `jdk.crac.collect-fd-stacktraces=true` to record origin of those file descriptors.
File descriptors claimed in Java code are passed to native; native code checks all open file descriptors and reports error if there's an unexpected FD that is not included in the list passed previously.
-------------
Commit messages:
- Avoid claiming invalid FileDescriptor
- Whitelist RandomAccessFile opening classpath files
- Add tracking of FD origin
- Track FileDescriptors closed by NIO
- Track native FDs from EPoll
- Ignore FileDescriptors closed externally
- Better FD, does not work
- Finish claimFD
- WIP
- WIP
- ... and 1 more: https://git.openjdk.org/crac/compare/65e0785e...432c3f73
Changes: https://git.openjdk.org/crac/pull/43/files
Webrev: https://webrevs.openjdk.org/?repo=crac&pr=43&range=00
Stats: 602 lines in 26 files changed: 361 ins; 204 del; 37 mod
Patch: https://git.openjdk.org/crac/pull/43.diff
Fetch: git fetch https://git.openjdk.org/crac pull/43/head:pull/43
PR: https://git.openjdk.org/crac/pull/43
More information about the crac-dev
mailing list