From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mx.groups.io with SMTP id smtpd.web08.10910.1645712926893824814 for ; Thu, 24 Feb 2022 06:29:06 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=MDdLnoA+; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: sebastien.boeuf@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1645712945; x=1677248945; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=b5H5EVSRAq6zErkGn7KlfosXXH4zMnuSjjiYpvkWQJs=; b=MDdLnoA+uCFruK293VCEgKqHapHTa/HmMRbFe9HG5IoSs/2UJIx70J9v TcPHdbv1B/4UcvhoPqtGQG6SbwRVeuDtKzA4hPZEVxA+OD8SGr8D68ZID kWzAHbtodIKkRxehBc1Vh1gysoma+yxPLhLfNHeCiy4qBQHMIuA0S+YLR lrMw1C3xf876rB2d1VUh15j3dBsgKyqjCL5cts9iCMHWG3+XBNqAASLzW ZuEkq4it4UFQICTL4f0UD6YfUTzHrRAlmmVD1QwOwU8sGGCzh7zy5FBsH 0SNBv1eE48pOF5zZ2eB7raqOzt5Z3NLvNPAWNcwkUu9ddHDL0XuT4x0OS w==; X-IronPort-AV: E=McAfee;i="6200,9189,10267"; a="252437886" X-IronPort-AV: E=Sophos;i="5.90,134,1643702400"; d="scan'208";a="252437886" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Feb 2022 06:29:05 -0800 X-IronPort-AV: E=Sophos;i="5.90,134,1643702400"; d="scan'208";a="506335037" Received: from kalebaul-mobl.ger.corp.intel.com (HELO sboeuf-mobl.home) ([10.252.24.105]) by orsmga002-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Feb 2022 06:29:03 -0800 From: "Boeuf, Sebastien" To: devel@edk2.groups.io Cc: jiewen.yao@intel.com, jordan.l.justen@intel.com, kraxel@redhat.com, sebastien.boeuf@intel.com Subject: [PATCH v3 7/7] OvmfPkg: CloudHv: Add README Date: Thu, 24 Feb 2022 15:28:26 +0100 Message-Id: X-Mailer: git-send-email 2.32.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable From: Sebastien Boeuf Add some documentation to the CloudHv target in order to clarify how to use it and what to expect from it. Signed-off-by: Sebastien Boeuf --- OvmfPkg/CloudHv/README | 66 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 OvmfPkg/CloudHv/README diff --git a/OvmfPkg/CloudHv/README b/OvmfPkg/CloudHv/README new file mode 100644 index 0000000000..b5ef2a8be6 --- /dev/null +++ b/OvmfPkg/CloudHv/README @@ -0,0 +1,66 @@ + +CloudHv is a port of OVMF for the Cloud Hypervisor project. + +The Cloud Hypervisor project +---------------------------- + +Cloud Hypervisor is a Virtual Machine Monitor that runs on top of KVM. The +project focuses on exclusively running modern, cloud workloads, on top of a +limited set of hardware architectures and platforms. Cloud workloads refer= s to +those that are usually run by customers inside a cloud provider. This means +modern operating systems with most I/O handled by paravirtualised devices +(i.e. virtio), no requirement for legacy devices, and 64-bit CPUs. + +https://github.com/cloud-hypervisor/cloud-hypervisor + +Design +------ + +Based on Cloud Hypervisor's motto to reduce the emulation as much as possi= ble, +the project logically decided to support the PVH boot specification as the= only +way of booting virtual machines. That includes both direct kernel boot and= OVMF +firmware which must be generated as PVH ELF binaries. +PVH allows information like location of ACPI tables and location of guest = RAM +ranges to be shared without the need of an extra emulated device like a CM= OS. + +Features +-------- + +* Serial console +* EFI shell +* virtio-pci + +Build +----- + +The way to build the CloudHv target is as follows: + +OvmfPkg/build.sh -p OvmfPkg/CloudHv/CloudHvX64.dsc -a X64 -b DEBUG + +Usage +----- + +Assuming Cloud Hypervisor is already built, one can start a virtual machin= e as +follows: + +./cloud-hypervisor \ + --cpus boot=3D1 \ + --memory size=3D1G \ + --kernel Build/CloudHvX64/DEBUG_GCC5/FV/CLOUDHV.fd \ + --disk path=3D/path/to/disk.raw + +Releases +-------- + +In edk2-stable202202, CloudHv is generated as data-only binary. +Starting with edk2-stable202205, CloudHv is generated as a PVH ELF binary = to +reduce the amount of emulation needed from Cloud Hypervisor. +For TDX, things are handled differently and PVH is not used, which is why = the +firmware is always generated as a data-only binary. + ++-------------------+----------------+-------------+ +| CloudHv | non-TDX | TDX | ++-------------------+----------------+-------------+ +| edk2-stable202202 | Data binary | Data binary | +| edk2-stable202205 | PVH ELF binary | Data binary | ++-------------------+----------------+-------------+ -- = 2.32.0 --------------------------------------------------------------------- Intel Corporation SAS (French simplified joint stock company) Registered headquarters: "Les Montalets"- 2, rue de Paris, = 92196 Meudon Cedex, France Registration Number: 302 456 199 R.C.S. NANTERRE Capital: 4,572,000 Euros This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.