-
Notifications
You must be signed in to change notification settings - Fork 4.4k
Description
error log | 日志或报错信息 | ログ
使用 pnnx 20250530 的版本转化Qwen3 会报 double free
############# pass_level1
############# pass_level2
############# pass_level3
############# pass_level4
############# pass_level5
free(): double free detected in tcache 2
使用C++版本 + gdb debug 发现是 pass_level5 里面的fuse_slice_to_tensor_split里面报错
#0 0x00007fffe2127a7c in pthread_kill () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007fffe20d3476 in raise () from /lib/x86_64-linux-gnu/libc.so.6
#2 0x00007fffe20b97f3 in abort () from /lib/x86_64-linux-gnu/libc.so.6
#3 0x00007fffe211a6f6 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#4 0x00007fffe2131d7c in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#5 0x00007fffe213412b in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#6 0x00007fffe21364d3 in free () from /lib/x86_64-linux-gnu/libc.so.6
#7 0x0000555555612c76 in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > >::deallocate(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >, unsigned long) ()
#8 0x0000555555611aea in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > > >::deallocate(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > >&, std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >, unsigned long) ()
#9 0x000055555560fb33 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >, std::less<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >) ()
#10 0x000055555560c03a in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >, std::less<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > >::_M_drop_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >) ()
#11 0x0000555555607f4a in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >, std::less<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >) ()
#12 0x0000555555607f27 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::pair<std::__cxx11::basic_str--Type for more, q to quit, c to continue without paging--
ing<char, std::char_traits, std::allocator > const, pnnx::Parameter>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >, std::less<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >) ()
#13 0x0000555555607f27 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >, std::less<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >*) ()
#14 0x0000555555604c20 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> >, std::less<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > >::~_Rb_tree() ()
#15 0x000055555560379e in std::map<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, pnnx::Parameter, std::less<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, pnnx::Parameter> > >::~map() ()
#16 0x0000555555603d60 in pnnx::Operator::~Operator() ()
#17 0x000055555576b06f in pnnx::fuse_slice_to_tensor_split(pnnx::Graph&) ()
#18 0x0000555555630025 in pnnx::pass_level5(pnnx::Graph&, std::set<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::less<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) ()
#19 0x00005555555e7511 in main ()
model | 模型 | モデル
- original model