[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <PH3PPF7A88A980A57770D04E34B234A86EAE59FA@PH3PPF7A88A980A.namprd11.prod.outlook.com>
Date: Fri, 30 Jan 2026 17:51:28 +0000
From: "Loktionov, Aleksandr" <aleksandr.loktionov@...el.com>
To: "Vecera, Ivan" <ivecera@...hat.com>, "netdev@...r.kernel.org"
<netdev@...r.kernel.org>
CC: "Lobakin, Aleksander" <aleksander.lobakin@...el.com>, Andrew Lunn
<andrew+netdev@...n.ch>, "Kubalewski, Arkadiusz"
<arkadiusz.kubalewski@...el.com>, "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, "Jiri
Pirko" <jiri@...nulli.us>, Jonathan Lemon <jonathan.lemon@...il.com>, "Leon
Romanovsky" <leon@...nel.org>, Mark Bloch <mbloch@...dia.com>, Paolo Abeni
<pabeni@...hat.com>, Prathosh Satish <Prathosh.Satish@...rochip.com>,
"Kitszel, Przemyslaw" <przemyslaw.kitszel@...el.com>, Richard Cochran
<richardcochran@...il.com>, Saeed Mahameed <saeedm@...dia.com>, Tariq Toukan
<tariqt@...dia.com>, "Nguyen, Anthony L" <anthony.l.nguyen@...el.com>, "Vadim
Fedorenko" <vadim.fedorenko@...ux.dev>, "intel-wired-lan@...ts.osuosl.org"
<intel-wired-lan@...ts.osuosl.org>, "linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>, "linux-rdma@...r.kernel.org"
<linux-rdma@...r.kernel.org>
Subject: RE: [Intel-wired-lan] [PATCH net-next v3 6/9] dpll: Enhance and
consolidate reference counting logic
> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@...osl.org> On Behalf
> Of Ivan Vecera
> Sent: Friday, January 30, 2026 5:54 PM
> To: netdev@...r.kernel.org
> Cc: Lobakin, Aleksander <aleksander.lobakin@...el.com>; Andrew Lunn
> <andrew+netdev@...n.ch>; Kubalewski, Arkadiusz
> <arkadiusz.kubalewski@...el.com>; David S. Miller
> <davem@...emloft.net>; Eric Dumazet <edumazet@...gle.com>; Jakub
> Kicinski <kuba@...nel.org>; Jiri Pirko <jiri@...nulli.us>; Jonathan
> Lemon <jonathan.lemon@...il.com>; Leon Romanovsky <leon@...nel.org>;
> Mark Bloch <mbloch@...dia.com>; Paolo Abeni <pabeni@...hat.com>;
> Prathosh Satish <Prathosh.Satish@...rochip.com>; Kitszel, Przemyslaw
> <przemyslaw.kitszel@...el.com>; Richard Cochran
> <richardcochran@...il.com>; Saeed Mahameed <saeedm@...dia.com>; Tariq
> Toukan <tariqt@...dia.com>; Nguyen, Anthony L
> <anthony.l.nguyen@...el.com>; Vadim Fedorenko
> <vadim.fedorenko@...ux.dev>; intel-wired-lan@...ts.osuosl.org; linux-
> kernel@...r.kernel.org; linux-rdma@...r.kernel.org
> Subject: [Intel-wired-lan] [PATCH net-next v3 6/9] dpll: Enhance and
> consolidate reference counting logic
>
> Refactor the reference counting mechanism for DPLL devices and pins to
> improve consistency and prevent potential lifetime issues.
>
> Introduce internal helpers __dpll_{device,pin}_{hold,put}() to
> centralize reference management.
>
> Update the internal XArray reference helpers (dpll_xa_ref_*) to
> automatically grab a reference to the target object when it is added
> to a list, and release it when removed. This ensures that objects
> linked internally (e.g., pins referenced by parent pins) are properly
> kept alive without relying on the caller to manually manage the count.
>
> Consequently, remove the now redundant manual `refcount_inc/dec` calls
> in dpll_pin_on_pin_{,un}register()`, as ownership is now correctly
> handled by the dpll_xa_ref_* functions.
>
> Additionally, ensure that dpll_device_{,un}register()` takes/releases
> a reference to the device, ensuring the device object remains valid
> for the duration of its registration.
>
> Signed-off-by: Ivan Vecera <ivecera@...hat.com>
> ---
> drivers/dpll/dpll_core.c | 74 +++++++++++++++++++++++++++------------
> -
> 1 file changed, 50 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/dpll/dpll_core.c b/drivers/dpll/dpll_core.c index
> b91f4dc6bb972..33333bc2f0cc8 100644
> --- a/drivers/dpll/dpll_core.c
> +++ b/drivers/dpll/dpll_core.c
> @@ -83,6 +83,45 @@ void dpll_pin_notify(struct dpll_pin *pin, unsigned
> long action)
...
> --
> 2.52.0
Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov@...el.com>
Powered by blists - more mailing lists