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 ../../..

Change History (1)

comment:1 by Chris Newbold, 14 years ago

Resolution: invalid
Status: newclosed

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.

Note: See TracTickets for help on using tickets.