killall in Precise is supposed to limit the number of arguments to 64, but due to a fencepost error, 66 arguments will be blocked but 65 is not.
With 65 arguments, the behavior varies, but in some cases will send a signal to random processes.
# ps xa | wc -l
164
# mkdir ~/tmp_tasks/
# for i in `seq 1 65`; do touch ~/tmp_tasks/test$i; done;
# for i in `seq 1 65`; do echo ~/tmp_tasks/test$i; done | xargs killall
Connection to 198.18.88.176 closed by remote host.
Connection to 198.18.88.176 closed.
# ps xa | wc -l
126
This is fixed upstream and at the very least trusty works fine.
killall in Precise is supposed to limit the number of arguments to 64, but due to a fencepost error, 66 arguments will be blocked but 65 is not.
With 65 arguments, the behavior varies, but in some cases will send a signal to random processes.
# ps xa | wc -l
164
# mkdir ~/tmp_tasks/
# for i in `seq 1 65`; do touch ~/tmp_tasks/test$i; done;
# for i in `seq 1 65`; do echo ~/tmp_tasks/test$i; done | xargs killall
Connection to 198.18.88.176 closed by remote host.
Connection to 198.18.88.176 closed.
# ps xa | wc -l
126
This is fixed upstream and at the very least trusty works fine.