On 04.09.20 18:56, Alexander Duyck wrote:
> On Fri, Sep 4, 2020 at 8:20 AM Jan Kiszka <[email protected]> wrote:
>>
>> On 25.08.20 16:45, Alexander Duyck wrote:
>>> From: Alexander Duyck <[email protected]>
>>>
>>> Free page hints allow the balloon driver to provide information on what
>>> pages are not currently in use so that we can avoid the cost of copying
>>> them in migration scenarios. Add a feature description for free page hints
>>> describing basic functioning and requirements.
>>>
>>> Acked-by: Cornelia Huck <[email protected]>
>>> Reviewed-by: David Hildenbrand <[email protected]>
>>> Signed-off-by: Alexander Duyck <[email protected]>
>>> ---
>>>  conformance.tex |    2 +
>>>  content.tex     |  161 
>>> +++++++++++++++++++++++++++++++++++++++++++++++++++++--
>>>  2 files changed, 157 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/conformance.tex b/conformance.tex
>>> index b6fdec090383..a14e26edfcb2 100644
>>> --- a/conformance.tex
>>> +++ b/conformance.tex
>>> @@ -149,6 +149,7 @@ \section{Conformance Targets}\label{sec:Conformance / 
>>> Conformance Targets}
>>>  \item \ref{drivernormative:Device Types / Memory Balloon Device / Feature 
>>> bits}
>>>  \item \ref{drivernormative:Device Types / Memory Balloon Device / Device 
>>> Operation}
>>>  \item \ref{drivernormative:Device Types / Memory Balloon Device / Device 
>>> Operation / Memory Statistics}
>>> +\item \ref{drivernormative:Device Types / Memory Balloon Device / Device 
>>> Operation / Free Page Hinting}
>>>  \end{itemize}
>>>
>>>  \conformance{\subsection}{SCSI Host Driver 
>>> Conformance}\label{sec:Conformance / Driver Conformance / SCSI Host Driver 
>>> Conformance}
>>> @@ -331,6 +332,7 @@ \section{Conformance Targets}\label{sec:Conformance / 
>>> Conformance Targets}
>>>  \item \ref{devicenormative:Device Types / Memory Balloon Device / Feature 
>>> bits}
>>>  \item \ref{devicenormative:Device Types / Memory Balloon Device / Device 
>>> Operation}
>>>  \item \ref{devicenormative:Device Types / Memory Balloon Device / Device 
>>> Operation / Memory Statistics}
>>> +\item \ref{devicenormative:Device Types / Memory Balloon Device / Device 
>>> Operation / Free Page Hinting}
>>>  \end{itemize}
>>>
>>>  \conformance{\subsection}{SCSI Host Device 
>>> Conformance}\label{sec:Conformance / Device Conformance / SCSI Host Device 
>>> Conformance}
>>> diff --git a/content.tex b/content.tex
>>> index 91735e3eb018..76dfce919b97 100644
>>> --- a/content.tex
>>> +++ b/content.tex
>>> @@ -5005,10 +5005,13 @@ \subsection{Virtqueues}\label{sec:Device Types / 
>>> Memory Balloon Device / Virtque
>>>  \begin{description}
>>>  \item[0] inflateq
>>>  \item[1] deflateq
>>> -\item[2] statsq.
>>> +\item[2] statsq
>>> +\item[3] free_page_vq
>>>  \end{description}
>>>
>>> -  Virtqueue 2 only exists if VIRTIO_BALLOON_F_STATS_VQ set.
>>> +  statsq only exists if VIRTIO_BALLOON_F_STATS_VQ is set.
>>> +
>>> +  free_page_vq only exists if VIRTIO_BALLOON_F_FREE_PAGE_HINT is set.
>>>
>>>  \subsection{Feature bits}\label{sec:Device Types / Memory Balloon Device / 
>>> Feature bits}
>>>  \begin{description}
>>> @@ -5019,6 +5022,10 @@ \subsection{Feature bits}\label{sec:Device Types / 
>>> Memory Balloon Device / Featu
>>>      memory statistics is present.
>>>  \item[VIRTIO_BALLOON_F_DEFLATE_ON_OOM (2) ] Deflate balloon on
>>>      guest out of memory condition.
>>> +\item[ VIRTIO_BALLOON_F_FREE_PAGE_HINT(3) ] The device has support for free
>>> +    page hinting. A virtqueue for providing hints as to what memory is
>>> +    currently free is present. Configuration field 
>>> \field{free_page_hint_cmd_id}
>>> +    is valid.
>>>
>>>  \end{description}
>>>
>>> @@ -5042,13 +5049,17 @@ \subsection{Feature bits}\label{sec:Device Types / 
>>> Memory Balloon Device / Featu
>>>  VIRTIO_BALLOON_F_MUST_TELL_HOST is not negotiated.
>>>
>>>  \subsection{Device configuration layout}\label{sec:Device Types / Memory 
>>> Balloon Device / Device configuration layout}
>>> -  Both fields of this configuration
>>> -  are always available.
>>> +  \field{num_pages} and \field{actual} are always available.
>>> +
>>> +  \field{free_page_hint_cmd_id} is available if
>>> +    VIRTIO_BALLOON_F_FREE_PAGE_HINT has been negotiated and is read-only by
>>> +    the driver.
>>
>> This reads at least to me like "...if VIRTIO_BALLOON_F_FREE_PAGE_HINT
>> ... is read-only by the driver". I suspect you rather meant
>> "free_page_hint_cmd_id is read-only...". Maybe split up into two sentences?
> 
> Yes, the intention is:
> 1. free_page_hint_cmd_id is only available if
> VIRTIO_BALLOON_F_FREE_PAGE_HINT has been negotiated
> 2. free_page_hint_cmd_id is read only by the driver
> 
> If needed I suppose we could break it up by splitting it into two
> sentences, or adding "the field" after the "and".
> 

I'm fine with both options but please adjust this - on top (Michael just
opened the voting for this version again due to the formal typo in round 1).

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to