Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(driver/modern_bpf,test/drivers): fixed drivers_test on ppc64le #1739

Merged
merged 5 commits into from
Apr 23, 2024

Conversation

FedeDP
Copy link
Contributor

@FedeDP FedeDP commented Mar 8, 2024

What type of PR is this?

/kind bug

Any specific area of the project related to this PR?

/area driver-modern-bpf
/area tests

Does this PR require a change in the driver versions?

What this PR does / why we need it:

This PR tries to address multiple drivers_test failures on ppc64le.
Remaining failures (for modern bpf):

[  FAILED  ] 12 tests, listed below:
[  FAILED  ] SyscallExit.clone3X_child
[  FAILED  ] SyscallExit.clone3X_child_clone_parent_flag
[  FAILED  ] SyscallExit.clone3X_child_new_namespace_from_child
[  FAILED  ] SyscallExit.cloneX_child
[  FAILED  ] SyscallExit.creatX_success
[  FAILED  ] SyscallExit.forkX_child
[  FAILED  ] SyscallExit.getrlimitX_success
[  FAILED  ] SyscallExit.openX_success
[  FAILED  ] SyscallExit.openatX_success
[  FAILED  ] SyscallExit.openatX_create_success
[  FAILED  ] SyscallExit.prlimit64X_success
[  FAILED  ] SyscallExit.socketcall_sendmsgX_fail
  • Clone + fork related tests fail because of page faults
  • creatX_success, openX_success, openatX_success, openatX_create_success fail because of some weird thing happening while encoding/decoding dev parameter:
Expected equality of these values:
 *(T*)(m_event_params[m_current_param].valptr)
   Which is: 29
 param
   Which is: 37
Expected equality of these values:
  size
    Which is: 80
  expected_size
    Which is: 40

Huge thanks to @Andreagit97 for helping me debugging these weird issues!

Which issue(s) this PR fixes:

Fixes #

Special notes for your reviewer:

Does this PR introduce a user-facing change?:

NONE

@FedeDP
Copy link
Contributor Author

FedeDP commented Mar 8, 2024

Old bpf situation:

[  FAILED  ] 11 tests, listed below:
[  FAILED  ] SyscallExit.clone3X_child
[  FAILED  ] SyscallExit.clone3X_child_clone_parent_flag
[  FAILED  ] SyscallExit.clone3X_child_new_namespace_from_child
[  FAILED  ] SyscallExit.cloneX_child
[  FAILED  ] SyscallExit.creatX_success
[  FAILED  ] SyscallExit.forkX_child
[  FAILED  ] SyscallExit.getrlimitX_success
[  FAILED  ] SyscallExit.openX_success
[  FAILED  ] SyscallExit.openatX_success
[  FAILED  ] SyscallExit.openatX_create_success
[  FAILED  ] SyscallExit.prlimit64X_success

Same except for SyscallExit.socketcall_sendmsgX_fail that is skipped on bpf and kmod.

@FedeDP
Copy link
Contributor Author

FedeDP commented Mar 8, 2024

Kmod failures:

[  FAILED  ] 11 tests, listed below:
[  FAILED  ] SyscallExit.clone3X_child
[  FAILED  ] SyscallExit.clone3X_child_clone_parent_flag
[  FAILED  ] SyscallExit.clone3X_child_new_namespace_from_child
[  FAILED  ] SyscallExit.cloneX_child
[  FAILED  ] SyscallExit.creatX_success
[  FAILED  ] SyscallExit.forkX_child
[  FAILED  ] SyscallExit.getrlimitX_success
[  FAILED  ] SyscallExit.openX_success
[  FAILED  ] SyscallExit.openatX_success
[  FAILED  ] SyscallExit.openatX_create_success
[  FAILED  ] SyscallExit.prlimit64X_success

@FedeDP
Copy link
Contributor Author

FedeDP commented Mar 11, 2024

After #1737 got merged, we are now at:

[  FAILED  ] 11 tests, listed below:
[  FAILED  ] SyscallExit.clone3X_child
[  FAILED  ] SyscallExit.clone3X_child_clone_parent_flag
[  FAILED  ] SyscallExit.clone3X_child_new_namespace_from_child
[  FAILED  ] SyscallExit.cloneX_child
[  FAILED  ] SyscallExit.creatX_success
[  FAILED  ] SyscallExit.forkX_child
[  FAILED  ] SyscallExit.openX_success
[  FAILED  ] SyscallExit.openatX_success
[  FAILED  ] SyscallExit.openatX_create_success
[  FAILED  ] SyscallExit.sendmsgX_fail
[  FAILED  ] SyscallExit.socketcall_sendmsgX_fail

Last 2 fails with same reason:

Expected equality of these values:
  size
    Which is: 80
  expected_size
    Which is: 40

only on modern BPF (only driver that does not skips checking parameters).

@FedeDP
Copy link
Contributor Author

FedeDP commented Mar 12, 2024

Fixed socketcall and sendmsg tests; remaining:

[  FAILED  ] 9 tests, listed below:
[  FAILED  ] SyscallExit.clone3X_child
[  FAILED  ] SyscallExit.clone3X_child_clone_parent_flag
[  FAILED  ] SyscallExit.clone3X_child_new_namespace_from_child
[  FAILED  ] SyscallExit.cloneX_child
[  FAILED  ] SyscallExit.creatX_success
[  FAILED  ] SyscallExit.forkX_child
[  FAILED  ] SyscallExit.openX_success
[  FAILED  ] SyscallExit.openatX_success
[  FAILED  ] SyscallExit.openatX_create_success

@FedeDP
Copy link
Contributor Author

FedeDP commented Apr 2, 2024

Rebased on top of master.

@FedeDP
Copy link
Contributor Author

FedeDP commented Apr 18, 2024

/milestone next-driver

@FedeDP
Copy link
Contributor Author

FedeDP commented Apr 19, 2024

Fixed all the open related tests; see #1805 for the encountered issue.
Remaining failures:

[  FAILED  ] 5 tests, listed below:
[  FAILED  ] SyscallExit.clone3X_child
[  FAILED  ] SyscallExit.clone3X_child_clone_parent_flag
[  FAILED  ] SyscallExit.clone3X_child_new_namespace_from_child
[  FAILED  ] SyscallExit.cloneX_child
[  FAILED  ] SyscallExit.forkX_child

@FedeDP
Copy link
Contributor Author

FedeDP commented Apr 19, 2024

Fixed all tests 🚀

@FedeDP FedeDP changed the title wip: fix(driver/modern_bpf): fixed missing_definitions for ppc64le fix(driver/modern_bpf): fixed drivers_test on ppc64le Apr 19, 2024
@FedeDP FedeDP changed the title fix(driver/modern_bpf): fixed drivers_test on ppc64le fix(driver/modern_bpf,test/drivers): fixed drivers_test on ppc64le Apr 19, 2024
Andreagit97
Andreagit97 previously approved these changes Apr 19, 2024
Copy link
Member

@Andreagit97 Andreagit97 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/approve

@FedeDP
Copy link
Contributor Author

FedeDP commented Apr 19, 2024

/milestone 7.1.0+driver

@poiana poiana modified the milestones: next-driver, 7.1.0+driver Apr 19, 2024
@FedeDP
Copy link
Contributor Author

FedeDP commented Apr 19, 2024

Drivers CI Build / test-drivers-arm64 😇 (bundled_deps) (pull_request) Failing after 8m

Broken because of ports.ubuntu.com unreachable:

Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::16). - connect (101: Network is unreachable) Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::19). - connect (101: Network is unreachable) [IP: 185.125.190.39 80]

FedeDP and others added 5 commits April 22, 2024 17:50
Signed-off-by: Federico Di Pierro <nierro92@gmail.com>
…l` tests.

Signed-off-by: Federico Di Pierro <nierro92@gmail.com>
Refs #1805

Signed-off-by: Federico Di Pierro <nierro92@gmail.com>

Co-authored-by: Andrea Terzolo <andreaterzolo3@gmail.com>
…ests.

Signed-off-by: Federico Di Pierro <nierro92@gmail.com>
… ppc64, where a pagefault happens.

Signed-off-by: Federico Di Pierro <nierro92@gmail.com>

Co-authored-by: Andrea Terzolo <andreaterzolo3@gmail.com>
@FedeDP
Copy link
Contributor Author

FedeDP commented Apr 22, 2024

Rebased on top of master to fix conflicts.

Copy link
Member

@Andreagit97 Andreagit97 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/approve

@poiana
Copy link
Contributor

poiana commented Apr 23, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: Andreagit97, FedeDP, LucaGuerra

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:
  • OWNERS [Andreagit97,FedeDP,LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@poiana poiana merged commit 3793b10 into master Apr 23, 2024
45 of 48 checks passed
@poiana poiana deleted the fix/ppc64le branch April 23, 2024 09:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants