Hi,

webrev
  http://cr.openjdk.java.net/~kshoop/6415680/

bug:
  https://bugs.openjdk.java.net/browse/JDK-6415680 

The changes for unix to handle SIGBUS need matching work for Windows 
EXCEPTION_IN_PAGE_ERROR
This change uses handler_for_unsafe_access for in-page errors while 
set_doing_safe_access is true and has Unsafe_CopyMemory call 
set_doing_unsafe_access(true)

The bug refers to DRM or encrypted file systems. However, this also occurs with 
interrupted network connections. 

To reproduce, I used 
http://cr.openjdk.java.net/~kshoop/6415680/FileCopyUtil.java
I would start the app with a path to a file on an SMB server and then when 
prompted to press enter, disconnect the server from the network and then hit 
enter to cause the app to attempt to page in the mapped pages.

With this change the following output is expected:
++++++++++++
OpenJDK 64-Bit Server VM (build 1.9.0-internal-_2015_04_03_10_46-b00, mixed 
mode)
 
72535 micro seconds to InitializeJVM
Main class is 'FileCopyUtil'
App's argc is 1
    argv[ 0] = '\kshoop-testpublicalloctrace.etl'
36985 micro seconds to load main class
----_JAVA_LAUNCHER_DEBUG----
F\kshoop-testpublicalloctrace.etl
file map created.
Press ENTER to proceed.
 
Exception in thread "main" java.lang.InternalError: a fault occurred in an 
unsafe memory access operation
++++++++++++

Kirk

Developer
Microsoft Open Technologies, Inc.

Reply via email to