]> git.droids-corp.org - dpdk.git/commitdiff
common/sfc_efx/base: add missing handler for 1-byte fields
authorIvan Malov <ivan.malov@oktetlabs.ru>
Thu, 17 Feb 2022 22:25:08 +0000 (01:25 +0300)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 18 Feb 2022 15:22:25 +0000 (16:22 +0100)
One may set RECIRC_ID in a MAE action rule specification.
This field is not a network one, and its handling goes
to the code snippet which does not recognise field
sizes other than 4 bytes. Add the missing handler.

Fixes: 3a73dcfdb255 ("common/sfc_efx/base: match on recirc ID in action rules")
Cc: stable@dpdk.org
Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
Reviewed-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Reviewed-by: Andy Moreton <amoreton@xilinx.com>
drivers/common/sfc_efx/base/efx_mae.c

index 7d48b5787eab57fd6dc2675fd92db86ca7825fa2..31f51b5548d016aa487c8c124982fb2d44b883da 100644 (file)
@@ -1027,6 +1027,10 @@ efx_mae_match_spec_field_set(
                        memcpy(mvp + descp->emmd_value_offset,
                            &dword, sizeof (dword));
                        break;
+               case 1:
+                       memcpy(mvp + descp->emmd_value_offset,
+                           value, 1);
+                       break;
                default:
                        EFSYS_ASSERT(B_FALSE);
                }
@@ -1039,6 +1043,10 @@ efx_mae_match_spec_field_set(
                        memcpy(mvp + descp->emmd_mask_offset,
                            &dword, sizeof (dword));
                        break;
+               case 1:
+                       memcpy(mvp + descp->emmd_mask_offset,
+                           mask, 1);
+                       break;
                default:
                        EFSYS_ASSERT(B_FALSE);
                }