Thanks, I pushed: http://hg.openjdk.java.net/jdk9/dev/jdk/rev/2b5229c75e93

Best regards
Christoph

> -----Original Message-----
> From: Chris Hegarty [mailto:chris.hega...@oracle.com]
> Sent: Dienstag, 27. September 2016 21:24
> To: Langer, Christoph <christoph.lan...@sap.com>
> Cc: net-dev@openjdk.java.net
> Subject: Re: RFR(XS): 8166584: Remove obsolete utility function
> NET_ThrowSocketException in windows libnet
> 
> 
> > On 27 Sep 2016, at 19:56, Langer, Christoph <christoph.lan...@sap.com>
> wrote:
> >
> > Chris,
> >
> > thanks for your input.
> >
> > If there's no objections I'd push it like this later tomorrow:
> > http://cr.openjdk.java.net/~clanger/webrevs/8166584.2/
> 
> Looks ok to me Christoph.
> 
> Thanks,
> -Chris.
> 
> > I've replaced the JNU_JAVANETPKG and JNU_JAVAIOPKG macros with the full
> exception class names.
> >
> > Best regards
> > Christoph
> >
> >> -----Original Message-----
> >> From: Chris Hegarty [mailto:chris.hega...@oracle.com]
> >> Sent: Dienstag, 27. September 2016 10:10
> >> To: Langer, Christoph <christoph.lan...@sap.com>
> >> Cc: net-dev@openjdk.java.net
> >> Subject: Re: RFR(XS): 8166584: Remove obsolete utility function
> >> NET_ThrowSocketException in windows libnet
> >>
> >> Christoph,
> >>
> >> On 26 Sep 2016, at 18:58, Langer, Christoph <christoph.lan...@sap.com>
> >> wrote:
> >>>
> >>> Hi Chris,
> >>>
> >>> I agree with your comment on the NPE. It would probably be wrong. So I
> >> restored the old code and also removed the comments suggesting the NPE.
> >> Here is my new webrev:
> >> http://cr.openjdk.java.net/~clanger/webrevs/8166584.1/
> >>
> >> This looks fine.
> >>
> >>> What I was thinking a bit more about after I posted my initial webrev was
> the
> >> fact that the old NET_ThrowSocketException would register a GlobalRef to
> >> java/net/SocketException whereas the other, more generic code would
> always
> >> use the lookup by name. Would you think it is a performance benefit to keep
> a
> >> reference to a standard exception class in some place and use it for
> throwing
> >> or is it better to always look up the class? Throwing those kind of 
> >> exceptions
> is
> >> probably not on the hot path anyway - but on the other hand it should be no
> >> issue to keep references to these very basic class types. What's your view 
> >> on
> >> that?
> >>
> >> I don’t believe that using a GlobalRef is worth it here. It adds a little
> >> complication, while not offering much benefit. JNU_ThrowByName
> >> should be fine.
> >>
> >>> And another probably aesthetic thing: I notice that sometimes a
> >> JNU_JAVANETPKG "SocketException" is used and sometimes a
> >> "java/net/SocketException", even within the same file like
> SocketInputStream.c.
> >> Maybe I should unify this in the files that I touch here and if yes, shall 
> >> I use
> the
> >> literal name or the JNU_JAVANETPKG define? Any opinion on that?
> >>
> >> My preference is to remove JNU_JAVANETPKG, and just use "java/net/“.
> >>
> >> -Chris
> >>
> >>> Thanks for taking care of this,
> >>> Christoph
> >>>
> >>>
> >>>> -----Original Message-----
> >>>> From: Chris Hegarty [mailto:chris.hega...@oracle.com]
> >>>> Sent: Montag, 26. September 2016 16:51
> >>>> To: Langer, Christoph <christoph.lan...@sap.com>; net-
> >> d...@openjdk.java.net
> >>>> Subject: Re: RFR(XS): 8166584: Remove obsolete utility function
> >>>> NET_ThrowSocketException in windows libnet
> >>>>
> >>>> Christoph,
> >>>>
> >>>> On 22/09/16 21:59, Langer, Christoph wrote:
> >>>>> Hi,
> >>>>>
> >>>>> while looking at utility functions for creating exceptions in
> >>>>> libjava/libnet I found a small spot that should be consolidated right
> away.
> >>>>>
> >>>>>
> >>>>> The function NET_ThrowSocketException does only exist in the windows
> >>>>> native implementation and is only used in 3 places in
> >>>>> SocketInputStream.c. I removed this in favor of directly calling
> >>>>> JNU_ThrowByName as the Unix variant of that code already does.
> >>>>>
> >>>>>
> >>>>> In that function Java_java_net_SocketInputStream_socketRead0 I also
> >>>>> replaced throwing a SocketException with throwing an NPE in the rare
> >>>>> case that a the JNI input for the file descriptor is null. That's
> >>>>> probably more natural and should virtually never occur anyways.
> >>>>
> >>>> Hmmm... I'm not sure about this. SocketException is thrown on
> >>>> unix too for a similar situation. More significantly, a null value
> >>>> represents that the socket has been, possibly asynchronously,
> >>>> closed.
> >>>>
> >>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8166584
> >>>>>
> >>>>> Webrev: http://cr.openjdk.java.net/~clanger/webrevs/8166584.0/
> >>>>
> >>>> Other than the above concern, the remainder of the code looks ok
> >>>> to me.
> >>>>
> >>>> -Chris.
> >

Reply via email to