On Fri, Dec 15, 2023 at 02:55:59PM +0100, Francesco Dolcini wrote:
On Fri, Dec 15, 2023 at 02:36:31PM +0100, Johan Hovold wrote:
On Thu, Dec 14, 2023 at 06:01:46PM +0100, Francesco Dolcini wrote:
From: Francesco Dolcini francesco.dolcini@toradex.com
receive_buf() is called from ttyport_receive_buf() that expects values ">= 0" from serdev_controller_receive_buf(), change its return type from ssize_t to size_t.
-int gnss_insert_raw(struct gnss_device *gdev, const unsigned char *buf,
size_t count)
+size_t gnss_insert_raw(struct gnss_device *gdev, const unsigned char *buf,
size_t count)
{
- int ret;
- size_t ret;
ret = kfifo_in(&gdev->read_fifo, buf, count);
Why are you changing this function? This is part of the GNSS interface and has nothing to do with the rest of this patch.
good point, thanks for looking into that.
from my understanding kfifo_in() already return an unsigned, both __kfifo_in and __kfifo_in_r return unsigned.
Correct.
With that said this is used by 3 drivers:
= drivers/gnss/sirf.c: = drivers/gnss/serial.c:
The driver just use it into the actual receive_buf callback.
= drivers/gnss/usb.c
This driver does nothing with a negative return value (that is never the less not possible), it just check that the whole buffer was inserted.
That driver also knows it will never be negative.
And you forgot about
drivers/net/ethernet/intel/ice/ice_gnss.c
To me the change is correct, with that said probably this should have been explicitly mentioned in the commit message or a separate preparation patch.
It's a separate change and should not be hidden away in a tree-wide change that goes through a different maintainer.
Please drop this change from this patch and resubmit it separately to me if you want and I'll review when I have the time.
And when doing tree-wide changes, please try to follow the style of the driver you are changing (e.g. do not introduce inconsistencies by changing to open parenthesis alignment of continuation lines in code that do not use it).
Johan