Hashing Enhancements for Efficient RoCE Traffic Distribution#2144
Hashing Enhancements for Efficient RoCE Traffic Distribution#2144tjchadaga merged 1 commit intoopencomputeproject:masterfrom
Conversation
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
|
||
| /** No field - for compatibility, must be last */ | ||
| SAI_NATIVE_HASH_FIELD_NONE = 0x00000021, | ||
| SAI_NATIVE_HASH_FIELD_NONE = 0x00000023, |
There was a problem hiding this comment.
this is not backward compatible change and you are adding exception for that, please remove
There was a problem hiding this comment.
Modified this based on comment on Line No:178. This might change in future even with new hash-field additions.
Can we deprecate this enum definition and start adding new fields after this.? will add a comment saying not a valid field used only for backward compatibility
There was a problem hiding this comment.
bring it back to expected value and remove exception in ancestry, NONE is none, no mather what value it has binary
There was a problem hiding this comment.
@kcudnik, @sathk-marvell - this field is still causing meta checker to fail. Please check
| next if $enumName eq "SAI_OBJECT_TYPE_MAX"; | ||
| next if $enumName eq "SAI_PORT_INTERFACE_TYPE_MAX"; | ||
| next if $enumName eq "SAI_PORT_BREAKOUT_MODE_TYPE_MAX"; | ||
| next if $enumName eq "SAI_NATIVE_HASH_FIELD_NONE"; |
There was a problem hiding this comment.
adding exception is not backward compatible, please revert
There was a problem hiding this comment.
For modules with last attribute != XXX_END, we need this. tried all combinations, meta always failing
There was a problem hiding this comment.
This only applies to attributes enum, previously last enum was flow lubelskie and it was passing, please remote those exceptions as semestr like the error maybe in diferent place
8f628fb to
25122d8
Compare
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
@vmittal-msft - FYI |
|
@JaiOCP - could you please help review? |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
e739d0d to
9f5fc22
Compare
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
@kcudnik - could you please help check why the meta checker is failing for this? |
you need to squash your commits, and force push again, since you changed NONE field and shifted enum values |
|
@kcudnik still seeing the same issue. Can i add below diff.. builder@sonic-skarra:~/SAI$ git diff
@@ -209,6 +210,7 @@ sub BuildCommitHistory
|
| /** Native hash field RDMA packet BTH(Base Transport Header) opcode */ | ||
| SAI_NATIVE_HASH_FIELD_RDMA_BTH_OPCODE = 0x00000022, | ||
|
|
||
| /** Native hash field RDMA packet BTH destination queue pair */ | ||
| SAI_NATIVE_HASH_FIELD_RDMA_BTH_DEST_QP = 0x00000023, | ||
|
|
There was a problem hiding this comment.
why is this set to 0x22 & 0x23? are enum values 0x19, 0x1a, 0x1b .. 0x20 not usable?
There was a problem hiding this comment.
placed after NONE only. these values are already in use, but not in order
/**
* @brief Native hash field destination IPv6
*
* Also, refers to the outer source IPv6
* in case for encapsulated packets
*/
SAI_NATIVE_HASH_FIELD_DST_IPV6 = 0x0000001c,
/** Native hash field inner source IPv4 */
SAI_NATIVE_HASH_FIELD_INNER_SRC_IPV4 = 0x0000001d,
/** Native hash field inner destination IPv4 */
SAI_NATIVE_HASH_FIELD_INNER_DST_IPV4 = 0x0000001e,
/** Native hash field inner source IPv6 */
SAI_NATIVE_HASH_FIELD_INNER_SRC_IPV6 = 0x0000001f,
/** Native hash field inner destination IPv6 */
SAI_NATIVE_HASH_FIELD_INNER_DST_IPV6 = 0x00000020,
|
is your change rebased to top of masteR ? |
yes |
9f5fc22 to
8a99a47
Compare
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
all passed now :) |
|
|
||
| - Queue Pair (QP) Number | ||
| - RDMA opcode(Operation type) | ||
|
|
There was a problem hiding this comment.
It is in addition to the option to use it via UDF ?
There was a problem hiding this comment.
Yes, this will allow the users to use native H/w support
| next if $enumName eq "SAI_OBJECT_TYPE_MAX"; | ||
| next if $enumName eq "SAI_PORT_INTERFACE_TYPE_MAX"; | ||
| next if $enumName eq "SAI_PORT_BREAKOUT_MODE_TYPE_MAX"; | ||
| next if $enumName eq "SAI_NATIVE_HASH_FIELD_NONE"; |
There was a problem hiding this comment.
This only applies to attributes enum, previously last enum was flow lubelskie and it was passing, please remote those exceptions as semestr like the error maybe in diferent place
|
seeing below errors when i remove that line: |
|
did you rebased your PR to SAI master ? |
|
you should squash your changes and rebase to SAI/master, then this error will go away |
|
@sathk-marvell - could you please resolve conflicts? |
e6d7876 to
035a3a1
Compare
Done |
tried that.
|
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
there is a limitation in validator, which is not able to handle enums added in the middle of the enum, please put your enums after NONE, and it will PASS, and remove those exceptions |
|
i will try to fix this issue |
|
@sathk-marvell i fixed it here: #2157, please remove exceptions from ancestry, and you can now put your flags before NONE field, enjoy |
Signed-off-by: Satheesh Kumar Karra <skarra@marvell.com>
035a3a1 to
bcb98fa
Compare
Update the review now, Thanks a lot @kcudnik for all your timely help |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
This Feature adds New Hash fields to support hashing based on RDMA fields