fire all callbacks if they are valid
utilizing callback API (no hot-unplug protection)
disconnect routine with hot-unplug protection