Re: BUG: sleeping function called from invalid context at mm/slub.c:793

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/13/2011 02:59 PM, Jan Kiszka wrote:
>  @@ -5351,6 +5351,9 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run)
>   	int r;
>   	sigset_t sigsaved;
>
>  +	if (!tsk_used_math(current)&&  init_fpu(current))
>  +		return -ENOMEM;
>  +

Could become a rainy day for the kvm-kmod maintainer:

For compat support on kernels without init_fpu exported yet, can I
trigger the same result by simply issuing an FPU instruction here so
that do_device_not_available will perform the allocation? Not really
nice, but it doesn't appear to me like there is any code path that would
complain about in-kernel FPU usage (provided we don't need math
emulation - which is quite likely).

That's a pessimization, since it forces the fpu to be switched. If both qemu and the guest don't use the fpu, we can run a guest with some other task's fpu loaded.

Oh, but if it's after the check for !tsk_used_math(), it only triggers once, so that's okay. I guess something like mov %%xmm0, %%xmm0 should do nicely.

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux