From 79c098a9d91a034246daa764d09bc90ae81d90ac Mon Sep 17 00:00:00 2001 From: Armando Visconti Date: Thu, 3 Jul 2025 16:51:27 +0200 Subject: [PATCH] drivers/sensors: st: fix Null pointer dereferences Fix Null pointer dereferences in lis2dux12_read_status_cb() and lsm6dsv16x_read_status_cb(). Fixes: CID 529873 Fixes: CID 529862 Signed-off-by: Armando Visconti --- drivers/sensor/st/lis2dux12/lis2dux12_rtio_stream.c | 5 +++-- drivers/sensor/st/lsm6dsv16x/lsm6dsv16x_rtio_stream.c | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/sensor/st/lis2dux12/lis2dux12_rtio_stream.c b/drivers/sensor/st/lis2dux12/lis2dux12_rtio_stream.c index f38e5774e3f..b9111356574 100644 --- a/drivers/sensor/st/lis2dux12/lis2dux12_rtio_stream.c +++ b/drivers/sensor/st/lis2dux12/lis2dux12_rtio_stream.c @@ -363,8 +363,9 @@ static void lis2dux12_read_status_cb(struct rtio *r, const struct rtio_sqe *sqe, return; } - if (data_ready->opt == SENSOR_STREAM_DATA_NOP || - data_ready->opt == SENSOR_STREAM_DATA_DROP) { + if (data_ready != NULL && + (data_ready->opt == SENSOR_STREAM_DATA_NOP || + data_ready->opt == SENSOR_STREAM_DATA_DROP)) { uint8_t *buf; uint32_t buf_len; diff --git a/drivers/sensor/st/lsm6dsv16x/lsm6dsv16x_rtio_stream.c b/drivers/sensor/st/lsm6dsv16x/lsm6dsv16x_rtio_stream.c index d6a4837fdb4..e14286663f5 100644 --- a/drivers/sensor/st/lsm6dsv16x/lsm6dsv16x_rtio_stream.c +++ b/drivers/sensor/st/lsm6dsv16x/lsm6dsv16x_rtio_stream.c @@ -573,8 +573,9 @@ static void lsm6dsv16x_read_status_cb(struct rtio *r, const struct rtio_sqe *sqe return; } - if (data_ready->opt == SENSOR_STREAM_DATA_NOP || - data_ready->opt == SENSOR_STREAM_DATA_DROP) { + if (data_ready != NULL && + (data_ready->opt == SENSOR_STREAM_DATA_NOP || + data_ready->opt == SENSOR_STREAM_DATA_DROP)) { uint8_t *buf; uint32_t buf_len;