* Re: [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-27 23:21 [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported Rahul Rameshbabu
@ 2023-06-27 23:33 ` Nathan Chancellor
2023-06-28 1:16 ` Andrew Lunn
` (4 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: Nathan Chancellor @ 2023-06-27 23:33 UTC (permalink / raw)
To: Rahul Rameshbabu
Cc: netdev, Richard Cochran, Paolo Abeni, Jakub Kicinski,
Saeed Mahameed, Gal Pressman, David S. Miller, lkft-triage,
LTP List, Naresh Kamboju, Linux Kernel Functional Testing
On Tue, Jun 27, 2023 at 04:21:39PM -0700, Rahul Rameshbabu wrote:
> The .adjphase operation is an operation that is implemented only by certain
> PHCs. The sysfs device attribute node for querying the maximum phase
> adjustment supported should not be exposed on devices that do not support
> .adjphase.
>
> Fixes: c3b60ab7a4df ("ptp: Add .getmaxphase callback to ptp_clock_info")
> Signed-off-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>
> Reported-by: Nathan Chancellor <nathan@kernel.org>
> Reported-by: Naresh Kamboju <naresh.kamboju@linaro.org>
> Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>
> Link: https://lore.kernel.org/netdev/20230627162146.GA114473@dev-arch.thelio-3990X/
> Link: https://lore.kernel.org/all/CA+G9fYtKCZeAUTtwe69iK8Xcz1mOKQzwcy49wd+imZrfj6ifXA@mail.gmail.com/
Thanks a lot for the fix!
Tested-by: Nathan Chancellor <nathan@kernel.org>
> ---
> drivers/ptp/ptp_sysfs.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/ptp/ptp_sysfs.c b/drivers/ptp/ptp_sysfs.c
> index 77219cdcd683..6e4d5456a885 100644
> --- a/drivers/ptp/ptp_sysfs.c
> +++ b/drivers/ptp/ptp_sysfs.c
> @@ -358,6 +358,9 @@ static umode_t ptp_is_attribute_visible(struct kobject *kobj,
> attr == &dev_attr_max_vclocks.attr) {
> if (ptp->is_virtual_clock)
> mode = 0;
> + } else if (attr == &dev_attr_max_phase_adjustment.attr) {
> + if (!info->adjphase || !info->getmaxphase)
> + mode = 0;
> }
>
> return mode;
> --
> 2.40.1
>
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-27 23:21 [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported Rahul Rameshbabu
2023-06-27 23:33 ` Nathan Chancellor
@ 2023-06-28 1:16 ` Andrew Lunn
2023-06-28 2:22 ` Rahul Rameshbabu
2023-06-28 20:38 ` Jakub Kicinski
2023-06-29 18:06 ` Jakub Kicinski
` (3 subsequent siblings)
5 siblings, 2 replies; 12+ messages in thread
From: Andrew Lunn @ 2023-06-28 1:16 UTC (permalink / raw)
To: Rahul Rameshbabu
Cc: netdev, Richard Cochran, Paolo Abeni, Jakub Kicinski,
Saeed Mahameed, Gal Pressman, David S. Miller, lkft-triage,
LTP List, Nathan Chancellor, Naresh Kamboju,
Linux Kernel Functional Testing
On Tue, Jun 27, 2023 at 04:21:39PM -0700, Rahul Rameshbabu wrote:
> The .adjphase operation is an operation that is implemented only by certain
> PHCs. The sysfs device attribute node for querying the maximum phase
> adjustment supported should not be exposed on devices that do not support
> .adjphase.
>
> Fixes: c3b60ab7a4df ("ptp: Add .getmaxphase callback to ptp_clock_info")
> Signed-off-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>
> Reported-by: Nathan Chancellor <nathan@kernel.org>
> Reported-by: Naresh Kamboju <naresh.kamboju@linaro.org>
> Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>
> Link: https://lore.kernel.org/netdev/20230627162146.GA114473@dev-arch.thelio-3990X/
> Link: https://lore.kernel.org/all/CA+G9fYtKCZeAUTtwe69iK8Xcz1mOKQzwcy49wd+imZrfj6ifXA@mail.gmail.com/
I think Signed-off-by should be last.
> diff --git a/drivers/ptp/ptp_sysfs.c b/drivers/ptp/ptp_sysfs.c
> index 77219cdcd683..6e4d5456a885 100644
> --- a/drivers/ptp/ptp_sysfs.c
> +++ b/drivers/ptp/ptp_sysfs.c
> @@ -358,6 +358,9 @@ static umode_t ptp_is_attribute_visible(struct kobject *kobj,
> attr == &dev_attr_max_vclocks.attr) {
> if (ptp->is_virtual_clock)
> mode = 0;
> + } else if (attr == &dev_attr_max_phase_adjustment.attr) {
> + if (!info->adjphase || !info->getmaxphase)
> + mode = 0;
Maybe it is time to turn this into a switch statement?
I also wounder if this really is something for net. How do you think
this patch matches against the stable rules?
Andrew
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-28 1:16 ` Andrew Lunn
@ 2023-06-28 2:22 ` Rahul Rameshbabu
2023-06-28 20:38 ` Jakub Kicinski
1 sibling, 0 replies; 12+ messages in thread
From: Rahul Rameshbabu @ 2023-06-28 2:22 UTC (permalink / raw)
To: Andrew Lunn
Cc: netdev, Richard Cochran, Paolo Abeni, Jakub Kicinski,
Saeed Mahameed, Gal Pressman, David S. Miller, lkft-triage,
LTP List, Nathan Chancellor, Naresh Kamboju,
Linux Kernel Functional Testing
On Wed, 28 Jun, 2023 03:16:43 +0200 Andrew Lunn <andrew@lunn.ch> wrote:
> On Tue, Jun 27, 2023 at 04:21:39PM -0700, Rahul Rameshbabu wrote:
>> The .adjphase operation is an operation that is implemented only by certain
>> PHCs. The sysfs device attribute node for querying the maximum phase
>> adjustment supported should not be exposed on devices that do not support
>> .adjphase.
>>
>> Fixes: c3b60ab7a4df ("ptp: Add .getmaxphase callback to ptp_clock_info")
>> Signed-off-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>
>> Reported-by: Nathan Chancellor <nathan@kernel.org>
>> Reported-by: Naresh Kamboju <naresh.kamboju@linaro.org>
>> Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>
>> Link: https://lore.kernel.org/netdev/20230627162146.GA114473@dev-arch.thelio-3990X/
>> Link: https://lore.kernel.org/all/CA+G9fYtKCZeAUTtwe69iK8Xcz1mOKQzwcy49wd+imZrfj6ifXA@mail.gmail.com/
>
> I think Signed-off-by should be last.
I can agree with this. Follows the "real route" of the patch, reports
came in and then the patch was implemented and signed-off.
>
>> diff --git a/drivers/ptp/ptp_sysfs.c b/drivers/ptp/ptp_sysfs.c
>> index 77219cdcd683..6e4d5456a885 100644
>> --- a/drivers/ptp/ptp_sysfs.c
>> +++ b/drivers/ptp/ptp_sysfs.c
>> @@ -358,6 +358,9 @@ static umode_t ptp_is_attribute_visible(struct kobject *kobj,
>> attr == &dev_attr_max_vclocks.attr) {
>> if (ptp->is_virtual_clock)
>> mode = 0;
>> + } else if (attr == &dev_attr_max_phase_adjustment.attr) {
>> + if (!info->adjphase || !info->getmaxphase)
>> + mode = 0;
>
> Maybe it is time to turn this into a switch statement?
I agree. However, I do not want to conflate two separate things being a
bugfix and a cleanup. I think we can do one of two options.
1. We can take this patch as is, but I submit a subsequent cleanup patch for
this.
2. I can turn this into a two patch submission where the first patch
does the conversion.
I am a fan of the first option personally.
>
> I also wounder if this really is something for net. How do you think
> this patch matches against the stable rules?
Apologize in advance but not sure I am following along. The commit for
the patch the introduces the problematic logic has made its way to net
and this patch is a fix. Therefore, isn't net the right tree to target?
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=c3b60ab7a4dff6e6e608e685b70ddc3d6b2aca81
>
> Andrew
Thanks,
Rahul Rameshbabu
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-28 1:16 ` Andrew Lunn
2023-06-28 2:22 ` Rahul Rameshbabu
@ 2023-06-28 20:38 ` Jakub Kicinski
2023-06-28 20:46 ` Andrew Lunn
1 sibling, 1 reply; 12+ messages in thread
From: Jakub Kicinski @ 2023-06-28 20:38 UTC (permalink / raw)
To: Andrew Lunn
Cc: Rahul Rameshbabu, netdev, Richard Cochran, Paolo Abeni,
Saeed Mahameed, Gal Pressman, David S. Miller, lkft-triage,
LTP List, Nathan Chancellor, Naresh Kamboju,
Linux Kernel Functional Testing
On Wed, 28 Jun 2023 03:16:43 +0200 Andrew Lunn wrote:
> > + } else if (attr == &dev_attr_max_phase_adjustment.attr) {
> > + if (!info->adjphase || !info->getmaxphase)
> > + mode = 0;
>
> Maybe it is time to turn this into a switch statement?
I don't think we can switch on pointers in C.
The patch is good as is, right?
(The tree we'll pick appropriately when applying.)
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-28 20:38 ` Jakub Kicinski
@ 2023-06-28 20:46 ` Andrew Lunn
0 siblings, 0 replies; 12+ messages in thread
From: Andrew Lunn @ 2023-06-28 20:46 UTC (permalink / raw)
To: Jakub Kicinski
Cc: Rahul Rameshbabu, netdev, Richard Cochran, Paolo Abeni,
Saeed Mahameed, Gal Pressman, David S. Miller, lkft-triage,
LTP List, Nathan Chancellor, Naresh Kamboju,
Linux Kernel Functional Testing
On Wed, Jun 28, 2023 at 01:38:50PM -0700, Jakub Kicinski wrote:
> On Wed, 28 Jun 2023 03:16:43 +0200 Andrew Lunn wrote:
> > > + } else if (attr == &dev_attr_max_phase_adjustment.attr) {
> > > + if (!info->adjphase || !info->getmaxphase)
> > > + mode = 0;
> >
> > Maybe it is time to turn this into a switch statement?
>
> I don't think we can switch on pointers in C.
https://elixir.bootlin.com/linux/latest/source/drivers/net/phy/sfp.c#L749
Works for temperature sensors, voltage sensors, current sensors, and
power sensors. Maybe hwmon is different to what is going on here, but
both a sysfs files.
> The patch is good as is, right?
Yes.
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Andrew
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-27 23:21 [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported Rahul Rameshbabu
2023-06-27 23:33 ` Nathan Chancellor
2023-06-28 1:16 ` Andrew Lunn
@ 2023-06-29 18:06 ` Jakub Kicinski
2023-06-30 3:33 ` Richard Cochran
2023-06-30 3:32 ` Richard Cochran
` (2 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Jakub Kicinski @ 2023-06-29 18:06 UTC (permalink / raw)
To: Richard Cochran
Cc: Rahul Rameshbabu, netdev, Paolo Abeni, Saeed Mahameed,
Gal Pressman, David S. Miller, lkft-triage, LTP List,
Nathan Chancellor, Naresh Kamboju,
Linux Kernel Functional Testing
On Tue, 27 Jun 2023 16:21:39 -0700 Rahul Rameshbabu wrote:
> The .adjphase operation is an operation that is implemented only by certain
> PHCs. The sysfs device attribute node for querying the maximum phase
> adjustment supported should not be exposed on devices that do not support
> .adjphase.
Richard, ack?
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-29 18:06 ` Jakub Kicinski
@ 2023-06-30 3:33 ` Richard Cochran
0 siblings, 0 replies; 12+ messages in thread
From: Richard Cochran @ 2023-06-30 3:33 UTC (permalink / raw)
To: Jakub Kicinski
Cc: Rahul Rameshbabu, netdev, Paolo Abeni, Saeed Mahameed,
Gal Pressman, David S. Miller, lkft-triage, LTP List,
Nathan Chancellor, Naresh Kamboju,
Linux Kernel Functional Testing
On Thu, Jun 29, 2023 at 11:06:48AM -0700, Jakub Kicinski wrote:
> On Tue, 27 Jun 2023 16:21:39 -0700 Rahul Rameshbabu wrote:
> > The .adjphase operation is an operation that is implemented only by certain
> > PHCs. The sysfs device attribute node for querying the maximum phase
> > adjustment supported should not be exposed on devices that do not support
> > .adjphase.
>
> Richard, ack?
yes
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-27 23:21 [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported Rahul Rameshbabu
` (2 preceding siblings ...)
2023-06-29 18:06 ` Jakub Kicinski
@ 2023-06-30 3:32 ` Richard Cochran
2023-07-03 5:10 ` [LTP] " Petr Vorel
2023-07-03 20:40 ` patchwork-bot+netdevbpf
5 siblings, 0 replies; 12+ messages in thread
From: Richard Cochran @ 2023-06-30 3:32 UTC (permalink / raw)
To: Rahul Rameshbabu
Cc: netdev, Paolo Abeni, Jakub Kicinski, Saeed Mahameed, Gal Pressman,
David S. Miller, lkft-triage, LTP List, Nathan Chancellor,
Naresh Kamboju, Linux Kernel Functional Testing
On Tue, Jun 27, 2023 at 04:21:39PM -0700, Rahul Rameshbabu wrote:
> The .adjphase operation is an operation that is implemented only by certain
> PHCs. The sysfs device attribute node for querying the maximum phase
> adjustment supported should not be exposed on devices that do not support
> .adjphase.
>
> Fixes: c3b60ab7a4df ("ptp: Add .getmaxphase callback to ptp_clock_info")
> Signed-off-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>
> Reported-by: Nathan Chancellor <nathan@kernel.org>
> Reported-by: Naresh Kamboju <naresh.kamboju@linaro.org>
> Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>
> Link: https://lore.kernel.org/netdev/20230627162146.GA114473@dev-arch.thelio-3990X/
> Link: https://lore.kernel.org/all/CA+G9fYtKCZeAUTtwe69iK8Xcz1mOKQzwcy49wd+imZrfj6ifXA@mail.gmail.com/
Acked-by: Richard Cochran <richardcochran@gmail.com>
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [LTP] [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-27 23:21 [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported Rahul Rameshbabu
` (3 preceding siblings ...)
2023-06-30 3:32 ` Richard Cochran
@ 2023-07-03 5:10 ` Petr Vorel
2023-07-03 12:53 ` Cyril Hrubis
2023-07-03 20:40 ` patchwork-bot+netdevbpf
5 siblings, 1 reply; 12+ messages in thread
From: Petr Vorel @ 2023-07-03 5:10 UTC (permalink / raw)
To: Rahul Rameshbabu
Cc: netdev, Linux Kernel Functional Testing, Richard Cochran,
lkft-triage, Nathan Chancellor, Saeed Mahameed, Gal Pressman,
Jakub Kicinski, Paolo Abeni, David S. Miller, LTP List
Hi all,
> The .adjphase operation is an operation that is implemented only by certain
> PHCs. The sysfs device attribute node for querying the maximum phase
> adjustment supported should not be exposed on devices that do not support
> .adjphase.
Reviewed-by: Petr Vorel <pvorel@suse.cz>
I wonder why LTP was Cc'ed.
Kind regards,
Petr
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [LTP] [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-07-03 5:10 ` [LTP] " Petr Vorel
@ 2023-07-03 12:53 ` Cyril Hrubis
0 siblings, 0 replies; 12+ messages in thread
From: Cyril Hrubis @ 2023-07-03 12:53 UTC (permalink / raw)
To: Petr Vorel
Cc: Rahul Rameshbabu, Paolo Abeni, netdev, Richard Cochran,
lkft-triage, David S. Miller, Nathan Chancellor, Saeed Mahameed,
Jakub Kicinski, Linux Kernel Functional Testing, Gal Pressman,
LTP List
Hi!
> I wonder why LTP was Cc'ed.
Since the NULL dereference was found by the read_all LTP test.
--
Cyril Hrubis
chrubis@suse.cz
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
2023-06-27 23:21 [PATCH net v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported Rahul Rameshbabu
` (4 preceding siblings ...)
2023-07-03 5:10 ` [LTP] " Petr Vorel
@ 2023-07-03 20:40 ` patchwork-bot+netdevbpf
5 siblings, 0 replies; 12+ messages in thread
From: patchwork-bot+netdevbpf @ 2023-07-03 20:40 UTC (permalink / raw)
To: Rahul Rameshbabu
Cc: netdev, richardcochran, pabeni, kuba, saeed, gal, davem,
lkft-triage, ltp, nathan, naresh.kamboju, lkft
Hello:
This patch was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:
On Tue, 27 Jun 2023 16:21:39 -0700 you wrote:
> The .adjphase operation is an operation that is implemented only by certain
> PHCs. The sysfs device attribute node for querying the maximum phase
> adjustment supported should not be exposed on devices that do not support
> .adjphase.
>
> Fixes: c3b60ab7a4df ("ptp: Add .getmaxphase callback to ptp_clock_info")
> Signed-off-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>
> Reported-by: Nathan Chancellor <nathan@kernel.org>
> Reported-by: Naresh Kamboju <naresh.kamboju@linaro.org>
> Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>
> Link: https://lore.kernel.org/netdev/20230627162146.GA114473@dev-arch.thelio-3990X/
> Link: https://lore.kernel.org/all/CA+G9fYtKCZeAUTtwe69iK8Xcz1mOKQzwcy49wd+imZrfj6ifXA@mail.gmail.com/
>
> [...]
Here is the summary with links:
- [net,v1] ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported
https://git.kernel.org/netdev/net/c/2c5d234d7f55
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 12+ messages in thread