|
From: Jack B. <dtu...@ho...> - 2010-11-11 00:18:32
|
Hi, I am using Valgrind-3.5.0 and LibVEX for MPI debug. I got errors: -------------------------------------==23712== Invalid write of size 8==23712== at 0x40BFA9: __gnu_cxx::new_allocator<double>::construct(double*, double const&) (new_allocator.h:104)==23712== by 0x40EEB7: std::vector<double, std::allocator<double> >::push_back(double const&) (stl_vector.h:606)==23712== by 0x403477: workerRunTask(int, int, int, int, int, int, int, std::vector<double, std::allocator<double> >&, newCNSGA2&) (workerRunTask.cpp:193)==23712== by 0x40AEC3: main (main.cpp:636)==23712== Address 0xc0 is not stack'd, malloc'd or (recently) free'd==23712====23712====23712== Process terminating with default action of signal 11 (SIGSEGV)==23712== Access not within mapped region at address 0xC0==23712== at 0x40BFA9: __gnu_cxx::new_allocator<double>::construct(double*, double const&) (new_allocator.h:104)==23712== by 0x40EEB7: std::vector<double, std::allocator<double> >::push_back(double const&) (stl_vector.h:606)==23712== by 0x403477: workerRunTask(int, int, int, int, int, int, int, std::vector<double, std::allocator<double> >&, newCNSGA2&) (workerRunTask.cpp:193)==23712== by 0x40AEC3: main (main.cpp:636)==23712== If you believe this happened as a result of a stack==23712== overflow in your program's main thread (unlikely but==23712== possible), you can try to increase the size of the==23712== main thread stack using the --main-stacksize= flag.==23712== The main thread stack size used in this run was 10485760.--------------------------------------I have checked my program : sendResultVec.push_back(generation); It is only write an element to a vector. vector<double> sendResultVec; It's size is 6. Why I got "Address 0xc0 is not stack'd, malloc'd or (recently) free'd" ? It seems 0xc0 is a memory space owned by system. Any help is appreciated. thanks Jack Nov. 11 2010 |
|
From: Bjoern D. <bjo...@go...> - 2010-11-14 12:43:56
|
Hi, address 0xC0 is a NULL pointer. Your code doesn't give enough information to say what went wrong, though. Cheers, Bjoern 2010/11/11 Jack Bryan <dtu...@ho...>: > Hi, > > I am using Valgrind-3.5.0 and LibVEX for MPI debug. > > I got errors: > ------------------------------------- > ==23712== Invalid write of size 8 > ==23712== at 0x40BFA9: > __gnu_cxx::new_allocator<double>::construct(double*, double const&) > (new_allocator.h:104) > ==23712== by 0x40EEB7: std::vector<double, std::allocator<double> >>::push_back(double const&) (stl_vector.h:606) > ==23712== by 0x403477: workerRunTask(int, int, int, int, int, int, int, > std::vector<double, std::allocator<double> >&, newCNSGA2&) > (workerRunTask.cpp:193) > ==23712== by 0x40AEC3: main (main.cpp:636) > ==23712== Address 0xc0 is not stack'd, malloc'd or (recently) free'd > ==23712== > ==23712== > ==23712== Process terminating with default action of signal 11 (SIGSEGV) > ==23712== Access not within mapped region at address 0xC0 > ==23712== at 0x40BFA9: > __gnu_cxx::new_allocator<double>::construct(double*, double const&) > (new_allocator.h:104) > ==23712== by 0x40EEB7: std::vector<double, std::allocator<double> >>::push_back(double const&) (stl_vector.h:606) > ==23712== by 0x403477: workerRunTask(int, int, int, int, int, int, int, > std::vector<double, std::allocator<double> >&, newCNSGA2&) > (workerRunTask.cpp:193) > ==23712== by 0x40AEC3: main (main.cpp:636) > ==23712== If you believe this happened as a result of a stack > ==23712== overflow in your program's main thread (unlikely but > ==23712== possible), you can try to increase the size of the > ==23712== main thread stack using the --main-stacksize= flag. > ==23712== The main thread stack size used in this run was 10485760. > -------------------------------------- > I have checked my program : > sendResultVec.push_back(generation); > It is only write an element to a vector. > vector<double> sendResultVec; > It's size is 6. > Why I got "Address 0xc0 is not stack'd, malloc'd or (recently) free'd" ? > It seems 0xc0 is a memory space owned by system. > Any help is appreciated. > thanks > Jack > Nov. 11 2010 > > > > > ------------------------------------------------------------------------------ > Centralized Desktop Delivery: Dell and VMware Reference Architecture > Simplifying enterprise desktop deployment and management using > Dell EqualLogic storage and VMware View: A highly scalable, end-to-end > client virtualization framework. Read more! > http://p.sf.net/sfu/dell-eql-dev2dev > _______________________________________________ > Valgrind-users mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-users > > |