This may very well be a misunderstanding on my part, but lately I've encountered issues with netcfg and wpa_supplicant. I have no problems getting netcfg to start my wireless profile on start-up and everything runs smoothly unless I need to restart it for some reason. I type 'netcfg -d wifi' and it appears to disconnect just fine. However, when I go to restart my wifi profile, it spits out that /run/wpa_supplicant/wifi0 is still present and netcfg couldn't connect. I remove the file, but re-running the command still doesn't work and it reports a DHCP lease error.
I'm not sure why, but it looks like netcfg isn't properly cleaning up after itself when I take the profile down. I would think it would kill the associated wpa_supplicant process as it is no longer needed, but again I may not be understanding how these two programs work together. I've found a jenk work around and have appended the following line to my /etc/network.d/wifi profile so that when I take the profile down it kills off all wpa_supplicant processes.
POST_DOWN="ps -C wpa_supplicant -o pid | sed '1d' | sudo xargs kill -SIGTERM"
There has to be a nicer way of getting netcfg to tell wpa_supplicant to clean up than this. Any ideas? I should also mention I've upgraded entirely to systemd at this point, though I cannot say for certain if this was happening before the switch or not. Thanks in advance!