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

Increase MAX_TAIL_CALL_CNT to 33 tail calls #2826

Merged
merged 15 commits into from
Sep 11, 2023

Conversation

shpalani
Copy link
Collaborator

@shpalani shpalani commented Sep 7, 2023

Description

  1. Increase MAX_TAIL_CALL_CNT from 32 to 33 tail calls. This max count does not include the top-level caller.
  2. Fix the internal processing of tail calls from 31 to 33.
  3. Changes made in test cases:
    3.1 ebpf_stress_tests_km.exe to process MAX_TAIL_CALL_CNT of 33.
    3.2 tail_call_sequential to process MAX_TAIL_CALL_CNT of 33.
    3.3 tail_call_recursive to process MAX_TAIL_CALL_CNT of 33.
  4. Added new test cases to test exceeding MAX_TAIL_CALL_CNT:
    4.1 tail_call_max_exceed ebpf program.
    4.2 tail_call_max_exceed.sys: Added native test case in api_test.exe.
    4.3 tail_call_max_exceed_um.dll: Added user-mode test case in libbpf_test.cpp
  5. Updated
    51. Product.wxs in installer
    52. deploy-ebpf.ps.
  6. Removed MAX_TAIL_CALL_CNT, which was exposed in bpf_helpers.h header file.

Testing

_Do any existing tests cover this change? Yes.
Are new tests needed? Yes

Documentation

_Is there any documentation impact for this change? Yes, for stress test doc.

Installation

_Is there any installer impact for this change? Yes

@shpalani shpalani changed the title [Draft] Increase MAX_TAIL_CALL_CNT to 33 tail calls Increase MAX_TAIL_CALL_CNT to 33 tail calls Sep 8, 2023
@shpalani shpalani linked an issue Sep 8, 2023 that may be closed by this pull request
tests/api_test/api_test.cpp Outdated Show resolved Hide resolved
tests/sample/tail_call_max_exceed.c Outdated Show resolved Hide resolved
tests/sample/tail_call_max_exceed.c Outdated Show resolved Hide resolved
tests/sample/tail_call_max_exceed.c Outdated Show resolved Hide resolved
tests/sample/tail_call_max_exceed.c Outdated Show resolved Hide resolved
tests/sample/tail_call_max_exceed.c Outdated Show resolved Hide resolved
tests/unit/libbpf_test.cpp Outdated Show resolved Hide resolved
tests/unit/libbpf_test.cpp Outdated Show resolved Hide resolved
tests/unit/libbpf_test.cpp Outdated Show resolved Hide resolved
tests/unit/libbpf_test.cpp Outdated Show resolved Hide resolved
include/bpf_helpers.h Outdated Show resolved Hide resolved
@shpalani shpalani added this pull request to the merge queue Sep 11, 2023
Merged via the queue into microsoft:main with commit 5cc488f Sep 11, 2023
67 checks passed
@shpalani shpalani deleted the shpalani/maxtailcallcnt branch September 11, 2023 17:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Increase MAX_TAIL_CALL_CNT from 32 to 33
4 participants