Re: [RFC PATCH 0/1] Sanity check buffer callback

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 12 Nov 2020 16:13:33 +0100
Nuno Sá <nuno.sa@xxxxxxxxxx> wrote:

> When going through the code of the buffer-cb interface and all it's
> users, I realized that the stm32_adfsdm driver is calling
> `iio_channel_get_all_cb()` with NULL for the cb. After going a bit
> trough the stm drivers, it looks like this is actually intentional.
> However, it is clear that we have a clear/direct route here for a NULL
> pointer dereference. I'm being lazy in this RFC and just doing a
> sanity check in the `iio_buffer_cb_store_to()` so that we don't have to
> change the stm driver... The point is just to bring this up and see if
> we want to do something about this.
> 
> To be clear, the way I think this should go is just to return -EINVAL in
> `iio_channel_get_all_cb()` if a NULL ptr is passed. Whats the point of a
> buffer-cb if cb is NULL, right? This would naturally break the stm
> driver, but I guess we could just define a dummy handler there that
> would not be used (or could the HW consumer be an option here?)...
> 
> Thoughts?

Good description thanks.  I think you are right and better option is
to return -EINVAL in iio_channel_get_all_cb() and add a dummy  handler to the
stm driver.

cc Arnaud and Olivier to see if they are fine with the dummy handler.
(with appropriate comment on why it is there).

Jonathan


> 
> Nuno Sá (1):
>   iio: buffer: Sanity check buffer callback
> 
>  drivers/iio/buffer/industrialio-buffer-cb.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 





[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux