qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PULL 1/5] linux-headers: Update from v3.13-rc3


From: Alexander Graf
Subject: Re: [Qemu-devel] [PULL 1/5] linux-headers: Update from v3.13-rc3
Date: Wed, 11 Dec 2013 15:49:26 +0100

On 11.12.2013, at 15:44, Alex Williamson <address@hidden> wrote:

> On Wed, 2013-12-11 at 12:09 +0100, Greg Kurz wrote:
>> On Fri, 06 Dec 2013 13:48:25 -0700
>> Alex Williamson <address@hidden> wrote:
>>> Update to tag v3.13-rc3 (374b105797c3d4f29c685f3be535c35f5689b30e)
>>> 
>>> Signed-off-by: Alex Williamson <address@hidden>
>>> ---
>>> linux-headers/asm-arm/kvm.h              |    3 +
>>> linux-headers/asm-powerpc/epapr_hcalls.h |    4 +
>>> linux-headers/asm-powerpc/kvm.h          |   86
>>> +++++++++++++++++++++++++++++- linux-headers/asm-x86/hyperv.h
>>> |   19 +++++++ linux-headers/asm-x86/kvm.h              |    6 +-
>>> linux-headers/linux/kvm.h                |   11 ++++
>>> 6 files changed, 119 insertions(+), 10 deletions(-)
>>> 
>>> diff --git a/linux-headers/asm-arm/kvm.h b/linux-headers/asm-arm/kvm.h
>>> index c1ee007..c498b60 100644
>>> --- a/linux-headers/asm-arm/kvm.h
>>> +++ b/linux-headers/asm-arm/kvm.h
>>> @@ -63,7 +63,8 @@ struct kvm_regs {
>>> 
>>> /* Supported Processor Types */
>>> #define KVM_ARM_TARGET_CORTEX_A15   0
>>> -#define KVM_ARM_NUM_TARGETS                1
>>> +#define KVM_ARM_TARGET_CORTEX_A7   1
>>> +#define KVM_ARM_NUM_TARGETS                2
>>> 
>>> /* KVM_ARM_SET_DEVICE_ADDR ioctl id encoding */
>>> #define KVM_ARM_DEVICE_TYPE_SHIFT   0
>>> diff --git a/linux-headers/asm-powerpc/epapr_hcalls.h
>>> b/linux-headers/asm-powerpc/epapr_hcalls.h index 33b3f89..06f7247 100644
>>> --- a/linux-headers/asm-powerpc/epapr_hcalls.h
>>> +++ b/linux-headers/asm-powerpc/epapr_hcalls.h
>>> @@ -78,7 +78,7 @@
>>> #define EV_SUCCESS          0
>>> #define EV_EPERM            1       /* Operation not permitted */
>>> #define EV_ENOENT           2       /*  Entry Not Found */
>>> -#define EV_EIO                     3       /* I/O error occurred */
>>> +#define EV_EIO                     3       /* I/O error occured */
>>> #define EV_EAGAIN           4       /* The operation had
>>> insufficient
>>>                                      * resources to complete and
>>> should be
>>>                                      * retried
>>> @@ -89,7 +89,7 @@
>>> #define EV_ENODEV           7       /* No such device */
>>> #define EV_EINVAL           8       /* An argument supplied to the
>>> hcall was out of range or invalid */
>>> -#define EV_INTERNAL                9       /* An internal error
>>> occurred */ +#define EV_INTERNAL            9       /* An internal
>>> error occured */ #define EV_CONFIG          10      /* A
>>> configuration error was detected */ #define EV_INVALID_STATE
>>> 11  /* The object is in an invalid state */ #define
>>> EV_UNIMPLEMENTED    12      /* Unimplemented hypercall */ diff
>>> --git a/linux-headers/asm-powerpc/kvm.h b/linux-headers/asm-powerpc/kvm.h
>>> index 0fb1a6e..6836ec7 100644 --- a/linux-headers/asm-powerpc/kvm.h
>>> +++ b/linux-headers/asm-powerpc/kvm.h
>>> @@ -27,6 +27,7 @@
>>> #define __KVM_HAVE_PPC_SMT
>>> #define __KVM_HAVE_IRQCHIP
>>> #define __KVM_HAVE_IRQ_LINE
>>> +#define __KVM_HAVE_GUEST_DEBUG
>>> 
>> 
>> This define breaks the build on ppc:
>> 
>> kvm-all.o: In function `kvm_update_guest_debug':
>> kvm-all.c:1910: undefined reference to `kvm_arch_update_guest_debug'
>> kvm-all.o: In function `kvm_insert_breakpoint':
>> kvm-all.c:1937: undefined reference to `kvm_arch_insert_sw_breakpoint'
>> kvm-all.c:1945: undefined reference to `kvm_arch_insert_hw_breakpoint'
>> kvm-all.o: In function `kvm_remove_breakpoint':
>> kvm-all.c:1977: undefined reference to `kvm_arch_remove_sw_breakpoint'
>> kvm-all.c:1985: undefined reference to `kvm_arch_remove_hw_breakpoint'
>> kvm-all.o: In function `kvm_remove_all_breakpoints':
>> kvm-all.c:2009: undefined reference to `kvm_arch_remove_sw_breakpoint'
>> kvm-all.c:2006: undefined reference to `kvm_arch_remove_sw_breakpoint'
>> kvm-all.c:2017: undefined reference to `kvm_arch_remove_all_hw_breakpoints'
>> 
>> The ppc support is missing...
> 
> This was added by:
> 
> commit ce11e48b7fdd256ec68b932a89b397a790566031
> Author: Bharat Bhushan <address@hidden>
> Date:   Thu Jul 4 12:27:47 2013 +0530
> 
>    KVM: PPC: E500: Add userspace debug stub support
> 
> Bharat?  Alex?

The kernel now supports debug registers and I do have patches to make use of 
them in my queue. The fact that QEMU expects internal code to provide certain 
functions depending on some random #define in a header file is just plain 
broken though.

Hence we want an intermediate quick fix to at least get upstream buildable 
again and then implement the real deal.


Alex




reply via email to

[Prev in Thread] Current Thread [Next in Thread]