[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3] docs: fusa: Add Assumption of Use (AoU)


  • To: Ayan Kumar Halder <ayankuma@xxxxxxx>
  • From: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>
  • Date: Tue, 24 Sep 2024 07:14:48 +0000
  • Accept-language: en-GB, en-US
  • Arc-authentication-results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com])
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
  • Arc-message-signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=i9tUJBLHzjNFYrmXb4X3shFaywWwuaU0jo160R7Y4GQ=; b=NK+ylX5IKoPDuwDaQVu66EaQu2kh/NTiu/SwJQ+OfLkKCiIu5wWO7dHDmeJomAr4pxZGDIQH7raP4+GxMW633m5tJ+5w6QSAbhwpxAFySW/NgFUwKZPk+IAx/6QfXDewUF1uX3tvNN7wmnj2c82DcYUpJeBwKecuZL/ezIUENjBQ30VOJAtL4OuBWPD8WKTGqlPJFGL4VBnH/bztc9D0RIIIKtun0yFqAGYiVkzEC9+KBjsxF5ZF8DhpJE5qfxOfvNgppoLNY2mtsSpWiOdVLhIGC7sWGMYsKuLHQfnGeSMMqVjz+iDE41u8YhxvfYELkTicVL/I7XQJDnpfFoG/gQ==
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=i9tUJBLHzjNFYrmXb4X3shFaywWwuaU0jo160R7Y4GQ=; b=A5THc4m5H55Gui+J2yYtSVpETPUJLOP9kfAJbniWfkMyn4grPM8fVZWknz6JUE6OQhl6i/4UnDzhKNhE3CQCgtWLvhqj3pUTRNALJrtG1+C8PlzjbdsxuWqisFqMx0P0HJf4fV/prr0IPf3rQLqGqf7qVZe0pNJKSGYJxGp0hZBeup+BJ97BQimBUTwFAvQFysQZIZXSzFMbBM2QxYm9EZjfuLQAsbu29zG+sTkW8k34iHeHieLreenbrvm7MBpvf0FDsAyuLuIi0qqOoNZE5KCS2Ag2Ivozwl0CIZXi2LQjfpfj+prdWuKACP9L/JavPY53q7+8pITFq7qxrtu1Zw==
  • Arc-seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=U41gNhjk2zEq22tyvQqp8lpNZ03+HX18zpPGCto97LE+rPjinEtsdwLjQOjGSiQF94xg5mwt5C3T9Ct33HJv1VKQq0Oz0X6MIXNaDq9h43JCNT8Kma8UCBKHJSH3CVn+pxLr5qVY9twbM+6auGKEX+hGGL5M+VaIqesRwS1VPiLqk4CXH3djSLHmRZ/xYc3XrsaSky9o9dRdAuni8zS1Ev6O6IggEYB1NsHIJ2sg5aPDhKhpfdeZbPw1ztOzS0GmRKFdlP6rqnsWOChxhbpA0zcmR4xwpm2vOKJXwMEITeBa5Sc+uZzbsayXBsAqrwnqTZ0BEntiYPvucg+9AgJVQg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uLy1cm8sufN6f/XdGO12BpBJw+mDRyzLSMZbigGMqsKuDoruoLJnCjNVrVZF3qJe3Ndj5LOFU5AKQs+ORw22hOjPSI7PL08EAHlk07eRTPzoaxPm71C2TCPnfMvjQH3jfIEwEaQG6TCY4DYu9zHS8TSxZvnTfE7HFqbSl64hhY9RHJrrrcLZBW0Y99y1zIPcToaW6LbgqB1GPDwYh457/6pHlzqTE1lLpBb+ZxzHMJ0iiwI8s8IjQ6LfR3EGQmCYX8AYuJhUbvrVWUjQMbXD0F14TLkJ6Q5THo+uTW4lMCzxg9O8wyPf0Qd79dhRxEsqBmf2cjDdSiaERXEFByAg5g==
  • Authentication-results-original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
  • Cc: Ayan Kumar Halder <ayan.kumar.halder@xxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Artem Mygaiev <artem_mygaiev@xxxxxxxx>, Hisao Munakata <hisao.munakata.vt@xxxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Julien Grall <jgrall@xxxxxxxxxx>
  • Delivery-date: Tue, 24 Sep 2024 07:15:32 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Nodisclaimer: true
  • Original-authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
  • Thread-index: AQHbCDKnNzyGC8DY7ki21+yQsaede7JfBtYAgAacA4CAAO+VgA==
  • Thread-topic: [PATCH v3] docs: fusa: Add Assumption of Use (AoU)

Hi Ayan,

> On 23 Sep 2024, at 18:57, Ayan Kumar Halder <ayankuma@xxxxxxx> wrote:
> 
> 
> On 19/09/2024 13:01, Bertrand Marquis wrote:
>> Hi Ayan,
> Hi Bertrand,
>> 
>>> On 16 Sep 2024, at 14:18, Ayan Kumar Halder <ayan.kumar.halder@xxxxxxx> 
>>> wrote:
>>> 
>>> From: Michal Orzel <michal.orzel@xxxxxxx>
>>> 
>>> AoU are the assumptions that Xen relies on other components (eg platform
>>> platform, domains)
>>> to fulfill its requirements. In our case, platform means a combination
>>> of hardware, firmware and bootloader.
>>> 
>>> We have defined AoU in the intro.rst and added AoU for the generic
>>> timer.
>>> 
>>> Also, fixed a requirement to denote that Xen shall **not** expose the
>>> system counter frequency via the "clock-frequency" device tree property.
>>> The reason being the device tree documentation strongly discourages the
>>> use of this peoperty. Further if the "clock-frequency" is exposed, then
>>> it overrides the value programmed in the CNTFRQ_EL0 register.
>>> 
>>> So, the frequency shall be exposed via the CNTFRQ_EL0 register only and
>>> consequently there is an assumption on the platform to program the
>>> register correctly.
>>> 
>>> Signed-off-by: Michal Orzel <michal.orzel@xxxxxxx>
>>> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@xxxxxxx>
>>> Reviewed-by: Julien Grall <jgrall@xxxxxxxxxx>
>>> ---
>>> Changes from :-
>>> 
>>> v1 - 1. Removed the part of requirement which states that Xen exposes the
>>> frequency of the system timer by reading the "clock-frequency" property.
>>> 
>>> 2. Added a rationale for AoU.
>>> 
>>> 3. Reworded the AoU.
>>> 
>>> v2 - 1. Reworded the commit message. Added R-b.
>>> 
>>> .../reqs/design-reqs/arm64/generic-timer.rst  | 24 ++++++++++++++++++-
>>> docs/fusa/reqs/intro.rst                      | 10 ++++++++
>>> 2 files changed, 33 insertions(+), 1 deletion(-)
>>> 
>>> diff --git a/docs/fusa/reqs/design-reqs/arm64/generic-timer.rst 
>>> b/docs/fusa/reqs/design-reqs/arm64/generic-timer.rst
>>> index f2a0cd7fb8..86d84a3c40 100644
>>> --- a/docs/fusa/reqs/design-reqs/arm64/generic-timer.rst
>>> +++ b/docs/fusa/reqs/design-reqs/arm64/generic-timer.rst
>>> @@ -30,7 +30,7 @@ Read system counter frequency
>>> 
>>> Description:
>>> Xen shall expose the frequency of the system counter to the domains in
>>> -CNTFRQ_EL0 register and/or domain device tree's "clock-frequency" property.
>>> +CNTFRQ_EL0 register.
>>> 
>>> Rationale:
>>> 
>>> @@ -116,6 +116,28 @@ Rationale:
>>> 
>>> Comments:
>>> 
>>> +Covers:
>>> + - `XenProd~emulated_timer~1`
>>> +
>>> +Assumption of Use on the Platform
>>> +=================================
>>> +
>>> +Expose system timer frequency via register
>>> +------------------------------------------
>>> +
>>> +`XenSwdgn~arm64_generic_timer_pf_program_cntfrq_el0~1`
>>> +
>>> +Description:
>>> +Underlying platform shall program CNTFRQ_EL0 register with the value of 
>>> system
>>> +timer frequency.
>> How about: CNTFRQ_EL0 register shall be programmed with the value of the 
>> system timer frequency.
>> 
>> It prevent to use "platform" which is quite undefined here.
>> 
>>> +
>>> +Rationale:
>>> +Xen reads the CNTFRQ_EL0 register to get the value of system timer 
>>> frequency.
>>> +While there is a provision to get this value by reading the 
>>> "clock-frequency"
>>> +dt property [2], the use of this property is strongly discouraged.
>> I would put the second sentence as a comment as only the first one is the 
>> rationale explaining
>> why we need it to be correct.
>> 
>>> +
>>> +Comments:
>>> +
>>> Covers:
>>>  - `XenProd~emulated_timer~1`
>>> 
>>> diff --git a/docs/fusa/reqs/intro.rst b/docs/fusa/reqs/intro.rst
>>> index 245a219ff2..aa85ff821c 100644
>>> --- a/docs/fusa/reqs/intro.rst
>>> +++ b/docs/fusa/reqs/intro.rst
>>> @@ -38,6 +38,16 @@ The requirements are linked using OpenFastTrace
>>> OpenFastTrace parses through the requirements and generates a traceability
>>> report.
>>> 
>>> +Assumption of Use
>>> +=================
>>> +
>>> +To fulfill one or more design requirements, there may be underlying 
>>> assumptions
>>> +on one or more components that Xen interacts with directly or indirectly. 
>>> For
>>> +eg, there may be assumptions on the underlying platform (hardware + 
>>> firmware +
>>> +bootloader) to set certain registers, etc. The important thing here is that
>>> +anyone who validates these requirements, need to consider the assumption 
>>> on the
>>> +other components.
> I think there is a typo.
>> I would simplify a bit:
>> Xen is making several assumptions on the status of the platform or on some
>> functions being present and functional.
> s/functional/functionality.

no that sounds weird, functional is right in the sentence i think.

>> For example, Xen might assume that
>> some registers are set.
>> Anybody who wants to use Xen must validate that the platform it is used on
>> (meaning the hardware and any software running before Xen like the firmware)
>> fulfils all the AoU described by Xen.
>> 
>> What do you think ?
> 
> It sounds ok.

Good
Cheers
Bertrand

> 
> - Ayan





 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.