From: Sakar Arora <Sakar.Arora@arm.com>
To: "Jin, Eric" <eric.jin@intel.com>,
Supreeth Venkatesh <Supreeth.Venkatesh@arm.com>,
"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Subject: Re: [edk2-test][RFC] Integrating SBBR tests into SCT - A design proposal
Date: Fri, 11 Jan 2019 12:22:44 +0000 [thread overview]
Message-ID: <DB7PR08MB3209EAC7D3BAE56858769628E0850@DB7PR08MB3209.eurprd08.prod.outlook.com> (raw)
In-Reply-To: <DA72DC7456565B47808A57108259571F63735C1F@SHSMSX103.ccr.corp.intel.com>
Hi Supreeth, Eric,
My replies inlined.
Thanks,
Sakar
-----Original Message-----
From: Jin, Eric <eric.jin@intel.com>
Sent: Tuesday, January 8, 2019 7:30 AM
To: Supreeth Venkatesh <Supreeth.Venkatesh@arm.com>; Sakar Arora <Sakar.Arora@arm.com>; edk2-devel@lists.01.org
Cc: Prasanth Pulla <Prasanth.Pulla@arm.com>
Subject: RE: [edk2][edk2-test][RFC] Integrating SBBR tests into SCT - A design proposal
Hello Sakar,
SBBR spec is not published by UEFI Forum and can be considered as a supplement to ARM UEFI. The evolution of edk2-test/uefi-sct should be tagged to UEFI Spec only.
Can we land SBBR test on standalone space under edk2-test currently or in short-term? I mean SBBR test can leverage edk2-test/uefi-sct (as sub-module)or not to build test efi files itself and these test efi files can be integrated into UEFI SCT to execute with user usage.
[Sakar] If I understand correctly, you want a separate directory in edk2-test for SBBR code, rather than having it in edk2-test/uefi-sct.
The problem I see here is that apart from standalone SBBR test cases, there are some changes to the existing test cases inside edk2-test/uefi-sct, that we would need pushed for SBBR compliance (These changes will only take effect if "-sbbr" parameter is passed while running SCT). So SBBR tests are not exactly standalone. Keeping all SBBR specific stuff away, would mean maintaining patches to SCT code, which will be difficult. I hope I am making sense.
For the new attributes - SBBR and SBBR_EXCL, I agree with Supreeth that they are more like the additional parameters. So they are not the similar cases to (AUTO, MANUAL, DESTRUCTIVE, or RESET_REQUIRED).
[Sakar] The reasoning for proposing these 2 attributes is this.
There are some SBBR tests that are needed only for SBBR compliance. When SCT app is run *without* the "-sbbr" cmdline parameter, it should run all tests, excluding those specific to SBBR. So it needs to differentiate, at runtime, tests that are valid for both SBBR and UEFI compliance from the ones that are exclusively for SBBR. Tests with attribute SBBR are meant to run for both UEFI and SBBR compliance, while those with attribute SBBR_EXCL are only meant for SBBR compliance.
If the intention is to distinguish SBBR test from existing test, It can be implemented with "-s" parameter plus the SBBR test sequence easily.
[Sakar] Using the "-s" parameter with test sequence file is an option I explored a bit.
It doesn't seem to offer control over what sub-tests to run within a test scenario, which is something we want while adding SBBR support in SCT. For example, there are some sub-tests that need to be removed from some main tests, for SBBR compliance. As far as I understand, sequence file does not provide that level of control. Please correct me if I am missing something.
Above is my quick response and I will continue to consider it these days and look at SBBR spec. Any input is welcome.
Best Regards
Eric
-----Original Message-----
From: Supreeth Venkatesh <Supreeth.Venkatesh@arm.com>
Sent: Tuesday, January 8, 2019 4:14 AM
To: Sakar Arora <Sakar.Arora@arm.com>; edk2-devel@lists.01.org; Jin, Eric <eric.jin@intel.com>
Cc: Prasanth Pulla <Prasanth.Pulla@arm.com>
Subject: RE: [edk2][edk2-test][RFC] Integrating SBBR tests into SCT - A design proposal
Sakar,
Looks good.
However, Why do we need two additional parameters SBBR and SBBR_EXCL?
Since SBBR is a subset/superset of UEFI specifications, would "sbbr_standalone" or similar (just sbbr) which would run all the sbbr tests including ones that is already part of UEFI-SCT Suffice?
Lets wait for additional comments from Eric.
Thanks,
Supreeth
-----Original Message-----
From: Sakar Arora <Sakar.Arora@arm.com>
Sent: Monday, December 31, 2018 12:50 AM
To: edk2-devel@lists.01.org; eric.jin@intel.com; Supreeth Venkatesh <Supreeth.Venkatesh@arm.com>
Cc: Prasanth Pulla <Prasanth.Pulla@arm.com>
Subject: [edk2][edk2-test][RFC] Integrating SBBR tests into SCT - A design proposal
Hi All,
Introduction -->
The intent is to run SBBR tests using SCT infrastructure. This is the SBBR specification link for reference http://infocenter.arm.com/help/topic/com.arm.doc.den0044c/Server_Base_Boot_Requirements_v1_1_Arm_DEN_0044C.pdf
Majority of SBBR requirements can be tested by current SCT code as is. A few more SBBR specific tests are needed to cover complete spec.
Proposal -->
An ideal setup is new SBBR specific code residing in edk2-test master. SCT test infrastructure will run tests for UEFI spec compliance or just SBBR spec compliance based on command line arguments. This would require run time classification of tests.
- Details
Each SCT test provides a list of sub-tests to verify various aspects of the requirement. Each sub-test is assigned some attributes (AUTO, MANUAL, DESTRUCTIVE, or RESET_REQUIRED) which are referred to by the test infrastructure to do pre and post processing for it.
The proposal is to add 2 new attributes SBBR and SBBR_EXCL to the existing set. The test infrastructure will decide whether to run or skip a test based on command line parameters and these new attributes.
- The new attributes
SBBR : Tests with this attribute are required by both SBBR and UEFI.
SBBR_EXCL : Tests with this attribute are required by SBBR exclusively.
- Examples
Shell> Sct.efi -a -sbbr
Would run tests required by SBBR, i.e., tests with attributes SBBR or SBBR_EXCL.
Shell> Sct.efi -a
Would run tests required by UEFI, i.e., all tests excluding those with attribute SBBR_EXCL.
- SCT test pre-processing flow
The following logic will be added to the pre-processing flow.
If (SCT_FOR_SBBR) {
If (!TEST_CASE_FOR_SBBR(TestCaseAttribute))
goto SkipTest;
} else {
If (TEST_CASE_FOR_SBBR_EXCL(TestCaseAttribute))
goto SkipTest;
}
Comments are welcome.
Thanks,
Sakar
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
next prev parent reply other threads:[~2019-01-11 12:22 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <DB7PR08MB3209A35B910782A2CA825B19E0B20@DB7PR08MB3209.eurprd08.prod.outlook.com>
2018-12-31 6:50 ` [edk2-test][RFC] Integrating SBBR tests into SCT - A design proposal Sakar Arora
2019-01-07 20:13 ` Supreeth Venkatesh
2019-01-08 2:00 ` Jin, Eric
2019-01-11 12:22 ` Sakar Arora [this message]
2019-01-15 7:22 ` Jin, Eric
2019-01-16 17:03 ` Supreeth Venkatesh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DB7PR08MB3209EAC7D3BAE56858769628E0850@DB7PR08MB3209.eurprd08.prod.outlook.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox