RFR: JDK-8227021: VM fails if any sun.boot.library.path paths are longer than JVM_MAXPATHLEN
Daniel D. Daugherty
daniel.daugherty at oracle.com
Tue Aug 13 16:05:20 UTC 2019
Hi Adam,
I should have been more clear. The code review request should indicate
what kind of testing has been done on the change. Could be something
like:
- Ran through jdk_submit with no failures.
- Also ran the test from the bug report on Linux or Win* or XXX.
So I see that you've run the bug specific test. Did you run any other
testing like jdk_submit?
Dan
On 8/13/19 12:00 PM, Adam Farley8 wrote:
> Hi Daniel,
>
> The basic test case is described in the bug:
>
> java -Dsun.boot.library.path=$LONGPATH:$RIGHTPATH AnyClass
>
> (where LONGPATH has >5k characters in it)
>
> As this code path is executed during library loading at startup, this
> test case should be enough to demonstrate the fix.
>
> Does this answer your question?
>
> Best Regards
>
> Adam Farley
> IBM Runtimes
>
>
> "Daniel D. Daugherty" <daniel.daugherty at oracle.com> wrote on
> 13/08/2019 16:51:56:
>
> > From: "Daniel D. Daugherty" <daniel.daugherty at oracle.com>
> > To: Adam Farley8 <adam.farley at uk.ibm.com>, David Holmes
> > <david.holmes at oracle.com>
> > Cc: hotspot-dev at openjdk.java.net
> > Date: 13/08/2019 16:52
> > Subject: Re: RFR: JDK-8227021: VM fails if any sun.boot.library.path
> > paths are longer than JVM_MAXPATHLEN
> >
> > I don't see any information describing how this change was tested.
> >
> > Dan
> >
> >
> > On 8/13/19 11:48 AM, Adam Farley8 wrote:
> > > Hi David,
> > >
> > > Since we have two positive reviews (yours and Serguei's), could you
> > > sponsor the change please?
> > >
> > > Best Regards
> > >
> > > Adam Farley
> > > IBM Runtimes
> > >
> > >
> > > David Holmes <david.holmes at oracle.com> wrote on 12/08/2019 23:32:14:
> > >
> > >> From: David Holmes <david.holmes at oracle.com>
> > >> To: Adam Farley8 <adam.farley at uk.ibm.com>
> > >> Cc: hotspot-dev at openjdk.java.net, "serguei.spitsyn at oracle.com"
> > >> <serguei.spitsyn at oracle.com>
> > >> Date: 12/08/2019 23:32
> > >> Subject: Re: RFR: JDK-8227021: VM fails if any sun.boot.library.path
> > >> paths are longer than JVM_MAXPATHLEN
> > >>
> > >> Looks fine.
> > >>
> > >> Thanks,
> > >> David
> > >>
> > >> On 13/08/2019 1:19 am, Adam Farley8 wrote:
> > >>> Hi David,
> > >>>
> > >>> Changes made as requested:
> > >>> https://urldefense.proofpoint.com/v2/url?
> > >> u=http-3A__cr.openjdk.java.net_-7Eafarley_8227021.4_webrev&d=DwID-
> > >> g&c=jf_iaSHvJObTbx-siA1ZOg&r=P5m8KWUXJf-
> > >>
> > >
> >
> CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho&m=mZM8IR4e_zmrfcsF3XJjoGEMrZb4WtEL7Y6Ugd6Naqg&s=sZ2UKqqUIq0El-
> > >> RsqYz6jmTh4Q2UghwdrQX6of8Lw0E&e=
> > >>> Best Regards
> > >>>
> > >>> Adam Farley
> > >>> IBM Runtimes
> > >>>
> > >>>
> > >>> David Holmes <david.holmes at oracle.com> wrote on 12/08/2019 04:55:36:
> > >>>
> > >>>> From: David Holmes <david.holmes at oracle.com>
> > >>>> To: Adam Farley8 <adam.farley at uk.ibm.com>,
> > >>>> "serguei.spitsyn at oracle.com" <serguei.spitsyn at oracle.com>
> > >>>> Cc: hotspot-dev at openjdk.java.net
> > >>>> Date: 12/08/2019 04:56
> > >>>> Subject: Re: RFR: JDK-8227021: VM fails if any
> sun.boot.library.path
> > >>>> paths are longer than JVM_MAXPATHLEN
> > >>>>
> > >>>> Hi Adam,
> > >>>>
> > >>>> On 10/08/2019 2:47 am, Adam Farley8 wrote:
> > >>>>> Hi Serguei, David,
> > >>>>>
> > >>>>> My turn to apologise for the delay. :)
> > >>>>>
> > >>>>> I've modified the code as per Serguei's request. Take a look and
> > > let me
> > >>>>> know if this is the sort of thing you were thinking of.
> > >>>>>
> > >>>>> Webrev: https://urldefense.proofpoint.com/v2/url?
> > >>>> u=http-3A__cr.openjdk.java.net_-7Eafarley_8227021.3_webrev_&d=DwID-
> > >>>> g&c=jf_iaSHvJObTbx-siA1ZOg&r=P5m8KWUXJf-
> > >>>> CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho&m=8Wa8Zdfmvn-
> > >>>>
> > >
> >
> yvzvCAhOyJ_etFblRA4vmLGbKF4aW8PY&s=L19aeFXoR9JIO62QRPFzZObIU8RbhpCtXSvUibD2ISk&e=
> > >>>> I'd prefer to see the helper just as a file static function rather
> > > than
> > >>>> adding it to the os class.
> > >>>>
> > >>>> + * supplied array of arrays of chars (a), where n
> > >>>>
> > >>>> I assume (a) is meant to refer to the parameter, but you actually
> > > called
> > >>>> it arrayarray. I think "a" or "arr" would suffice.
> > >>>>
> > >>>> Thanks,
> > >>>> David
> > >>>>
> > >>>>> Best Regards
> > >>>>>
> > >>>>> Adam Farley
> > >>>>> IBM Runtimes
> > >>>>>
> > >>>>>
> > >>>>> "serguei.spitsyn at oracle.com" <serguei.spitsyn at oracle.com>
> wrote on
> > >>>>> 31/07/2019 17:18:05:
> > >>>>>
> > >>>>>> From: "serguei.spitsyn at oracle.com" <serguei.spitsyn at oracle.com>
> > >>>>>> To: Adam Farley8 <adam.farley at uk.ibm.com>, David Holmes
> > >>>>>> <david.holmes at oracle.com>
> > >>>>>> Cc: serviceability-dev <serviceability-dev at openjdk.java.net>,
> > >>>>>> hotspot-dev at openjdk.java.net
> > >>>>>> Date: 31/07/2019 17:18
> > >>>>>> Subject: Re: RFR: JDK-8227021: VM fails if any
> > > sun.boot.library.path
> > >>>>>> paths are longer than JVM_MAXPATHLEN
> > >>>>>>
> > >>>>>> Hi Adam,
> > >>>>>>
> > >>>>>> It looks Okay to me.
> > >>>>>>
> > >>>>>> A couple of minor comments.
> > >>>>>>
> > >>>>>> https://urldefense.proofpoint.com/v2/url?
> > >>>> u=http-3A__cr.openjdk.java.net_-7Eafarley_8227021.
> > >>>> 2_webrev_src_hotspot_&d=DwID-g&c=jf_iaSHvJObTbx-
> > >>>> siA1ZOg&r=P5m8KWUXJf-CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho&m=8Wa8Zdfmvn-
> > >>>>
> > >
> >
> yvzvCAhOyJ_etFblRA4vmLGbKF4aW8PY&s=NL6tYuwwDod3DSmj-1ztxAywpO8L52HEyO0wvTR05bs&e=
> > >>>>>> share/runtime/os.cpp.frames.html
> > >>>>>> 1362 //release allocated storage before exiting the vm
> > >>>>>> 1363 while (i > 0) {
> > >>>>>> 1364 i--;
> > >>>>>> 1365 if (opath[i] != NULL) {
> > >>>>>> 1366 FREE_C_HEAP_ARRAY(char, opath[i]);
> > >>>>>> 1367 }
> > >>>>>> 1368 }
> > >>>>>> 1369 FREE_C_HEAP_ARRAY(char*, opath);
> > >>>>>>
> > >>>>>> 1377 //release allocated storage before returning null
> > >>>>>> 1378 while (i > 0) {
> > >>>>>> 1379 i--;
> > >>>>>> 1380 if (opath[i] != NULL) {
> > >>>>>> 1381 FREE_C_HEAP_ARRAY(char, opath[i]);
> > >>>>>> 1382 }
> > >>>>>> 1383 }
> > >>>>>> 1384 FREE_C_HEAP_ARRAY(char*, opath);
> > >>>>>>
> > >>>>>> This duplicated fragments is worth to refactor to a function.
> > >>>>>> Also a space is missed at the beginning of the comment.
> > >>>>>>
> > >>>>>>
> > >>>>>> Thanks,
> > >>>>>> Serguei
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>> On 7/31/19 02:01, Adam Farley8 wrote:
> > >>>>>> Hi All,
> > >>>>>>
> > >>>>>> Reviewers requested for the change below.
> > >>>>>>
> > >>>>>> @David - Agreed. Would you be prepared to sponsor the change?
> > >>>>>>
> > >>>>>> Bug: https://urldefense.proofpoint.com/v2/url?
> > >>>> u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8227021&d=DwID-
> > >>>> g&c=jf_iaSHvJObTbx-siA1ZOg&r=P5m8KWUXJf-
> > >>>> CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho&m=8Wa8Zdfmvn-
> > >>>>
> > >
> >
> yvzvCAhOyJ_etFblRA4vmLGbKF4aW8PY&s=xykJ0KLy9AKWO8zmC0amfR7xxUsvyKEjlf3y7WWOqvE&e=
> > >>>>>> Webrev: https://urldefense.proofpoint.com/v2/url?
> > >>>> u=http-3A__cr.openjdk.java.net_-7Eafarley_8227021.2_webrev_&d=DwID-
> > >>>> g&c=jf_iaSHvJObTbx-siA1ZOg&r=P5m8KWUXJf-
> > >>>> CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho&m=8Wa8Zdfmvn-
> > >>>>
> > >
> >
> yvzvCAhOyJ_etFblRA4vmLGbKF4aW8PY&s=NvIza4VVWG3CiDhmQVmXsghH_4h_c5mFJbHwkCUcut0&e=
> > >>>>>> Best Regards
> > >>>>>>
> > >>>>>> Adam Farley
> > >>>>>> IBM Runtimes
> > >>>>>>
> > >>>>>> P.S. Remembered to add the links this time. :)
> > >>>>>>
> > >>>>>>
> > >>>>>> David Holmes <david.holmes at oracle.com> wrote on 30/07/2019
> > > 03:37:53:
> > >>>>>>> From: David Holmes <david.holmes at oracle.com>
> > >>>>>>> To: Adam Farley8 <adam.farley at uk.ibm.com>
> > >>>>>>> Cc: hotspot-dev at openjdk.java.net, serviceability-dev
> > >>>>>>> <serviceability-dev at openjdk.java.net>
> > >>>>>>> Date: 30/07/2019 03:38
> > >>>>>>> Subject: Re: RFR: JDK-8227021: VM fails if any
> > > sun.boot.library.path
> > >>>>>>> paths are longer than JVM_MAXPATHLEN
> > >>>>>>>
> > >>>>>>> Hi Adam,
> > >>>>>>>
> > >>>>>>> On 25/07/2019 3:57 am, Adam Farley8 wrote:
> > >>>>>>>> Hi David,
> > >>>>>>>>
> > >>>>>>>> Welcome back. :)
> > >>>>>>> Thanks. Sorry for the delay in getting back to this.
> > >>>>>>>
> > >>>>>>> I like .v2 as it is much simpler (notwithstanding freeing
> > >> the already
> > >>>>>>> allocated arrays adds some complexity - thanks for fixing that).
> > >>>>>>>
> > >>>>>>> I'm still not sure we can't optimise things better for
> > > unchangeable
> > >>>>>>> properties like the boot libary path, but that's another RFE.
> > >>>>>>>
> > >>>>>>> Thanks,
> > >>>>>>> David
> > >>>>>>>
> > >>>>>> Unless stated otherwise above:
> > >>>>>> IBM United Kingdom Limited - Registered in England and Wales
> with
> > >>>>>> number 741598.
> > >>>>>> Registered office: PO Box 41, North Harbour, Portsmouth,
> > >> Hampshire PO6 3AU
> > >>>>> Unless stated otherwise above:
> > >>>>> IBM United Kingdom Limited - Registered in England and Wales with
> > > number
> > >>>>> 741598.
> > >>>>> Registered office: PO Box 41, North Harbour, Portsmouth,
> > >> Hampshire PO6 3AU
> > >>> Unless stated otherwise above:
> > >>> IBM United Kingdom Limited - Registered in England and Wales with
> > > number
> > >>> 741598.
> > >>> Registered office: PO Box 41, North Harbour, Portsmouth,
> Hampshire PO6
> > > 3AU
> > > Unless stated otherwise above:
> > > IBM United Kingdom Limited - Registered in England and Wales with
> number
> > > 741598.
> > > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire
> PO6 3AU
> > >
> > >
> >
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with
> number 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
More information about the hotspot-dev
mailing list