diff options
author | Robert Mustacchi <rm@joyent.com> | 2011-06-10 15:44:52 -0700 |
---|---|---|
committer | Robert Mustacchi <rm@joyent.com> | 2011-06-10 15:44:52 -0700 |
commit | 4e5acf8543ec599ffff10f63a451e63d070a12d2 (patch) | |
tree | f8c9a7a38d5e1f11fa44d0326e1210d23d97142f /kvm.c | |
parent | 6aa99a358ab94557e9c26f829a4be2b19dd130a4 (diff) | |
download | illumos-kvm-4e5acf8543ec599ffff10f63a451e63d070a12d2.tar.gz |
HVM-361 revert KVM_SET_BOOT_CPU_ID ioctl to upstream interface
Diffstat (limited to 'kvm.c')
-rw-r--r-- | kvm.c | 24 |
1 files changed, 9 insertions, 15 deletions
@@ -2338,33 +2338,27 @@ kvm_ioctl(dev_t dev, int cmd, intptr_t arg, int md, cred_t *cr, int *rv) } case KVM_SET_BOOT_CPU_ID: { - struct kvm_set_boot_cpu_id_ioc boot_cpu_id_ioc; struct kvm *kvmp; - if (copyin(argp, &boot_cpu_id_ioc, - sizeof (boot_cpu_id_ioc)) != 0) { - rval = EFAULT; + if ((kvmp = ksp->kds_kvmp) == NULL) { + rval = EINVAL; break; } - if ((kvmp = ksp->kds_kvmp) == NULL) { + if (arg >= KVM_MAX_VCPUS) { rval = EINVAL; break; } mutex_enter(&kvmp->lock); -#ifdef XXX - if (atomic_read(&kvmp->online_vcpus) != 0) - rval = -EBUSY; - else { -#else - { - XXX_KVM_PROBE; -#endif - kvmp->bsp_vcpu_id = boot_cpu_id_ioc.id; + if (kvmp->online_vcpus != 0) { + rval = EBUSY; + break; + } else { + kvmp->bsp_vcpu_id = arg; + *rv = kvmp->bsp_vcpu_id; } - *rv = kvmp->bsp_vcpu_id; mutex_exit(&kvmp->lock); break; } |