If you publish the code to a branch, and show exactly the errors you get, I
could try to look at it.

Alex

On Thu, 20 May 2021 at 22:29, Alexander Kanavin <[email protected]>
wrote:

> You cannot hardcode the ip address like that; it's set dynamically when
> qemu starts, and you can only access it from selftest or runtime test.
>
> Alex
>
> On Thu, 20 May 2021 at 12:06, Vinay Kumar <[email protected]> wrote:
>
>> Hi Alex,
>>
>> Tried your suggestions to copy and run in rust.py without any issue as
>> below.
>> ===============================
>> builddir = get_bb_var("B", "rust-testsuite")
>> ssh = SSHControl(ip=qemu.ip, logfile=qemu.sshlog, user="root",
>> timeout=600)
>> ssh.copy_to(builddir + "/" +
>> "build/x86_64-unknown-linux-gnu/stage2-tools-bin/remote-test-server","~/")
>> t_thread = threading.Thread(target=ssh.run,
>> args=("~/remote-test-server -v remote",))
>> t_thread.start()
>> ===============================
>>
>> If we set "TEST_DEVICE_ADDR" in rust.py through "runCmd" as shown
>> below,  the remote-test-client does not connect  to the image.
>> So a lot of tests fail.
>> ===============================
>> "cmd  = "export TEST_DEVICE_ADDR=%s:12345;" % qemu.ip"
>> runCmd(cmd)
>> bitbake("{} -c check".format(recipe))
>> ===============================
>>
>> Also, I tried to move do_check content to rust.py without any success.
>> ===============================
>> cmd = "export PATH=%s/../recipe-sysroot-native/usr/lib/rustlib/:" %
>> builddir
>> cmd= cmd + "%s/../recipe-sysroot-native/usr/bin:$PATH;" % builddir
>> cmd = cmd + "export
>> RUST_TARGET_PATH=%s/../recipe-sysroot-native/usr/lib/rustlib/;" %
>> builddir
>> cmd = cmd + "cd " + builddir + ";"
>> cmd  = "export TEST_DEVICE_ADDR=\"%s:12345\";" % qemu.ip
>> cmd = cmd + "python3 src/bootstrap/bootstrap.py -j 40 --verbose test
>> --no-fail-fast --bless --target aarch64-poky-linux > summary.txt 2>&1"
>>
>> Error:
>> File
>> "/ala-lpggp31/vinay/review-2/poky-contrib/meta/lib/oeqa/utils/commands.py",
>> line 210, in runCmd
>> raise AssertionError("Command '%s' returned non-zero exit status
>> %d:\n%s" % (command, result.status, exc_output))
>> AssertionError: Command 'export
>> TEST_DEVICE_ADDR="192.168.7.2:12345";python3
>> src/bootstrap/bootstrap.py -j 40 --verbose test --no-fail-fast --bless
>> --target aarch64-poky-linux > summary.txt 2>&1' returned non-zero exit
>> status 2:
>> ===============================
>>
>> So in rust.py only copy and execution of "remote-test-server" is taken
>> care of.
>> And the test execution is by  do_check of rust-testsuite.inc as below,
>> ===============================
>> do_check () {
>>     export TEST_DEVICE_ADDR="192.168.7.2:12345"
>>     rust_runx test --no-fail-fast --bless --target "${TARGET_SYS}" >
>> summary.txt 2> /dev/null
>> }
>>
>> Let me know if this ok. will send patches with changes for review.
>>
>> Regards,
>> Vinay
>>
>> On Mon, May 17, 2021 at 8:57 PM Vinay Kumar via lists.openembedded.org
>> <[email protected]> wrote:
>> >
>> > Hi Alex,
>> >
>> > Tried testing outside oe-selftest framework, it works fine without any
>> errors,
>> >
>> > export TEST_DEVICE_ADDR="192.168.7.4:12345"
>> > rust_runx test --no-fail-fast --bless --target "aarch64-poky-linux" >
>> > summary.txt 2> /dev/null
>> >
>> > Also, log (summary.txt) shows "remote-test-client" is connecting to
>> > the image without any issue.
>> > =======================================
>> > running:
>> "/ala-lpggp31/vinay/review-2/b1/tmp/work/cortexa57-poky-linux/rust-testsuite/1.46.0-r0/rustc-1.46.0-src/build/x86_64-unknown-linux-gnu/stage0-tools-bin/remote-test-client"
>> > "spawn-emulator" "aarch64-poky-linux"
>> >
>> "/ala-lpggp31/vinay/review-2/b1/tmp/work/cortexa57-poky-linux/rust-testsuite/1.46.0-r0/rustc-1.46.0-src/build/x86_64-unknown-linux-gnu/stage0-tools-bin/remote-test-server"
>> >
>> "/ala-lpggp31/vinay/review-2/b1/tmp/work/cortexa57-poky-linux/rust-testsuite/1.46.0-r0/rustc-1.46.0-src/build/tmp"
>> > Connecting to remote device 192.168.7.4:12345 ...
>> >
>> > Will integrate these changes in oe-selftest and let you know.
>> >
>> > Regards,
>> > Vinay
>> >
>> > On Mon, May 17, 2021 at 8:11 PM Vinay Kumar <[email protected]>
>> wrote:
>> > >
>> > > Checking suggestions, the booted image with tap seems to be working by
>> > > passing "-monitor  telnet:127.0.0.1:1234,server,nowait"
>> > > so I will execute testing and update you.
>> > > ==========================
>> > > root@qemuarm64:~# ifconfig
>> > > eth0      Link encap:Ethernet  HWaddr 52:54:00:12:34:02
>> > >           inet addr:192.168.7.4  Bcast:192.168.7.255
>> Mask:255.255.255.0
>> > >           inet6 addr: fe80::5054:ff:fe12:3402/64 Scope:Link
>> > >           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
>> > >           RX packets:116 errors:0 dropped:0 overruns:0 frame:0
>> > >           TX packets:98 errors:0 dropped:0 overruns:0 carrier:0
>> > >           collisions:0 txqueuelen:1000
>> > >           RX bytes:945121 (922.9 KiB)  TX bytes:9529 (9.3 KiB)
>> > >
>> > > root@qemuarm64:~# ./remote-test-server -v remote
>> > > starting test server
>> > > listening on 0.0.0.0:12345!
>> > > ==========================
>> > >
>> > > Regards,
>> > > Vinay
>> > >
>> > > On Mon, May 17, 2021 at 8:02 PM Alexander Kanavin
>> > > <[email protected]> wrote:
>> > > >
>> > > > Thanks, can you please look into the error? The line where it
>> happens and the way to get a backtrace is right there :)
>> > > > There's no reason it shouldn't work.
>> > > >
>> > > > Alex
>> > > >
>> > > > On Mon, 17 May 2021 at 15:21, Vinay Kumar <[email protected]>
>> wrote:
>> > > >>
>> > > >> Hi Alex,
>> > > >>
>> > > >> Error on qemu  image (ex. Aarch64) booted with tap interface.
>> > > >> ===========================
>> > > >> root@qemuarm64:~# ./remote-test-server
>> > > >> starting test server
>> > > >> thread 'main' panicked at 'TcpListener::bind(bind_addr) failed with
>> > > >> Cannot assign requested address (os error 99)',
>> > > >> src/tools/remote-test-server/src/main.rs:90:20
>> > > >> note: run with `RUST_BACKTRACE=1` environment variable to display
>> a backtrace
>> > > >> ===========================
>> > > >>
>> > > >> On Mon, May 17, 2021 at 5:16 PM Alexander Kanavin
>> > > >> <[email protected]> wrote:
>> > > >> >
>> > > >> > On Mon, 17 May 2021 at 13:34, Vinay Kumar <
>> [email protected]> wrote:
>> > > >> >>
>> > > >> >> "remote-test-server" on qemu-image with a tap interface throws
>> an error.
>> > > >> >> The emulators for rust testing are with tcp port forwarding so
>> used
>> > > >> >> slirp method with added rust port.
>> > > >> >
>> > > >> >
>> > > >> > I'm not sure I understand - what kind of error? In both cases
>> the server starts listening on a port, so in slirp scenario the address is
>> 127.0.0.1:12345 (prone to breakage if something else on the build host
>> took that port btw, including another instance of the same test), in tap it
>> would be 192.168.7.2:12345. For the client you simply supply that via
>> TEST_DEVICE_ADDR. No?
>> > > >> >
>> > > >> > Alex
>> >
>> > 
>> >
>>
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#152077): 
https://lists.openembedded.org/g/openembedded-core/message/152077
Mute This Topic: https://lists.openembedded.org/mt/82883381/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to