JosiahWI commented on issue #12124:
URL: 
https://github.com/apache/trafficserver/issues/12124#issuecomment-2749614801

   In #11825 I unwarily moved the place where the `static_cast` happened from 
the unsigned stripe length to the signed preservation table size. I believe if 
the resulting size does not fit in the positive part of an `int`, the size will 
be negative, which violates a debug assert (not triggered in the reported case 
because it was a release build), and is divided by the bucket size to make a 
smaller negative number and cast back to unsigned for the allocation call. 
That's why it would attempt to allocate a very large amount of memory... 
approaching the maximum allocation value. The issue will only be observed if 
the configuration specifies a stripe length that can't be represented as a 
positive `int`, so the unit tests in CI do not catch it.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@trafficserver.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to