[prev in list] [next in list] [prev in thread] [next in thread]
List: openembedded-core
Subject: Re: [OE-core] [PATCH v14] Rust Oe-Selftest implementation
From: "Sundeep KOKKONDA via lists.openembedded.org" <sundeep.kokkonda=windriver.com () li
Date: 2023-05-31 6:49:52
Message-ID: CH2PR11MB4470880E838BBC66386FA2A489489 () CH2PR11MB4470 ! namprd11 ! prod ! outlook ! com
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
Hello Richard,
We've (re)tested and reviewed the results of this patch on our local setup =
and those are "PASSED".
We will discuss further with Randy and get back to community.
Thanks,
Sundeep K.
________________________________
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Sent: 30 May 2023 19:29
To: Yash Shinde <yashinde145@gmail.com>; openembedded-core@lists.openembedd=
ed.org <openembedded-core@lists.openembedded.org>
Cc: MacLeod, Randy <Randy.MacLeod@windriver.com>; Kallapa, Umesh <Umesh.Kal=
lapa@windriver.com>; Gowda, Naveen <Naveen.Gowda@windriver.com>; Kokkonda, =
Sundeep <Sundeep.Kokkonda@windriver.com>; Moodalappa, Shivaprasad <Shivapra=
sad.Moodalappa@windriver.com>; Shinde, Yash <Yash.Shinde@windriver.com>
Subject: Re: [PATCH v14] Rust Oe-Selftest implementation
CAUTION: This email comes from a non Wind River email account!
Do not click links or open attachments unless you recognize the sender and =
know the content is safe.
On Tue, 2023-05-30 at 16:21 +0530, Yash Shinde wrote:
> The patch implements Rust testing framework similar to other selftest,
> specifically the gcc selftest in OE. It uses the client and server
> based method to test the binaries for cross-target on the image.
> The test framework is a wrapper around the Rust build system as ./x.py
> test. It tests many functionalities of Rust distribution like tools,
> documentation, libraries, packages, tools, Cargo, Crater etc.
> Please refer the following link for detailed description of Rust
> testing:-
> https://rustc-dev-guide.rust-lang.org/tests/intro.html#tool-tests
>
> To support the rust tests in oe-core, the following functions were
> added:-
> setup_cargo_environment(): Build bootstrap and some early stage tools.
> do_rust_setup_snapshot(): Install the snapshot version of rust binaries.
> do_configure(): To generate config.toml
> do_compile(): To build "remote-test-server" for qemu target image.
>
> Approximate Number of Tests Run in the Rust Testsuite :- 18000
> Approximate Number of Tests that FAIL in bitbake environment :- 100-150
> Normally majority of the testcases are present in major folder "test/"
> It contributes to more than 80% of the testcases present in Rust test
> framework. These tests pass as expected on any Rust versions without
> much fuss. The tests that fail are of less important and contribute to
> less than 2% of the total testcases. These minor tests are observed to
> work on some versions and fail on others. They have to be added, ignored
> or excluded for different versions as per the behavior.
> These tests have been ignored or excluded in the Rust selftest
> environment to generate success of completing the testsuite.
>
> These tests work in parallel mode even in the skipped test mode as
> expected. Although the patch to disable tests is large, it is very simple
> in that it only disables tests. When updating to a newer version of Rust,
> the patch can usually be ported in a day.
>
> Tested for X86, X86-64, ARM, ARM64 and MIPS64 on CentOS release 6.10
>
> Signed-off-by: pgowda <pgowda.cve@gmail.com>
> Signed-off-by: Vinay Kumar <vinay.m.engg@gmail.com>
> Signed-off-by: Yash Shinde <yashinde145@gmail.com>
> ---
> meta/lib/oeqa/selftest/cases/rust.py | 86 +
> .../rust/files/rust-oe-selftest.patch | 2120 +++++++++++++++++
> meta/recipes-devtools/rust/rust-source.inc | 1 +
> meta/recipes-devtools/rust/rust_1.69.0.bb | 7 +
> 4 files changed, 2214 insertions(+)
> create mode 100644 meta/lib/oeqa/selftest/cases/rust.py
> create mode 100644 meta/recipes-devtools/rust/files/rust-oe-selftest.pat=
ch
I did put this into a build for testing on the autobuilder. It hasn't
been running long and I can already see build failures such as:
https://autobuilder.yoctoproject.org/typhoon/#/builders/103/builds/6077
https://autobuilder.yoctoproject.org/typhoon/#/builders/45/builds/7200
https://autobuilder.yoctoproject.org/typhoon/#/builders/40/builds/7190
https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/2923
https://autobuilder.yoctoproject.org/typhoon/#/builders/37/builds/7200
https://autobuilder.yoctoproject.org/typhoon/#/builders/48/builds/7217
https://autobuilder.yoctoproject.org/typhoon/#/builders/104/builds/6080
https://autobuilder.yoctoproject.org/typhoon/#/builders/76/builds/7146
https://autobuilder.yoctoproject.org/typhoon/#/builders/61/builds/7184
and there will likely be more.
I'm finding this rather frustrating and am not sure how this was
tested.
Cheers,
Richard
[Attachment #5 (text/html)]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} \
</style> </head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);" class="elementToProof"> Hello Richard,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);" class="elementToProof"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);" class="elementToProof"> We've (re)tested and reviewed the \
results of this patch on our local setup and those are "PASSED".</div> <div \
style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: \
rgb(0, 0, 0);" class="elementToProof"> We will discuss further with Randy and get \
back to community.</div> <div style="font-family: Calibri, Arial, Helvetica, \
sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);" class="elementToProof"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);" class="elementToProof"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);" class="elementToProof"> Thanks,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);" class="elementToProof"> Sundeep K.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);" class="elementToProof"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);" class="elementToProof"> <br>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size: \
11pt; color: rgb(0, 0, 0);"><b>From:</b> Richard Purdie \
<richard.purdie@linuxfoundation.org><br> <b>Sent:</b> 30 May 2023 19:29<br>
<b>To:</b> Yash Shinde <yashinde145@gmail.com>; \
openembedded-core@lists.openembedded.org \
<openembedded-core@lists.openembedded.org><br> <b>Cc:</b> MacLeod, Randy \
<Randy.MacLeod@windriver.com>; Kallapa, Umesh \
<Umesh.Kallapa@windriver.com>; Gowda, Naveen \
<Naveen.Gowda@windriver.com>; Kokkonda, Sundeep \
<Sundeep.Kokkonda@windriver.com>; Moodalappa, Shivaprasad \
<Shivaprasad.Moodalappa@windriver.com>; Shinde, Yash \
<Yash.Shinde@windriver.com><br> <b>Subject:</b> Re: [PATCH v14] Rust \
Oe-Selftest implementation</font> <div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt">
<div class="PlainText">CAUTION: This email comes from a non Wind River email \
account!<br> Do not click links or open attachments unless you recognize the sender \
and know the content is safe.<br> <br>
On Tue, 2023-05-30 at 16:21 +0530, Yash Shinde wrote:<br>
> The patch implements Rust testing framework similar to other selftest,<br>
> specifically the gcc selftest in OE. It uses the client and server<br>
> based method to test the binaries for cross-target on the image.<br>
> The test framework is a wrapper around the Rust build system as ./x.py<br>
> test. It tests many functionalities of Rust distribution like tools,<br>
> documentation, libraries, packages, tools, Cargo, Crater etc.<br>
> Please refer the following link for detailed description of Rust<br>
> testing:-<br>
> <a href="https://rustc-dev-guide.rust-lang.org/tests/intro.html#tool-tests" \
data-auth="NotApplicable"> \
https://rustc-dev-guide.rust-lang.org/tests/intro.html#tool-tests</a><br> ><br>
> To support the rust tests in oe-core, the following functions were<br>
> added:-<br>
> setup_cargo_environment(): Build bootstrap and some early stage tools.<br>
> do_rust_setup_snapshot(): Install the snapshot version of rust binaries.<br>
> do_configure(): To generate config.toml<br>
> do_compile(): To build "remote-test-server" for qemu target image.<br>
><br>
> Approximate Number of Tests Run in the Rust Testsuite :- 18000<br>
> Approximate Number of Tests that FAIL in bitbake environment :- 100-150<br>
> Normally majority of the testcases are present in major folder \
"test/"<br> > It contributes to more than 80% of the testcases present \
in Rust test<br> > framework. These tests pass as expected on any Rust versions \
without<br> > much fuss. The tests that fail are of less important and contribute \
to<br> > less than 2% of the total testcases. These minor tests are observed \
to<br> > work on some versions and fail on others. They have to be added, \
ignored<br> > or excluded for different versions as per the behavior.<br>
> These tests have been ignored or excluded in the Rust selftest<br>
> environment to generate success of completing the testsuite.<br>
><br>
> These tests work in parallel mode even in the skipped test mode as<br>
> expected. Although the patch to disable tests is large, it is very simple<br>
> in that it only disables tests. When updating to a newer version of Rust,<br>
> the patch can usually be ported in a day.<br>
><br>
> Tested for X86, X86-64, ARM, ARM64 and MIPS64 on CentOS release 6.10<br>
><br>
> Signed-off-by: pgowda <pgowda.cve@gmail.com><br>
> Signed-off-by: Vinay Kumar <vinay.m.engg@gmail.com><br>
> Signed-off-by: Yash Shinde <yashinde145@gmail.com><br>
> ---<br>
> meta/lib/oeqa/selftest/cases/rust.py \
| 86 +<br> > \
.../rust/files/rust-oe-selftest.patch \
| 2120 +++++++++++++++++<br> > \
meta/recipes-devtools/rust/rust-source.inc | 1 \
+<br> > meta/recipes-devtools/rust/rust_1.69.0.bb \
| 7 +<br> > 4 files changed, 2214 insertions(+)<br>
> create mode 100644 meta/lib/oeqa/selftest/cases/rust.py<br>
> create mode 100644 \
meta/recipes-devtools/rust/files/rust-oe-selftest.patch<br> <br>
I did put this into a build for testing on the autobuilder. It hasn't<br>
been running long and I can already see build failures such as:<br>
<br>
<a href="https://autobuilder.yoctoproject.org/typhoon/#/builders/103/builds/6077" \
data-auth="NotApplicable">https://autobuilder.yoctoproject.org/typhoon/#/builders/103/builds/6077</a><br>
<a href="https://autobuilder.yoctoproject.org/typhoon/#/builders/45/builds/7200" \
data-auth="NotApplicable">https://autobuilder.yoctoproject.org/typhoon/#/builders/45/builds/7200</a><br>
<a href="https://autobuilder.yoctoproject.org/typhoon/#/builders/40/builds/7190" \
data-auth="NotApplicable">https://autobuilder.yoctoproject.org/typhoon/#/builders/40/builds/7190</a><br>
<a href="https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/2923" \
data-auth="NotApplicable">https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/2923</a><br>
<a href="https://autobuilder.yoctoproject.org/typhoon/#/builders/37/builds/7200" \
data-auth="NotApplicable">https://autobuilder.yoctoproject.org/typhoon/#/builders/37/builds/7200</a><br>
<a href="https://autobuilder.yoctoproject.org/typhoon/#/builders/48/builds/7217" \
data-auth="NotApplicable">https://autobuilder.yoctoproject.org/typhoon/#/builders/48/builds/7217</a><br>
<a href="https://autobuilder.yoctoproject.org/typhoon/#/builders/104/builds/6080" \
data-auth="NotApplicable">https://autobuilder.yoctoproject.org/typhoon/#/builders/104/builds/6080</a><br>
<a href="https://autobuilder.yoctoproject.org/typhoon/#/builders/76/builds/7146" \
data-auth="NotApplicable">https://autobuilder.yoctoproject.org/typhoon/#/builders/76/builds/7146</a><br>
<a href="https://autobuilder.yoctoproject.org/typhoon/#/builders/61/builds/7184" \
data-auth="NotApplicable">https://autobuilder.yoctoproject.org/typhoon/#/builders/61/builds/7184</a><br>
<br>
and there will likely be more.<br>
<br>
I'm finding this rather frustrating and am not sure how this was<br>
tested.<br>
<br>
Cheers,<br>
<br>
Richard<br>
</div>
</span></font></div>
</body>
</html>
["oe-selftest-results.log" (application/octet-stream)]
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#181995): https://lists.openembedded.org/g/openembedded-core/message/181995
Mute This Topic: https://lists.openembedded.org/mt/99216990/4454766
Group Owner: openembedded-core+owner@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [openembedded-core@marc.info]
-=-=-=-=-=-=-=-=-=-=-=-
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic