RFR(xxs): 8167650: NMT should check for invalid MEMFLAGS.

David Holmes david.holmes at oracle.com
Thu Oct 13 10:08:24 UTC 2016


Hi Thomas,

On 13/10/2016 3:49 PM, Thomas Stüfe wrote:
> Hi all,
>
> may I have plase a review for this tiny change? It just adds some assert to
> NMT.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8167650
> webrev: http://cr.openjdk.java.net/~stuefe/webrevs/8167650-NMT-should-check_
> MEMFLAGS/webrev.00/webrev/
>
> We had an ugly memory overwrite caused by this - ultimately our fault,
> because we fed an invalid memory flag to NMT - but it was difficult to
> find. An assert would have saved some time.

I'm a little perplexed with asserting that something of MEMFLAGS type 
must be an actual MEMFLAGS value - it implies the caller is coercing 
plain int to MEMFLAGS, and I don't have much sympathy if they mess that 
up. Can't help wondering if there is some clever C++ trick to flag bad 
conversions at compile-time?

The function that takes the index should validate the index, so that is 
fine.

Which one were you actually passing the bad value to? :)

This isn't a strong objection just musing if we can do better. And as 
the hs repos are still closed, and likely to remain so till early next 
week, we have some slack time :)

Cheers,
David

> Thank you!
>
> Thomas
>


More information about the hotspot-runtime-dev mailing list