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

[xcvrd] Fix CMIS application selection to allow an app whose host lane count is less than the actual value #507

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

ishidawataru
Copy link

Description

get_cmis_application_desired() was choosing an app that matches both speed and host_lane_count of the port.
This PR relaxes the constraint so that an app whose required host lane count is less than the actual value can be selected.

Motivation and Context

fixes sonic-net/sonic-buildimage#19336

How Has This Been Tested?

No E2E done yet. UT is added.

Additional Information (Optional)

#500 needs to be merged before this PR.

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
This commit fixes DPB support with CMIS transceivers.

CmisManagerTask's `port_dict` must be updated according to the port add/remove events.
This commit removes the `port_mapping` field from CmisManagerTask as
`port_mapping` was mostly used just for storing `asic_id` information
and that can be simply done by `port_dict` instead.

Added a helper method `get_asic_id()` method to CmisManagerTask for
getting `asic_id` from `logical_port`.

fixes sonic-net/sonic-buildimage#18893

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
…he actual value

Signed-off-by: Wataru Ishida <wataru.ishid@gmail.com>
Copy link
Collaborator

@prgeor prgeor left a comment

Choose a reason for hiding this comment

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

@ishidawataru I don't understand the constraint when you say Xcvrd is selecting the application based upon number of host lane count and speed. It should be like that. Why you think otherwise?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants