hypercalls.c (5603effb8295ada8419408d038a34ca89d658229) hypercalls.c (a25bc8486f9c01c1af6b6c5657234b2eee2c39d6)
1// SPDX-License-Identifier: GPL-2.0
2// Copyright (C) 2019 Arm Ltd.
3
4#include <linux/arm-smccc.h>
5#include <linux/kvm_host.h>
6
7#include <asm/kvm_emulate.h>
8

--- 383 unchanged lines hidden (view full) ---

392}
393
394int kvm_arm_set_fw_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg)
395{
396 void __user *uaddr = (void __user *)(long)reg->addr;
397 u64 val;
398 int wa_level;
399
1// SPDX-License-Identifier: GPL-2.0
2// Copyright (C) 2019 Arm Ltd.
3
4#include <linux/arm-smccc.h>
5#include <linux/kvm_host.h>
6
7#include <asm/kvm_emulate.h>
8

--- 383 unchanged lines hidden (view full) ---

392}
393
394int kvm_arm_set_fw_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg)
395{
396 void __user *uaddr = (void __user *)(long)reg->addr;
397 u64 val;
398 int wa_level;
399
400 if (KVM_REG_SIZE(reg->id) != sizeof(val))
401 return -ENOENT;
400 if (copy_from_user(&val, uaddr, KVM_REG_SIZE(reg->id)))
401 return -EFAULT;
402
403 switch (reg->id) {
404 case KVM_REG_ARM_PSCI_VERSION:
405 {
406 bool wants_02;
407

--- 74 unchanged lines hidden ---
402 if (copy_from_user(&val, uaddr, KVM_REG_SIZE(reg->id)))
403 return -EFAULT;
404
405 switch (reg->id) {
406 case KVM_REG_ARM_PSCI_VERSION:
407 {
408 bool wants_02;
409

--- 74 unchanged lines hidden ---