Opened 14 years ago
Closed 14 years ago
#2360 closed Bugs (invalid)
out-of-memory segfault
Reported by: | Chris Newbold | Owned by: | Chris Newbold |
---|---|---|---|
Milestone: | Boost 1.37.0 | Component: | pool |
Version: | Boost 1.36.0 | Severity: | Problem |
Keywords: | Cc: | philippe@… |
Description
From Phil Bouchard
Oh this morning I assumed there was a bug in shifted_ptr but it turns out it's inside pool<>::ordered_malloc(). It sounds like there is an out-of-memory:
#0 0x0804c668 in boost::simple_segregated_storage<unsigned int>::try_malloc_n (start=@0xbffe8a40, n=11, partition_size=4) at /usr/local/include/boost/pool/simple_segregated_storage.hpp:234 #1 0x0804b14f in boost::simple_segregated_storage<unsigned int>::malloc_n (this=0x806e320, n=12, partition_size=4) at /usr/local/include/boost/pool/simple_segregated_storage.hpp:256 #2 0x0804a26f in boost::pool<boost::default_user_allocator_new_delete>::ordered_malloc (this=0x806e320, n=48) at /usr/local/include/boost/pool/pool.hpp:511 #3 0x0804a116 in boost::detail::sh::pool::allocate (this=0x806e320, s=48) at ../../../boost/detail/sh_owned_base_nt.hpp:104 #4 0x0804f062 in boost::detail::sh::shifted<boost::array<char, 2u> >::operator new (s=48) at ../../../boost/detail/sh_owned_base_nt.hpp:214 #5 0x0804eb57 in create_type::operator()<mpl_::integral_c<int, 2> > (this=0xbffe8bcc) at shifted_ptr_test2.cpp:75 #6 0x0804e10b in boost::mpl::aux::for_each_impl<false>::execute<boost::mpl::r_iter<mpl_::integral_c<int, 2> >, boost::mpl::r_iter<mpl_::integral_c<int, 100> >, boost::mpl::identity<mpl_::na>, create_type> (f={<No data fields>}) at /usr/local/include/boost/mpl/for_each.hpp:73 #7 0x0804d45b in boost::mpl::aux::for_each_impl<false>::execute<boost::mpl::r_iter<mpl_::integral_c<int, 1> >, boost::mpl::r_iter<mpl_::integral_c<int, 100> >, boost::mpl::identity<mpl_::na>, create_type> (f={<No data fields>}) at /usr/local/include/boost/mpl/for_each.hpp:76 #8 0x0804c581 in boost::mpl::for_each<boost::mpl::range_c<int, 1, 100>, boost::mpl::identity<mpl_::na>, create_type> (f={<No data fields>}) at /usr/local/include/boost/mpl/for_each.hpp:96 #9 0x0804af56 in boost::mpl::for_each<boost::mpl::range_c<int, 1, 100>, create_type> (f={<No data fields>}) at /usr/local/include/boost/mpl/for_each.hpp:107 #10 0x080495bb in main () at shifted_ptr_test2.cpp:123
This is: shifted_ptr/libs/smart_ptr/example/shifted_ptr_test2.cpp, compiled with: -I ../../..
Note:
See TracTickets
for help on using tickets.
After much digging, this appears to be a problem with a patched version of std::list which is being used by the failing test case. Please re-open if you turn up evidence that the pool is at fault.