psci.c (e0c1b8f9eba88173b30ba42eb492fd20582cf376) | psci.c (d495f942f40aa412f8d4d65951152648cfa09903) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Copyright (C) 2012 - ARM Ltd 4 * Author: Marc Zyngier <marc.zyngier@arm.com> 5 */ 6 7#include <linux/arm-smccc.h> 8#include <linux/preempt.h> --- 167 unchanged lines hidden (view full) --- 176 * re-initialized. 177 */ 178 kvm_for_each_vcpu(i, tmp, vcpu->kvm) 179 tmp->arch.power_off = true; 180 kvm_make_all_cpus_request(vcpu->kvm, KVM_REQ_SLEEP); 181 182 memset(&vcpu->run->system_event, 0, sizeof(vcpu->run->system_event)); 183 vcpu->run->system_event.type = type; | 1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Copyright (C) 2012 - ARM Ltd 4 * Author: Marc Zyngier <marc.zyngier@arm.com> 5 */ 6 7#include <linux/arm-smccc.h> 8#include <linux/preempt.h> --- 167 unchanged lines hidden (view full) --- 176 * re-initialized. 177 */ 178 kvm_for_each_vcpu(i, tmp, vcpu->kvm) 179 tmp->arch.power_off = true; 180 kvm_make_all_cpus_request(vcpu->kvm, KVM_REQ_SLEEP); 181 182 memset(&vcpu->run->system_event, 0, sizeof(vcpu->run->system_event)); 183 vcpu->run->system_event.type = type; |
184 vcpu->run->system_event.flags = flags; | 184 vcpu->run->system_event.ndata = 1; 185 vcpu->run->system_event.data[0] = flags; |
185 vcpu->run->exit_reason = KVM_EXIT_SYSTEM_EVENT; 186} 187 188static void kvm_psci_system_off(struct kvm_vcpu *vcpu) 189{ 190 kvm_prepare_system_event(vcpu, KVM_SYSTEM_EVENT_SHUTDOWN, 0); 191} 192 --- 429 unchanged lines hidden --- | 186 vcpu->run->exit_reason = KVM_EXIT_SYSTEM_EVENT; 187} 188 189static void kvm_psci_system_off(struct kvm_vcpu *vcpu) 190{ 191 kvm_prepare_system_event(vcpu, KVM_SYSTEM_EVENT_SHUTDOWN, 0); 192} 193 --- 429 unchanged lines hidden --- |