blockd: use uloop_process for calling /sbin/hotplug-call mount
As blockd uses uloop calling any script and using waitpid() can easily
result in a lock. It's enough for script to use /bin/ubus to cause that.
It's not an option to drop waitpid() as it's important to e.g. call
mount scripts with ACTION=remove before unmounting devices. So solving
this problem requires using uloop_process.
Unfortunately this means:
1. Using callbacks making code slightly more complex
2. Dropping that nice devices_update_cb()
With this change however hotplug.d "mount" scripts can safely call
"ubus".
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>