qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 2/4] spapr: Enable DABRX special register


From: Alexey Kardashevskiy
Subject: Re: [Qemu-devel] [PATCH 2/4] spapr: Enable DABRX special register
Date: Fri, 04 Apr 2014 17:13:25 +1100
User-agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0

On 04/04/2014 12:19 AM, Alexander Graf wrote:
> 
> On 03.04.14 15:14, Alexey Kardashevskiy wrote:
>> This advertises Data Address Breakpoint Register Extension (DABRX) to
>> the guest via hyperrtas list and enables it to migrate.
> 
> Do all CPUs we support (970 anyone) have DABRX support?

970MP and 970FX do. Support them too? Who cares? :)

> Also who handles this hcall in the TCG case?

Good point...

> What about older host kernels that don't
> support xdabr yet? 

They will ignore FW_FEATURE_XDABR, no?

> What about PR KVM?

Oh. Nothing. And we do not want to make this "hcall-xdabr" conditional,
right? Drop the whole patch? I am really confused now.


> 
> 
> Alex
> 
>>
>> Signed-off-by: Alexey Kardashevskiy <address@hidden>
>> ---
>>   hw/ppc/spapr.c              | 1 +
>>   target-ppc/translate_init.c | 4 ++++
>>   2 files changed, 5 insertions(+)
>>
>> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
>> index a11e121..451c473 100644
>> --- a/hw/ppc/spapr.c
>> +++ b/hw/ppc/spapr.c
>> @@ -307,6 +307,7 @@ static void *spapr_create_fdt_skel(hwaddr initrd_base,
>>       uint32_t start_prop = cpu_to_be32(initrd_base);
>>       uint32_t end_prop = cpu_to_be32(initrd_base + initrd_size);
>>       char hypertas_prop[] =
>> "hcall-pft\0hcall-term\0hcall-dabr\0hcall-interrupt"
>> +        "\0hcall-xdabr"
>>          
>> "\0hcall-tce\0hcall-vio\0hcall-splpar\0hcall-bulk\0hcall-set-mode";
>>       char qemu_hypertas_prop[] = "hcall-memop1";
>>       uint32_t refpoints[] = {cpu_to_be32(0x4), cpu_to_be32(0x4)};
>> diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c
>> index d07e186..1627bb0 100644
>> --- a/target-ppc/translate_init.c
>> +++ b/target-ppc/translate_init.c
>> @@ -7010,6 +7010,10 @@ static void init_proc_POWER7 (CPUPPCState *env)
>>                        SPR_NOACCESS, SPR_NOACCESS,
>>                        &spr_read_generic, &spr_write_generic,
>>                        KVM_REG_PPC_PMC6, 0x00000000);
>> +    spr_register_kvm(env, SPR_DABRX, "DABRX",
>> +                     SPR_NOACCESS, SPR_NOACCESS,
>> +                     SPR_NOACCESS, SPR_NOACCESS,
>> +                     KVM_REG_PPC_DABRX, 0x00000000);
>>   #endif /* !CONFIG_USER_ONLY */
>>       gen_spr_amr(env);
>>       /* XXX : not implemented */
> 


-- 
Alexey



reply via email to

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