action #161969
closedos-autoinst ustreamer tests fail on s390x (big-endian) size:S
Description
Observation¶
I'm just getting around to updating Fedora's os-autoinst package, which includes the patches from Marek to add ustreamer support. The tests for this are passing on all other arches but failing on s390x, which is currently our only big-endian arch. They fail like this:
2: # Subtest: frame parsing - ustreamer
2: ok 1 - detected invalid data
2: not ok 2 - current screen available to read for JPEG frame
2:
2: # Failed test 'current screen available to read for JPEG frame'
2: # at t/26-video_stream.t line 171.
2: 1..2
2: # Looks like you failed 1 test of 2.
2: not ok 3 - frame parsing - ustreamer
all other subtests pass. The failure indicates that $console->current_screen();
(on line 170) does not give an image at all.
The fact that this is failing on s390x, and I can see the ustreamer code doing stuff like pack("D", $clock);
and unpack("QLx4QQIIa4ICCxxI", $ustreamer_map);
, makes me suspect very strongly that this is an endianness issue, but I'm not sure I care enough to figure it out myself, not being likely to do anything with ustreamer on s390x in anger. I'll probably just patch this subtest out on s390x, one way or another.
Suggestions¶
- Maybe this will just be solved by https://github.com/os-autoinst/os-autoinst/pull/2500
Updated by AdamWill 5 months ago
It looks like it also fails on i686, though differently:
2: # Subtest: frame parsing - ustreamer
2: ok 1 - detected invalid data
2: Writing directly to a memory mapped file is not recommended at /builddir/build/BUILD/os-autoinst-664655866ebd886b2bb9163bcec0ca6b371cccc7/consoles/video_stream.pm line 286.
2: ok 2 - current screen available to read for JPEG frame
2: not ok 3 - received correct JPEG frame
2:
2: # Failed test 'received correct JPEG frame'
2: # at t/26-video_stream.t line 172.
2: # got: '0'
2: # expected: '1000000'
2: Writing directly to a memory mapped file is not recommended at /builddir/build/BUILD/os-autoinst-664655866ebd886b2bb9163bcec0ca6b371cccc7/consoles/video_stream.pm line 286.
2: ok 4 - current screen available to read for UYVY frame
2: not ok 5 - received correct UYVY frame
2:
2: # Failed test 'received correct UYVY frame'
2: # at t/26-video_stream.t line 182.
2: # got: '23.5829221867076'
2: # expected: '1000000'
2: 1..5
2: # Looks like you failed 2 tests of 5.
2: not ok 3 - frame parsing - ustreamer
2:
2: # Failed test 'frame parsing - ustreamer'
Updated by AdamWill 5 months ago
Sent https://github.com/os-autoinst/os-autoinst/pull/2500 to just disable ustreamer functionality and tests outside of x86_64 and aarch64.
Updated by okurz 5 months ago ยท Edited
- Due date set to 2024-06-25
- Status changed from New to Feedback
- Assignee set to okurz
Handled in https://github.com/os-autoinst/os-autoinst/pull/2500 by AdamWill
Updated by okurz 5 months ago
- Due date deleted (
2024-06-25) - Status changed from Feedback to Resolved
https://github.com/os-autoinst/os-autoinst/pull/2500 merged. As AdamWill was both the PR submitter as well as the reporter I assume that fixes the problem sufficiently or AdamWill will follow-up with a PR themselves :)