> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-boun...@osuosl.org> On Behalf Of 
> Przemek Kitszel
>Sent: Monday, June 17, 2024 6:54 PM
> To: intel-wired-...@lists.osuosl.org
> Cc: Jiri Pirko <j...@resnulli.us>; Temerkhanov, Sergey 
> <sergey.temerkha...@intel.com>; net...@vger.kernel.org; Czapnik, Lukasz 
> <lukasz.czap...@intel.com>; Drewek, Wojciech <wojciech.dre...@intel.com>; 
> Nguyen, Anthony L <anthony.l.ngu...@intel.com>; Kitszel, Przemyslaw 
> <przemyslaw.kits...@intel.com>; Keller, Jacob E <jacob.e.kel...@intel.com>; 
> Jakub Kicinski <k...@kernel.org>
> Subject: [Intel-wired-lan] [PATCH iwl-next v1] ice: do not init struct 
> ice_adapter more times than needed
>
> Allocate and initialize struct ice_adapter object only once per physical card 
> instead of once per port. This is not a big deal by now, but we want to 
> extend this struct more and more in the near future. Our plans include PTP 
> stuff and a devlink instance representing whole-device/physical card.
>
> Transactions requiring to be sleep-able (like those doing user (here ice) 
> memory allocation) must be performed with an additional (on top of xarray) 
> mutex. Adding it here removes need to xa_lock() manually.
>
> Since this commit is a reimplementation of ice_adapter_get(), a rather new
> scoped_guard() wrapper for locking is used to simplify the logic.
>
> It's worth to mention that xa_insert() use gives us both slot reservation
> and checks if it is already filled, what simplifies code a tiny       bit.
>
> Reviewed-by: Wojciech Drewek <wojciech.dre...@intel.com>
> Signed-off-by: Przemek Kitszel <przemyslaw.kits...@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_adapter.c | 60 +++++++++-----------
>  1 file changed, 28 insertions(+), 32 deletions(-)
>

Tested-by: Pucha Himasekhar Reddy <himasekharx.reddy.pu...@intel.com> (A 
Contingent worker at Intel)

Reply via email to