diff options
author | Alex Dupre <ale@FreeBSD.org> | 2018-12-27 09:52:52 +0000 |
---|---|---|
committer | Alex Dupre <ale@FreeBSD.org> | 2018-12-27 09:52:52 +0000 |
commit | ad43f6fd6e9b495c737d45e14f563c63f298c083 (patch) | |
tree | 2053bbf6e05831e38264f5a50b41809e5a19bfc1 /java/openjdk8/files | |
parent | security/pwned-check: Remove spaces from sample config file (diff) |
Add a WatchService implementation backed by kqueue,
leveraging the libinotify wrapper.
It's still possible to use the polling watchservice,
by defining the following system property:
sun.nio.fs.watchservice=polling
Notes
Notes:
svn path=/head/; revision=488523
Diffstat (limited to 'java/openjdk8/files')
4 files changed, 64 insertions, 0 deletions
diff --git a/java/openjdk8/files/patch-jdk-make-CompileJavaClasses.gmk b/java/openjdk8/files/patch-jdk-make-CompileJavaClasses.gmk new file mode 100644 index 000000000000..82be1f09b4be --- /dev/null +++ b/java/openjdk8/files/patch-jdk-make-CompileJavaClasses.gmk @@ -0,0 +1,18 @@ +--- ./jdk/make/CompileJavaClasses.gmk.orig 2018-12-13 14:57:18.491487000 +0100 ++++ ./jdk/make/CompileJavaClasses.gmk 2018-12-13 14:58:08.484490000 +0100 +@@ -129,12 +129,12 @@ + sun/nio/fs/LinuxFileSystem.java \ + sun/nio/fs/LinuxFileSystemProvider.java \ + sun/nio/fs/LinuxNativeDispatcher.java \ +- sun/nio/fs/LinuxUserDefinedFileAttributeView.java \ +- sun/nio/fs/LinuxWatchService.java ++ sun/nio/fs/LinuxUserDefinedFileAttributeView.java + endif + + ifeq (, $(filter $(OPENJDK_TARGET_OS), linux bsd)) +- EXFILES += sun/nio/fs/MagicFileTypeDetector.java ++ EXFILES += sun/nio/fs/MagicFileTypeDetector.java \ ++ sun/nio/fs/LinuxWatchService.java + endif + + ifneq ($(OPENJDK_TARGET_OS), macosx) diff --git a/java/openjdk8/files/patch-jdk-make-lib-NioLibraries.gmk b/java/openjdk8/files/patch-jdk-make-lib-NioLibraries.gmk new file mode 100644 index 000000000000..38b9b50996b4 --- /dev/null +++ b/java/openjdk8/files/patch-jdk-make-lib-NioLibraries.gmk @@ -0,0 +1,14 @@ +--- ./jdk/make/lib/NioLibraries.gmk.orig 2018-12-13 14:21:04.047810000 +0100 ++++ ./jdk/make/lib/NioLibraries.gmk 2018-12-13 14:48:16.288168000 +0100 +@@ -92,8 +92,11 @@ + PollArrayWrapper.c \ + UnixAsynchronousServerSocketChannelImpl.c \ + UnixAsynchronousSocketChannelImpl.c \ ++ LinuxWatchService.c \ + UnixCopyFile.c \ + UnixNativeDispatcher.c ++ BUILD_LIBNIO_CFLAGS += -I%%LOCALBASE%%/include ++ BUILD_LIBNIO_LDFLAGS += -L%%LOCALBASE%%/lib -linotify + endif + + ifeq ($(OPENJDK_TARGET_OS), macosx) diff --git a/java/openjdk8/files/patch-jdk-make-mapfiles-libnio-mapfile-bsd b/java/openjdk8/files/patch-jdk-make-mapfiles-libnio-mapfile-bsd new file mode 100644 index 000000000000..94f6626b9fce --- /dev/null +++ b/java/openjdk8/files/patch-jdk-make-mapfiles-libnio-mapfile-bsd @@ -0,0 +1,17 @@ +--- ./jdk/make/mapfiles/libnio/mapfile-bsd.orig 2018-12-13 15:20:56.817147000 +0100 ++++ ./jdk/make/mapfiles/libnio/mapfile-bsd 2018-12-13 15:22:41.507010000 +0100 +@@ -143,6 +143,14 @@ + Java_sun_nio_fs_MagicFileTypeDetector_initialize0; + Java_sun_nio_fs_MagicFileTypeDetector_probe0; + Java_sun_nio_fs_UnixCopyFile_transfer; ++ Java_sun_nio_fs_LinuxWatchService_eventSize; ++ Java_sun_nio_fs_LinuxWatchService_eventOffsets; ++ Java_sun_nio_fs_LinuxWatchService_inotifyInit; ++ Java_sun_nio_fs_LinuxWatchService_inotifyAddWatch; ++ Java_sun_nio_fs_LinuxWatchService_inotifyRmWatch; ++ Java_sun_nio_fs_LinuxWatchService_configureBlocking; ++ Java_sun_nio_fs_LinuxWatchService_socketpair; ++ Java_sun_nio_fs_LinuxWatchService_poll; + Java_sun_nio_fs_UnixNativeDispatcher_access0; + Java_sun_nio_fs_UnixNativeDispatcher_chmod0; + Java_sun_nio_fs_UnixNativeDispatcher_chown0; diff --git a/java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-BsdFileSystem.java b/java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-BsdFileSystem.java new file mode 100644 index 000000000000..9fd4b9b78818 --- /dev/null +++ b/java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-BsdFileSystem.java @@ -0,0 +1,15 @@ +--- ./jdk/src/solaris/classes/sun/nio/fs/BsdFileSystem.java.orig 2018-12-13 14:23:02.834223000 +0100 ++++ ./jdk/src/solaris/classes/sun/nio/fs/BsdFileSystem.java 2018-12-13 17:34:09.359192000 +0100 +@@ -45,8 +45,10 @@ + public WatchService newWatchService() + throws IOException + { +- // use polling implementation until we implement a BSD/kqueue one +- return new PollingWatchService(); ++ if (System.getProperty("sun.nio.fs.watchservice", "").equals("polling")) ++ return new PollingWatchService(); ++ else ++ return new LinuxWatchService(this); // use the linux inotify implementation that wraps the kqueue calls + } + + // lazy initialization of the list of supported attribute views |