[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b8210e0e-bdf2-3e17-ce9a-d7a3ca0e6672@intel.com>
Date: Mon, 27 May 2019 10:57:09 +0800
From: "Zhao, Yakui" <yakui.zhao@...el.com>
To: Borislav Petkov <bp@...en8.de>
Cc: linux-kernel@...r.kernel.org, x86@...nel.org, tglx@...utronix.de,
Jason Chen CJ <jason.cj.chen@...el.com>
Subject: Re: [PATCH v6 4/4] x86/acrn: Add hypercall for ACRN guest
On 2019年05月15日 15:37, Borislav Petkov wrote:
> On Tue, Apr 30, 2019 at 11:45:26AM +0800, Zhao Yakui wrote:
>> When the ACRN hypervisor is detected, the hypercall is needed so that the
>> ACRN guest can query/config some settings. For example: it can be used
>> to query the resources in hypervisor and manage the CPU/memory/device/
>> interrupt for guest operating system.
>>
>> Add the hypercall so that the ACRN guest can communicate with the
>> low-level ACRN hypervisor. On x86 it is implemented with the VMCALL
>> instruction.
>>
>> Co-developed-by: Jason Chen CJ <jason.cj.chen@...el.com>
>> Signed-off-by: Jason Chen CJ <jason.cj.chen@...el.com>
>> Signed-off-by: Zhao Yakui <yakui.zhao@...el.com>
>> Reviewed-by: Thomas Gleixner <tglx@...utronix.de>
>> ---
>> V1->V2: Refine the comments for the function of acrn_hypercall0/1/2
>> v2->v3: Use the "vmcall" mnemonic to replace hard-code byte definition
>> v4->v5: Use _ASM_X86_ACRN_HYPERCALL_H instead of _ASM_X86_ACRNHYPERCALL_H.
>> Use the "VMCALL" mnemonic in comment/commit log.
>> Uppercase r8/rdi/rsi/rax for hypercall parameter register in comment.
>> v5->v6: Remove explicit local register variable for inline assembly
>> ---
>> arch/x86/include/asm/acrn_hypercall.h | 84 +++++++++++++++++++++++++++++++++++
>> 1 file changed, 84 insertions(+)
>> create mode 100644 arch/x86/include/asm/acrn_hypercall.h
>>
>> diff --git a/arch/x86/include/asm/acrn_hypercall.h b/arch/x86/include/asm/acrn_hypercall.h
>> new file mode 100644
>> index 0000000..5cb438e
>> --- /dev/null
>> +++ b/arch/x86/include/asm/acrn_hypercall.h
>
> Questions:
>
> * why isn't this in acrn.h and needs to be a separate header?
I refer to the Xen/KVM hypercall to add the ACRN hypercall in one
separate header.
The ACRN hypercall is defined in one separate acrn_hypercall.h and can
be included explicitly by the *.c that needs the hypercall.
>
> * why aren't those functions used anywhere?
The hypercall will be used in driver part. Before the driver part is
added, it seems that the defined ACRN hypercall functions are not used.
Do I need to add these functions together with driver part?
Thanks
Yakui
>
Powered by blists - more mailing lists