Opened 4 years ago

Last modified 4 years ago

#13626 new Bugs

Growing managed mapped file cause a pointer invalidation

Reported by: bvbfan@… Owned by: Ion Gaztañaga
Milestone: To Be Determined Component: interprocess
Version: Boost 1.67.0 Severity: Showstopper
Keywords: Cc:

Description


Attachments (1)

main.cpp (2.1 KB ) - added by bvbfan@… 4 years ago.
g++ main.cpp -o main

Download all attachments as: .zip

Change History (4)

by bvbfan@…, 4 years ago

Attachment: main.cpp added

g++ main.cpp -o main

comment:1 by bvbfan@…, 4 years ago

[toni@toni-pc ~]$ uname -a
Linux toni-pc 4.16.14-1 #1 SMP PREEMPT Tue Jun 5 20:05:46 UTC 2018 x86_64 GNU/Linux

Provided example *works* when grow size is below 7*500.

comment:2 by anonymous, 4 years ago

For some reason gcc all version is marked as spam so -> gcc version 7.3.0 (GCC) Growing algorithm not work in all cases when size over 6*500 bytes which is not that much to make grow usable.

comment:3 by anonymous, 4 years ago

[toni@toni-pc test]$ ./main              
10000
before growing:
size: 10000
p is owned: 1
p->test is owned: 1
p->test = 0x7f6cd51f3090
after growing
size: 13500
p is owned: 1
p->test is owned: 0
p->test = 0

My results of attached example. p->test *should* be valid.

Note: See TracTickets for help on using tickets.