[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <51cc24cb-13d7-7352-db25-bb5f10baa830@linux.dev>
Date: Tue, 15 Aug 2023 19:25:12 +0100
From: Vadim Fedorenko <vadim.fedorenko@...ux.dev>
To: Jakub Kicinski <kuba@...nel.org>
Cc: Jiri Pirko <jiri@...nulli.us>,
Arkadiusz Kubalewski <arkadiusz.kubalewski@...el.com>,
Jonathan Lemon <jonathan.lemon@...il.com>, Paolo Abeni <pabeni@...hat.com>,
Milena Olech <milena.olech@...el.com>,
Michal Michalik <michal.michalik@...el.com>,
linux-arm-kernel@...ts.infradead.org, poros@...hat.com, mschmidt@...hat.com,
netdev@...r.kernel.org, linux-clk@...r.kernel.org,
Bart Van Assche <bvanassche@....org>, intel-wired-lan@...ts.osuosl.org,
Jiri Pirko <jiri@...dia.com>
Subject: Re: [PATCH net-next v4 4/9] dpll: netlink: Add DPLL framework base
functions
On 15/08/2023 17:55, Jakub Kicinski wrote:
> On Tue, 15 Aug 2023 16:18:16 +0100 Vadim Fedorenko wrote:
>> On 15/08/2023 04:24, Jakub Kicinski wrote:
>>> On Fri, 11 Aug 2023 21:03:35 +0100 Vadim Fedorenko wrote:
>>>> + xa_for_each(&pin->dpll_refs, i, ref) {
>>>> + const struct dpll_pin_ops *ops = dpll_pin_ops(ref);
>>>> + struct dpll_device *dpll = ref->dpll;
>>>> +
>>>> + if (!ops->frequency_set)
>>>> + return -EOPNOTSUPP;
>>>> + ret = ops->frequency_set(pin, dpll_pin_on_dpll_priv(dpll, pin),
>>>> + dpll, dpll_priv(dpll), freq, extack);
>>>> + if (ret)
>>>> + return ret;
>>>> + __dpll_pin_change_ntf(pin);
>>>> + }
>>>
>>> only one freq is reported in get, AFAICT, so why send a notification
>>> after each ref is updated?
>>
>> The pin can be technically connected to several DPLLs and app may watch
>> for the specific DPLL messages only. We would like to inform all users
>> on any DPLL which has this pin connected to.
>
> How does this end up looking in the notifications?
> __dpll_pin_change_ntf() only takes the pin object, from a quick read
> it seems like it will generate the same notification multiple times.
Oops... yeah, will move the notification outside of the loop.
Powered by blists - more mailing lists