------------------------------------------------------------ revno: 14028 revision-id: squid3@treenet.co.nz-20160417110241-z45g5ew0jtps6k9w parent: squid3@treenet.co.nz-20160417105424-6d40n75zmhkqwjf4 fixes bug: http://bugs.squid-cache.org/show_bug.cgi?id=4493 author: Alex Rousskov committer: Amos Jeffries branch nick: 3.5 timestamp: Sun 2016-04-17 23:02:41 +1200 message: Bug 4493: theObject->sharedMemorySize() == theSegment.size() exception We should not expect the exact match because, as discovered during bug 3805 (r13947) fix, shared Segment::size() may exceed the originally requested RAM amount due to stat() page rounding done by OSes like OS X. Unfortunately, this rounding weakens the failed consistency check a lot. TODO: Store the exact requested size and check against that as well. ------------------------------------------------------------ # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: squid3@treenet.co.nz-20160417110241-z45g5ew0jtps6k9w # target_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 # testament_sha1: 6450cfc8f62a2356cf608dee0271152e277a2a59 # timestamp: 2016-04-17 11:31:42 +0000 # source_branch: http://bzr.squid-cache.org/bzr/squid3/3.5 # base_revision_id: squid3@treenet.co.nz-20160417105424-\ # 6d40n75zmhkqwjf4 # # Begin patch === modified file 'src/ipc/mem/Pointer.h' --- src/ipc/mem/Pointer.h 2016-01-01 00:14:27 +0000 +++ src/ipc/mem/Pointer.h 2016-04-17 11:02:41 +0000 @@ -165,7 +165,7 @@ theSegment.open(); Must(theSegment.mem()); theObject = reinterpret_cast(theSegment.mem()); - Must(static_cast(theObject->sharedMemorySize()) == theSegment.size()); + Must(static_cast(theObject->sharedMemorySize()) <= theSegment.size()); } template