Bhyve treats an empty cpu set as an error which triggers MPASS panic in
the guest. As per the SBI spec, empty masks should return SBI_SUCCESS,
and a base of -1UL specifies a broadcast to all harts. Fix both in vmm_sbi.c,
clear a1 on return, and skip the SBI ecall in sbi_ipi_pic_ipi_send() if the
mask is empty. Also add a NULL check in riscv_send_ipi().
Signed-off-by: Doongar Singh <doonbsd@gmail.com>