Cheleswer, thank you! But I think you need a "R"eviewer for that change before push.

Dmitry

On 11.03.2016 14:38, Cheleswer Sahu wrote:

Thanks Dmitry and Thomas for reviews. After adding space I will request for the push.

Regards,

Cheleswer

*From:*Dmitry Dmitriev
*Sent:* Friday, March 11, 2016 5:00 PM
*To:* Cheleswer Sahu; Thomas Stüfe
*Cc:* serviceability-dev@openjdk.java.net; hotspot-runtime-...@openjdk.java.net *Subject:* Re: RFR[9u-dev]: 8151509: In check_addr0() function pointer is not updated correctly

Hi Cheleswer,

Please, add space between SIZE_FORMAT and " because C++11 requires a space between literal and identifier. Not need a new webrev for that.

Thanks,
Dmitry

On 11.03.2016 12:31, Cheleswer Sahu wrote:

    Hi Thomas, Dmitry,

    Thanks for your review comments.  My answers are below for your
    review comments

    1873       if( 0 != ret % sizeof(prmap_t)){
    1874         break;
    1875       }


    >> For this it has been thought that mostly read() will return the
    desired number of bytes, but only in case if something goes wrong
    and read() will  not able to read the data, it will return lesser
    number of bytes, which contains the partial data of  “prmap_t”
    structure. The reason could be like file is corrupted, in such
    cases we don’t want to read anymore and feel it’s safe to skip the
    rest of file.

    2) Just interesting, do you really need to set memory to 0 by memset?

    >>  I thought this it is good to have a clean buffer every time we
    read something into it, but it’s really not that much required as
    we are reading a binary data. So I am removing this line from the
    code.

    For rest of the comments I have made correction in the code. The
    new webrev is available in the below location

    http://cr.openjdk.java.net/~csahu/8151509/webrev.01/
    <http://cr.openjdk.java.net/%7Ecsahu/8151509/webrev.01/>

    Regards,

    Cheleswer

    *From:*Thomas Stüfe [mailto:thomas.stu...@gmail.com]
    *Sent:* Thursday, March 10, 2016 7:39 PM
    *To:* Dmitry Dmitriev
    *Cc:* Cheleswer Sahu; serviceability-dev@openjdk.java.net
    <mailto:serviceability-dev@openjdk.java.net>;
    hotspot-runtime-...@openjdk.java.net
    <mailto:hotspot-runtime-...@openjdk.java.net>
    *Subject:* Re: RFR[9u-dev]: 8151509: In check_addr0() function
    pointer is not updated correctly

    (Sorry, pressed Send button too early)

    Just wanted to add that

    1873       if( 0 != ret % sizeof(prmap_t)){
    1874         break;
    1875       }

    may be a bit harsh, as it skips the entire mapping in case read()
    stopped reading in a middle of a record. You could just continue
    to read until you read the rest of the record.

    Kind Regards, Thomas

    On Thu, Mar 10, 2016 at 3:07 PM, Thomas Stüfe
    <thomas.stu...@gmail.com <mailto:thomas.stu...@gmail.com>> wrote:

        Hi Cheleswer,

        thanks for fixing this.

        Some more issues:

        - 1866 char *mbuff = (char *) calloc(read_chunk,
        sizeof(prmap_t) + 1);

        Why the "+1"? It is unnecessary and causes the allocation to
        be 200 bytes larger than necessary.

        - 1880 st->print("Warning: Address: " PTR_FORMAT ", Size: %dK,
        ",p->pr_vaddr, p->pr_size/1024);

        Format specifier for Size is wrong.%d is int, but p->pr_size
        is size_t. Theoretical truncation for mappings larger than
        4g*1024.

        (But I know this coding was there before)

        Beside those points, I think both points of Dmitry are valid.

        Also, I find

        Kind Regards, Thomas

        On Thu, Mar 10, 2016 at 1:45 PM, Dmitry Dmitriev
        <dmitry.dmitr...@oracle.com
        <mailto:dmitry.dmitr...@oracle.com>> wrote:

            Hi Cheleswer,

            Looks good, but I have questions/comments about other code
            in this function:
            1) I think that "::close(fd);" should be inside "if (fd >=
            0) {".
            2) Just interesting, do you really need to set memory to 0
            by memset?

            Thanks,
            Dmitry


            On 10.03.2016 13:43, Cheleswer Sahu wrote:


                Hi,

                Please review the code changes for
                https://bugs.openjdk.java.net/browse/JDK-8151509.

                Webrev link:
                http://cr.openjdk.java.net/~csahu/8151509/
                <http://cr.openjdk.java.net/%7Ecsahu/8151509/>
                <http://cr.openjdk.java.net/%7Ecsahu/8151509/>

                Bug Brief:

                In check_addr0(),  pointer ”p” is not updated
                correctly, because of this it was reading only first
                two entries from buffer.

                Regards,

                Cheleswer


Reply via email to