> -----Original Message----- > From: Intel-wired-lan <[email protected]> On Behalf Of > Marcin Szycik > Sent: Thursday, April 9, 2026 5:00 AM > To: [email protected] > Cc: [email protected]; Penigalapati, Sandeep > <[email protected]>; S, Ananth <[email protected]>; > [email protected]; Marcin Szycik <[email protected]>; > Cao, > Chinh T <[email protected]>; Nguyen, Anthony L > <[email protected]>; Loktionov, Aleksandr > <[email protected]> > Subject: [Intel-wired-lan] [PATCH iwl-next v2 04/10] ice: create flow profile > > From: Real Valiquette <[email protected]> > > Implement the initial steps for creating an ACL filter to support ntuple > masks. Create a flow profile based on a given mask rule and program it to the > hardware. Though the profile is written to hardware, no actions are > associated with the profile yet. > > Co-developed-by: Chinh Cao <[email protected]> > Signed-off-by: Chinh Cao <[email protected]> > Signed-off-by: Real Valiquette <[email protected]> > Co-developed-by: Tony Nguyen <[email protected]> > Signed-off-by: Tony Nguyen <[email protected]> > Co-developed-by: Marcin Szycik <[email protected]> > Signed-off-by: Marcin Szycik <[email protected]> > Reviewed-by: Aleksandr Loktionov <[email protected]> > --- > v2: > * Add ice_acl_main.h in order to not awkwardly add prototypes to ice.h. > This will also help avoid potential dependency issues for future > additions to ice_acl_main.c > * Rename ice_acl_check_input_set() to a more fiting > ice_acl_prof_add_ethtool() as it adds a profile > * Set hw->acl_prof = 0 in ice_acl_prof_add_ethtool() to avoid use after > free > * Add ipv4 and port full mask defines in ice_ethtool_ntuple.c > * Move hw->acl_prof allocation to ice_init_acl(). Previously, it was > being deallocated when hw->acl_prof[fltr_type] allocation failed, > possibly with already existing other elements. Extend array lifetime > to driver's lifetime > * Change hw->acl_prof[fltr_type] alloc from devm_ to plain > * Add hw->acl_prof[fltr_type] and hw->acl_prof deallocation in > ice_deinit_acl() - previously were only deallocated on failure > * Tweak alloc/unroll logic in ice_acl_prof_add_ethtool() > --- > drivers/net/ethernet/intel/ice/Makefile | 1 + > drivers/net/ethernet/intel/ice/ice.h | 6 + > drivers/net/ethernet/intel/ice/ice_acl_main.h | 9 + > .../net/ethernet/intel/ice/ice_adminq_cmd.h | 39 +++ > drivers/net/ethernet/intel/ice/ice_flow.h | 17 + > drivers/net/ethernet/intel/ice/ice_acl_main.c | 229 ++++++++++++++ > .../ethernet/intel/ice/ice_ethtool_ntuple.c | 299 +++++++++++++----- > .../net/ethernet/intel/ice/ice_flex_pipe.c | 6 + > drivers/net/ethernet/intel/ice/ice_flow.c | 173 ++++++++++ > drivers/net/ethernet/intel/ice/ice_main.c | 33 +- > 10 files changed, 731 insertions(+), 81 deletions(-) create mode 100644 > drivers/net/ethernet/intel/ice/ice_acl_main.h > create mode 100644 drivers/net/ethernet/intel/ice/ice_acl_main.c
Tested-by: Alexander Nowlin <[email protected]>
