[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [PATCH v1 2/2] content/virtio-balloon: VIRTIO_BALLOON_F_PAGE_POISON
The VIRTIO_BALLOON_F_PAGE_POISON feature supports guest to report the
memory poison value to host.
Suggested-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Wei Wang <wei.w.wang@intel.com>
---
content.tex | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/content.tex b/content.tex
index 673c891..df3c6c2 100644
--- a/content.tex
+++ b/content.tex
@@ -4397,6 +4397,8 @@ memory pages to the host when the related features are negotiated.
guest out of memory condition.
\item[VIRTIO_BALLOON_F_FREE_PAGE_HINT(3) ] Guest reports free pages
to host.
+\item[VIRTIO_BALLOON_F_PAGE_POISON(4) ] Indicate if guest is using
+ page poisoning.
\end{description}
@@ -4404,6 +4406,10 @@ memory pages to the host when the related features are negotiated.
The driver SHOULD accept the VIRTIO_BALLOON_F_MUST_TELL_HOST
feature if offered by the device.
+The driver SHOULD accept the VIRTIO_BALLOON_F_PAGE_POISON feature
+only when the guest is using page poison and the feature is offered
+by the device.
+
\devicenormative{\subsubsection}{Feature bits}{Device Types / Memory Balloon Device / Feature bits}
If the device offers the VIRTIO_BALLOON_F_MUST_TELL_HOST feature
bit, and if the driver did not accept this feature bit, the
@@ -4432,6 +4438,7 @@ struct virtio_balloon_config {
le32 num_pages;
le32 actual;
le32 free_page_report_cmd_id;
+ le32 poison_val;
};
\end{lstlisting}
@@ -4440,12 +4447,20 @@ struct virtio_balloon_config {
\field{free_page_report_cmd_id} is available if
VIRTIO_BALLON_F_FREE_PAGE_HINT negotiated.
+\field{poison_val} is available if VIRTIO_BALLOON_F_PAGE_POISON
+negotiated.
+
\devicenormative{\subsubsection}{Device configuration layout}{Device Types / Traditional Memory Balloon Device / Device configuration layout}
The device MUST NOT set \field{free_page_report_cmd_id} to a value
between \field{VIRTIO_BALLOON_CMD_ID_DONE} and
\field{VIRTIO_BALLOON_CMD_ID_MIN} exclusive.
+\drivernormative{\subsubsection}{Device configuration layout}{Device Types / Traditional Memory Balloon Device / Device configuration layout}
+
+The driver SHOULD write the guest used poison value to
+\field{poison_val} if VIRTIO_BALLOON_F_PAGE_POISON negotiated.
+
\subparagraph{Legacy Interface: Device configuration layout}\label{sec:Device Types / Memory Balloon Device / Device
configuration layout / Legacy Interface: Device configuration layout}
When using the legacy interface, transitional devices and drivers
@@ -4480,6 +4495,9 @@ The device initialization process is outlined below:
migration agent) who will request for the free page reporting
from the driver.
\end{enumerate}
+
+\item If the VIRTIO_BALLOON_F_PAGE_POISON feature bit is negotiated,
+ write the guest used poison value to \field{poison_val}.
\end{enumerate}
--
2.7.4
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]