Hello , there is a similar pattern (attempt to restart close in case of
EINTR) in the coding as well in socket_md.c :
src/jdk.jdwp.agent/unix/native/libdt_socket/socket_md.c-147- int rv;
src/jdk.jdwp.agent/unix/native/libdt_socket/socket_md.c-148- do {
src/jdk.jdwp.agent/unix/native/libdt_socket/socket_md.c-149- rv =
close(fd);
src/jdk.jdwp.agent/unix/native/libdt_socket/socket_md.c:150: } while (rv ==
-1 && errno == EINTR);
src/jdk.jdwp.agent/unix/native/libdt_socket/socket_md.c-151-
src/jdk.jdwp.agent/unix/native/libdt_socket/socket_md.c-152- return rv;
src/jdk.jdwp.agent/unix/native/libdt_socket/socket_md.c-153-}
Do you think this needs adjustment (on LINUX) as well ?
Best regards, Matthias
> Message: 2
> Date: Thu, 28 Jun 2018 18:19:46 +0100
> From: Alan Bateman <[email protected]>
> To: David Lloyd <[email protected]>, [email protected]
> Cc: OpenJDK Network Dev list <[email protected]>
> Subject: Re: RFR : 8205959 : Do not restart close if errno is EINTR
> Message-ID: <[email protected]>
> Content-Type: text/plain; charset=utf-8; format=flowed
>
> On 28/06/2018 17:35, David Lloyd wrote:
> > :
> > Do you (or Alan) think that this might have accounted for real-world
> > connection problems?
> >
> In the file I/O area, with NFS I think, we had an issue a long time ago
> where close was retried after EIO. That issue was fixed a long time ago
> but it's one that comes to mind in this general area.
>
> -Alan
>