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

geneve support in LNW.p4 #394

Merged
merged 20 commits into from
Feb 9, 2024
Merged

geneve support in LNW.p4 #394

merged 20 commits into from
Feb 9, 2024

Conversation

satish153
Copy link
Collaborator

@satish153 satish153 commented Jan 21, 2024

Adding geneve support in LNW.p4

Major changes:

Added mod tables for geneve
geneve_decap_mod_table
geneve_decap_and_push_vlan_mod_table
geneve_encap_mod_table
geneve_encap_vlan_pop_mod_table
geneve_encap_v6_mod_table
geneve_encap_v6_vlan_pop_mod_table

Modified the below tables to support geneve as an option
ipv4_tunnel_term_table
ipv6_tunnel_term_table
l2_fwd_tx_table
l2_fwd_tx_ipv6_table
rx_ipv4_tunnel_source_port
rx_ipv6_tunnel_source_port

P4 changes:
https://github.com/intel-innersource/networking.ethernet.acceleration.vswitch.p4-sde.dataplane-p4/pull/328
OVS changes
ipdk-io/ovs#106

Testing:
Plain and vlan overlay traffic between vms on same host and different hosts.
ECMP
Both vxlan and geneve tunnels on different bridges
Overlay and underlay ipv6

Copy link
Contributor

@ffoulkes ffoulkes left a comment

Choose a reason for hiding this comment

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

  1. These changes break the DPDK build. The most straightforward fix is probably to use #ifdef ES2K_TARGET conditionals to ensure that any ES2K-specific code added to common files is omitted when building for DPDK.
  2. You will need to run any files you modify through clang-format before pushing them.
  3. Please remember to specify the -s parameter when doing git commit, to ensure that your commits are signed. Failure to so so results in a DCO check error.

image

To find the problem areas, click on the Details link on the right-hand side of the entry for the failing check.

@ffoulkes
Copy link
Contributor

You need to check in an updated ovs submodule reference as part of your PR, to ensure that ovs-p4rt builds against the updated header file.

@ffoulkes
Copy link
Contributor

Rebased to trigger clang-format check.

@satish153 satish153 force-pushed the genenve_support branch 3 times, most recently from babbb7c to 6b7f07e Compare February 1, 2024 05:07
satish153 and others added 17 commits February 2, 2024 06:55
Signed-off-by: Satish Pitchikala <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Co-authored-by: Derek G Foster <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Co-authored-by: Derek G Foster <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Co-authored-by: Derek G Foster <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Co-authored-by: Derek G Foster <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.8 to 1.9.
- [Release notes](https://github.com/robinraju/release-downloader/releases)
- [Commits](robinraju/release-downloader@v1.8...v1.9)

---
updated-dependencies:
- dependency-name: robinraju/release-downloader
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Satish Pitchikala <[email protected]>
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 41 to 42.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](tj-actions/changed-files@v41...v42)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Satish Pitchikala <[email protected]>
- Rename lintdocs.yml to linters.yml.

- Move py_bandit_check and clang_format_check to linters.yml.

- Expand py_bandit_check to apply to all .py files.

Signed-off-by: Derek G Foster <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
* P4Runtime Client Changes

Signed-off-by: Kumar, Aashish <[email protected]>

* Addressing comments

Signed-off-by: Kumar, Aashish <[email protected]>

* Addressing comments

Signed-off-by: Kumar, Aashish <[email protected]>

---------

Signed-off-by: Kumar, Aashish <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Signed-off-by: Kumar, Aashish <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
Signed-off-by: Satish Pitchikala <[email protected]>
@satish153 satish153 requested a review from ffoulkes February 2, 2024 14:02
Signed-off-by: Satish Pitchikala <[email protected]>
Copy link
Contributor

@n-sandeep n-sandeep left a comment

Choose a reason for hiding this comment

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

Minor comments, everything else looks good to me.

@satish153
Copy link
Collaborator Author

  1. These changes break the DPDK build. The most straightforward fix is probably to use #ifdef ES2K_TARGET conditionals to ensure that any ES2K-specific code added to common files is omitted when building for DPDK.
  2. You will need to run any files you modify through clang-format before pushing them.
  3. Please remember to specify the -s parameter when doing git commit, to ensure that your commits are signed. Failure to so so results in a DCO check error.

image

To find the problem areas, click on the Details link on the right-hand side of the entry for the failing check.

All the checks are PASS now.

Copy link
Collaborator

@5abeel 5abeel left a comment

Choose a reason for hiding this comment

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

Minor comments and some suggestions for improvements (can be in future PR).

Logic LGTM

Copy link
Contributor

@nupuruttarwar nupuruttarwar left a comment

Choose a reason for hiding this comment

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

Minor suggestion. Logic LGTM

@satish153 satish153 dismissed ffoulkes’s stale review February 9, 2024 01:47

Changes requested are addressed and all the checks passed now.

@satish153 satish153 merged commit 2681b1f into main Feb 9, 2024
9 checks passed
@ffoulkes ffoulkes deleted the genenve_support branch March 13, 2024 20:00
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.

6 participants