ptp: ocp: Fix NULL dereference in Adva board SMA sysfs operations
authorSagi Maimon <sagi.maimon@adtran.com>
Tue, 29 Apr 2025 07:33:20 +0000 (10:33 +0300)
committerJakub Kicinski <kuba@kernel.org>
Thu, 1 May 2025 14:01:31 +0000 (07:01 -0700)
commite98386d79a23c57cf179fe4138322e277aa3aa74
treea3c95e406a98425a61d1de3dc99ae11416f3eeac
parentf920436a44295ca791ebb6dae3f4190142eec703
ptp: ocp: Fix NULL dereference in Adva board SMA sysfs operations

On Adva boards, SMA sysfs store/get operations can call
__handle_signal_outputs() or __handle_signal_inputs() while the `irig`
and `dcf` pointers are uninitialized, leading to a NULL pointer
dereference in __handle_signal() and causing a kernel crash. Adva boards
don't use `irig` or `dcf` functionality, so add Adva-specific callbacks
`ptp_ocp_sma_adva_set_outputs()` and `ptp_ocp_sma_adva_set_inputs()` that
avoid invoking `irig` or `dcf` input/output routines.

Fixes: ef61f5528fca ("ptp: ocp: add Adva timecard support")
Signed-off-by: Sagi Maimon <maimon.sagi@gmail.com>
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Link: https://patch.msgid.link/20250429073320.33277-1-maimon.sagi@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/ptp/ptp_ocp.c