[ros-users] ros::NodeHandle dead lock for hokuyo node

Liangjun Zhang liangjun.zhang at gmail.com
Tue Jul 10 22:19:36 UTC 2012


I am using ROS::HokuyoNode. When I run the node, it stops at the
function: NodeHandle::construct() and the program can not continue. I
trace down and get the following stack for the main thread. The thread
1 is stalled at __lll_lock_wait(). Is this a dead lock problem?

I am using ubuntu, fuerte, boost 1.48. Thanks for any hints.


Thread [1] 24527 (Suspended : Signal : SIGINT:Interrupt)	
	__lll_lock_wait() at 0x7ffff600e464	
	pthread_cond_signal@@GLIBC_2.3.2() at 0x7ffff600c0b1	
	boost::recursive_mutex::unlock() at recursive_mutex.hpp:147 0x4324d5	
	~unique_lock() at locks.hpp:403 0x4324d5	
	ros::TopicManager::advertise() at 0x7ffff7b167f0	
	ros::ROSOutAppender::ROSOutAppender() at 0x7ffff7b6a471	
	ros::start() at 0x7ffff7b6ea45	
	ros::NodeHandle::construct() at 0x7ffff7b3ca30	
	ros::NodeHandle::NodeHandle() at 0x7ffff7b3f3a5	
	driver_base::main<HokuyoNode>() at driver_node.h:76 0x459453	
	<...more frames...>	



The stacks for all threads are as following:

Thread [4] 24533 (Suspended : Container)	
	pthread_cond_wait@@GLIBC_2.3.2() at 0x7ffff600b85c	
	ros::ROSOutAppender::logThread() at 0x7ffff7b68881	
	thread_proxy() at 0x7ffff6de6b70	
	start_thread() at 0x7ffff60069ca	
	clone() at 0x7ffff5d6370d	
	0x0	
Thread [3] 24532 (Suspended : Container)	
	select() at 0x7ffff5d5bff3	
	XmlRpc::XmlRpcDispatch::work() at 0x7ffff7219b04	
	ros::XMLRPCManager::serverThreadFunc() at 0x7ffff7b06b8d	
	thread_proxy() at 0x7ffff6de6b70	
	start_thread() at 0x7ffff60069ca	
	clone() at 0x7ffff5d6370d	
	0x0	
Thread [2] 24531 (Suspended : Container)	
	__lll_lock_wait() at 0x7ffff600e464	
	_L_lock_1024() at 0x7ffff60095f4	
	pthread_mutex_lock() at 0x7ffff6009457	
	ros::TopicManager::processPublishQueues() at 0x7ffff7b15ddb	
	void boost::last_value<void>::operator() at 0x7ffff7b22229	
	boost::signal0<void, boost::last_value<void>, int, std::less<int>,
boost::function<void () at 0x7ffff7b22cec
	ros::PollManager::threadFunc() at 0x7ffff7b20dc6	
	thread_proxy() at 0x7ffff6de6b70	
	start_thread() at 0x7ffff60069ca	
	clone() at 0x7ffff5d6370d	
	<...more frames...>	
Thread [1] 24527 (Suspended : Signal : SIGINT:Interrupt)	
	__lll_lock_wait() at 0x7ffff600e464	
	pthread_cond_signal@@GLIBC_2.3.2() at 0x7ffff600c0b1	
	boost::recursive_mutex::unlock() at recursive_mutex.hpp:147 0x4324d5	
	~unique_lock() at locks.hpp:403 0x4324d5	
	ros::TopicManager::advertise() at 0x7ffff7b167f0	
	ros::ROSOutAppender::ROSOutAppender() at 0x7ffff7b6a471	
	ros::start() at 0x7ffff7b6ea45	
	ros::NodeHandle::construct() at 0x7ffff7b3ca30	
	ros::NodeHandle::NodeHandle() at 0x7ffff7b3f3a5	
	driver_base::main<HokuyoNode>() at driver_node.h:76 0x459453	
	<...more frames...>



More information about the ros-users mailing list