In the Linux kernel, the following vulnerability has been resolved: LoongArch: KVM: Free init resources if kvm_init() fails kvm_loongarch_init() calls kvm_loongarch_env_init() to allocate the per-CPU kvm_context (vmcs) and kvm_loongarch_ops and to register the perf callbacks, and then calls kvm_init(). If kvm_init() fails its result is returned directly, but since module_init() does not run the module_exit() stuff on failure, so kvm_loongarch_env_exit() is never called and those resources are leaked. So call kvm_loongarch_env_exit() when kvm_init() fails, matching the teardown-on-failure pattern used by riscv_kvm_init().
https://git.kernel.org/stable/c/f7a1064cce3b100b54780c68529176232d8eb01e
https://git.kernel.org/stable/c/6bbbd7b719233645a5c120557a9ca1422e6b7a48
https://git.kernel.org/stable/c/6b78786ee7260d9818cf1d7a245b7a655ef83076
https://git.kernel.org/stable/c/3bf6f5e2e1007d38a5f35bd37e94ab645a0c40bc