On Mon, Apr 18, 2016 at 02:22:37PM +0000, Jan Wickbom wrote: > Hi, > SIGTERM/INT/HUP/ALRM are intercepted in vswitchd. When they are caught some > cleaning up is performed e.g. all vhost-user-XXX socket files are removed as > well as socket files for communication between vswitchd and the database etc. > > However, there are more signals generating a process termination but they are > not handled and as a consequence there will be socket files left. When > restarting, they will sometimes stop re-creation of vhostuser sockets with > still existing names, resulting in log entries like these: > > |dpdk|ERR|vhost-user socket device setup failure for socket > /var/run/openvswitch/vhostuser-e184f013-72d|bridge|WARN|could not open > network device vhostuser-e184f013-72d (Unknown error -1) > |dpdk|ERR|vhost-user socket device setup failure for socket > /var/run/openvswitch/vhostuser-06802a37-a09|bridge|WARN|could not open > network device vhostuser-06802a37-a09 (Unknown error -1) > > They need to be removed manually and vswitchd restarted again. Is it a "design > decision" to handle only the signals as defined in fatal_signals.c?
Yes. The signals listed there are the ones that terminate the process, can be caught, do not indicate a program bug, and are not special-purpose signals such as SIGUSR1 or SIGUSR2 or SIGPOLL. It is too risky to catch signals that indicate a program bug. > Also, why are the vhost-user sockets not abstract? Wouldn't that simplify the > socket handling? What is an abstract socket? _______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss