Re: [PATCH] KVM: Cleanup the kvm_print functions and introduce pr_XX wrappers

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

 



Any comments on this one?

On Thu, Feb 9, 2012 at 3:57 PM, Christoffer Dall
<c.dall@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> From: Christoffer Dall <c.dall@xxxxxxxxxxxxxxxxxxxxxx>
>
> Introduces a couple of print functions, which are essentially wrappers
> around standard printk functions, with a KVM: prefix.
>
> Functions introduced or modified are:
>  - kvm_err(fmt, ...)
>  - kvm_info(fmt, ...)
>  - kvm_debug(fmt, ...)
>  - kvm_pr_unimpl(fmt, ...)
>  - pr_unimpl(vcpu, fmt, ...) -> vcpu_pr_unimpl(vcpu, fmt, ...)
>
>  Signed-off-by: Christoffer Dall <c.dall@xxxxxxxxxxxxxxxxxxxxxx>
> ---
>  arch/x86/kvm/svm.c       |    4 ++--
>  arch/x86/kvm/vmx.c       |    2 +-
>  arch/x86/kvm/x86.c       |   41 +++++++++++++++++++++--------------------
>  include/linux/kvm_host.h |   14 ++++++++------
>  4 files changed, 32 insertions(+), 29 deletions(-)
>
> diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
> index 5fa553b..46b50ac 100644
> --- a/arch/x86/kvm/svm.c
> +++ b/arch/x86/kvm/svm.c
> @@ -3084,7 +3084,7 @@ static int svm_set_msr(struct kvm_vcpu *vcpu, unsigned ecx, u64 data)
>                break;
>        case MSR_IA32_DEBUGCTLMSR:
>                if (!boot_cpu_has(X86_FEATURE_LBRV)) {
> -                       pr_unimpl(vcpu, "%s: MSR_IA32_DEBUGCTL 0x%llx, nop\n",
> +                       vcpu_pr_unimpl(vcpu, "%s: MSR_IA32_DEBUGCTL 0x%llx, nop\n",
>                                        __func__, data);
>                        break;
>                }
> @@ -3104,7 +3104,7 @@ static int svm_set_msr(struct kvm_vcpu *vcpu, unsigned ecx, u64 data)
>        case MSR_VM_CR:
>                return svm_set_vm_cr(vcpu, data);
>        case MSR_VM_IGNNE:
> -               pr_unimpl(vcpu, "unimplemented wrmsr: 0x%x data 0x%llx\n", ecx, data);
> +               vcpu_pr_unimpl(vcpu, "unimplemented wrmsr: 0x%x data 0x%llx\n", ecx, data);
>                break;
>        default:
>                return kvm_set_msr_common(vcpu, ecx, data);
> diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
> index d29216c..b069332 100644
> --- a/arch/x86/kvm/vmx.c
> +++ b/arch/x86/kvm/vmx.c
> @@ -4457,7 +4457,7 @@ static int handle_cr(struct kvm_vcpu *vcpu)
>                break;
>        }
>        vcpu->run->exit_reason = 0;
> -       pr_unimpl(vcpu, "unhandled control register: op %d cr %d\n",
> +       vcpu_pr_unimpl(vcpu, "unhandled control register: op %d cr %d\n",
>               (int)(exit_qualification >> 4) & 3, cr);
>        return 0;
>  }
> diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
> index 9cbfc06..3f1e914 100644
> --- a/arch/x86/kvm/x86.c
> +++ b/arch/x86/kvm/x86.c
> @@ -1391,7 +1391,7 @@ static int set_msr_hyperv_pw(struct kvm_vcpu *vcpu, u32 msr, u64 data)
>                break;
>        }
>        default:
> -               pr_unimpl(vcpu, "HYPER-V unimplemented wrmsr: 0x%x "
> +               vcpu_pr_unimpl(vcpu, "HYPER-V unimplemented wrmsr: 0x%x "
>                          "data 0x%llx\n", msr, data);
>                return 1;
>        }
> @@ -1424,7 +1424,7 @@ static int set_msr_hyperv(struct kvm_vcpu *vcpu, u32 msr, u64 data)
>        case HV_X64_MSR_TPR:
>                return kvm_hv_vapic_msr_write(vcpu, APIC_TASKPRI, data);
>        default:
> -               pr_unimpl(vcpu, "HYPER-V unimplemented wrmsr: 0x%x "
> +               vcpu_pr_unimpl(vcpu, "HYPER-V unimplemented wrmsr: 0x%x "
>                          "data 0x%llx\n", msr, data);
>                return 1;
>        }
> @@ -1504,14 +1504,14 @@ int kvm_set_msr_common(struct kvm_vcpu *vcpu, u32 msr, u64 data)
>                data &= ~(u64)0x40;     /* ignore flush filter disable */
>                data &= ~(u64)0x100;    /* ignore ignne emulation enable */
>                if (data != 0) {
> -                       pr_unimpl(vcpu, "unimplemented HWCR wrmsr: 0x%llx\n",
> +                       vcpu_pr_unimpl(vcpu, "unimplemented HWCR wrmsr: 0x%llx\n",
>                                data);
>                        return 1;
>                }
>                break;
>        case MSR_FAM10H_MMIO_CONF_BASE:
>                if (data != 0) {
> -                       pr_unimpl(vcpu, "unimplemented MMIO_CONF_BASE wrmsr: "
> +                       vcpu_pr_unimpl(vcpu, "unimplemented MMIO_CONF_BASE wrmsr: "
>                                "0x%llx\n", data);
>                        return 1;
>                }
> @@ -1527,7 +1527,7 @@ int kvm_set_msr_common(struct kvm_vcpu *vcpu, u32 msr, u64 data)
>                           thus reserved and should throw a #GP */
>                        return 1;
>                }
> -               pr_unimpl(vcpu, "%s: MSR_IA32_DEBUGCTLMSR 0x%llx, nop\n",
> +               vcpu_pr_unimpl(vcpu, "%s: MSR_IA32_DEBUGCTLMSR 0x%llx, nop\n",
>                        __func__, data);
>                break;
>        case MSR_IA32_UCODE_REV:
> @@ -1624,8 +1624,8 @@ int kvm_set_msr_common(struct kvm_vcpu *vcpu, u32 msr, u64 data)
>        case MSR_K7_EVNTSEL2:
>        case MSR_K7_EVNTSEL3:
>                if (data != 0)
> -                       pr_unimpl(vcpu, "unimplemented perfctr wrmsr: "
> -                               "0x%x data 0x%llx\n", msr, data);
> +                       vcpu_pr_unimpl(vcpu, "unimplemented perfctr wrmsr: "
> +                                      "0x%x data 0x%llx\n", msr, data);
>                break;
>        /* at least RHEL 4 unconditionally writes to the perfctr registers,
>         * so we ignore writes to make it happy.
> @@ -1634,8 +1634,8 @@ int kvm_set_msr_common(struct kvm_vcpu *vcpu, u32 msr, u64 data)
>        case MSR_K7_PERFCTR1:
>        case MSR_K7_PERFCTR2:
>        case MSR_K7_PERFCTR3:
> -               pr_unimpl(vcpu, "unimplemented perfctr wrmsr: "
> -                       "0x%x data 0x%llx\n", msr, data);
> +               vcpu_pr_unimpl(vcpu, "unimplemented perfctr wrmsr: "
> +                              "0x%x data 0x%llx\n", msr, data);
>                break;
>        case MSR_P6_PERFCTR0:
>        case MSR_P6_PERFCTR1:
> @@ -1646,8 +1646,8 @@ int kvm_set_msr_common(struct kvm_vcpu *vcpu, u32 msr, u64 data)
>                        return kvm_pmu_set_msr(vcpu, msr, data);
>
>                if (pr || data != 0)
> -                       pr_unimpl(vcpu, "disabled perfctr wrmsr: "
> -                               "0x%x data 0x%llx\n", msr, data);
> +                       vcpu_pr_unimpl(vcpu, "disabled perfctr wrmsr: "
> +                                      "0x%x data 0x%llx\n", msr, data);
>                break;
>        case MSR_K7_CLK_CTL:
>                /*
> @@ -1673,7 +1673,8 @@ int kvm_set_msr_common(struct kvm_vcpu *vcpu, u32 msr, u64 data)
>                /* Drop writes to this legacy MSR -- see rdmsr
>                 * counterpart for further detail.
>                 */
> -               pr_unimpl(vcpu, "ignored wrmsr: 0x%x data %llx\n", msr, data);
> +               vcpu_pr_unimpl(vcpu, "ignored wrmsr: 0x%x data %llx\n",
> +                              msr, data);
>                break;
>        default:
>                if (msr && (msr == vcpu->kvm->arch.xen_hvm_config.msr))
> @@ -1681,11 +1682,11 @@ int kvm_set_msr_common(struct kvm_vcpu *vcpu, u32 msr, u64 data)
>                if (kvm_pmu_msr(vcpu, msr))
>                        return kvm_pmu_set_msr(vcpu, msr, data);
>                if (!ignore_msrs) {
> -                       pr_unimpl(vcpu, "unhandled wrmsr: 0x%x data %llx\n",
> +                       vcpu_pr_unimpl(vcpu, "unhandled wrmsr: 0x%x data %llx\n",
>                                msr, data);
>                        return 1;
>                } else {
> -                       pr_unimpl(vcpu, "ignored wrmsr: 0x%x data %llx\n",
> +                       vcpu_pr_unimpl(vcpu, "ignored wrmsr: 0x%x data %llx\n",
>                                msr, data);
>                        break;
>                }
> @@ -1789,7 +1790,7 @@ static int get_msr_hyperv_pw(struct kvm_vcpu *vcpu, u32 msr, u64 *pdata)
>                data = kvm->arch.hv_hypercall;
>                break;
>        default:
> -               pr_unimpl(vcpu, "Hyper-V unhandled rdmsr: 0x%x\n", msr);
> +               vcpu_pr_unimpl(vcpu, "Hyper-V unhandled rdmsr: 0x%x\n", msr);
>                return 1;
>        }
>
> @@ -1820,7 +1821,7 @@ static int get_msr_hyperv(struct kvm_vcpu *vcpu, u32 msr, u64 *pdata)
>                data = vcpu->arch.hv_vapic;
>                break;
>        default:
> -               pr_unimpl(vcpu, "Hyper-V unhandled rdmsr: 0x%x\n", msr);
> +               vcpu_pr_unimpl(vcpu, "Hyper-V unhandled rdmsr: 0x%x\n", msr);
>                return 1;
>        }
>        *pdata = data;
> @@ -1963,10 +1964,10 @@ int kvm_get_msr_common(struct kvm_vcpu *vcpu, u32 msr, u64 *pdata)
>                if (kvm_pmu_msr(vcpu, msr))
>                        return kvm_pmu_get_msr(vcpu, msr, pdata);
>                if (!ignore_msrs) {
> -                       pr_unimpl(vcpu, "unhandled rdmsr: 0x%x\n", msr);
> +                       vcpu_pr_unimpl(vcpu, "unhandled rdmsr: 0x%x\n", msr);
>                        return 1;
>                } else {
> -                       pr_unimpl(vcpu, "ignored rdmsr: 0x%x\n", msr);
> +                       vcpu_pr_unimpl(vcpu, "ignored rdmsr: 0x%x\n", msr);
>                        data = 0;
>                }
>                break;
> @@ -4026,7 +4027,7 @@ static unsigned long emulator_get_cr(struct x86_emulate_ctxt *ctxt, int cr)
>                value = kvm_get_cr8(vcpu);
>                break;
>        default:
> -               vcpu_printf(vcpu, "%s: unexpected cr %u\n", __func__, cr);
> +               kvm_err("%s: unexpected cr %u\n", __func__, cr);
>                return 0;
>        }
>
> @@ -4055,7 +4056,7 @@ static int emulator_set_cr(struct x86_emulate_ctxt *ctxt, int cr, ulong val)
>                res = kvm_set_cr8(vcpu, val);
>                break;
>        default:
> -               vcpu_printf(vcpu, "%s: unexpected cr %u\n", __func__, cr);
> +               kvm_err("%s: unexpected cr %u\n", __func__, cr);
>                res = -1;
>        }
>
> diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
> index 900c763..41973e2 100644
> --- a/include/linux/kvm_host.h
> +++ b/include/linux/kvm_host.h
> @@ -295,13 +295,15 @@ struct kvm {
>        long tlbs_dirty;
>  };
>
> -/* The guest did something we don't support. */
> -#define pr_unimpl(vcpu, fmt, ...)                                      \
> -       pr_err_ratelimited("kvm: %i: cpu%i " fmt,                       \
> -                          current->tgid, (vcpu)->vcpu_id , ## __VA_ARGS__)
> +#define kvm_err(fmt, ...) pr_err("kvm: " fmt, ## __VA_ARGS__)
> +#define kvm_info(fmt, ...) pr_info("kvm: " fmt, ## __VA_ARGS__)
> +#define kvm_debug(fmt, ...) pr_debug("kvm: " fmt, ## __VA_ARGS__)
> +#define kvm_pr_unimpl(fmt, ...) \
> +       pr_err_ratelimited("kvm: %i" fmt, current->tgid, ## __VA_ARGS__)
>
> -#define kvm_printf(kvm, fmt ...) printk(KERN_DEBUG fmt)
> -#define vcpu_printf(vcpu, fmt...) kvm_printf(vcpu->kvm, fmt)
> +/* The guest did something we don't support. */
> +#define vcpu_pr_unimpl(vcpu, fmt, ...)                                 \
> +       kvm_pr_unimpl("cpu%i " fmt, (vcpu)->vcpu_id, ## __VA_ARGS__)
>
>  static inline struct kvm_vcpu *kvm_get_vcpu(struct kvm *kvm, int i)
>  {
>
--
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