Messages in this thread |  | | Subject | Re: [PATCH v9 01/18] docs: acrn: Introduce ACRN | From | Randy Dunlap <> | Date | Mon, 8 Feb 2021 11:48:07 -0800 |
| |
Hi--
On 2/6/21 7:10 PM, shuo.a.liu@intel.com wrote: > From: Shuo Liu <shuo.a.liu@intel.com> > > Add documentation on the following aspects of ACRN: > > 1) A brief introduction on the architecture of ACRN. > 2) I/O request handling in ACRN. > 3) CPUID functions of ACRN.
> ---
> diff --git a/Documentation/virt/acrn/io-request.rst b/Documentation/virt/acrn/io-request.rst > new file mode 100644 > index 000000000000..6cc3ea0fa1f5 > --- /dev/null > +++ b/Documentation/virt/acrn/io-request.rst > @@ -0,0 +1,97 @@ > +.. SPDX-License-Identifier: GPL-2.0 > + > +I/O request handling > +==================== > + ... > + > +1. I/O request > +-------------- > + > +For each User VM, there is a shared 4-KByte memory region used for I/O requests > +communication between the hypervisor and Service VM. An I/O request is a > +256-byte structure buffer, which is 'struct acrn_io_request', that is filled by > +an I/O handler of the hypervisor when a trapped I/O access happens in a User > +VM. ACRN userspace in the Service VM first allocates a 4-KByte page and passes > +the GPA (Guest Physical Address) of the buffer to the hypervisor. The buffer is > +used as an array of 16 I/O request slots with each I/O request slot being 256 > +bytes. This array is indexed by vCPU ID.
Does this mean that ACRN has a limit of 16 vCPUs ?
thanks. -- ~Randy
|  |