]> www.infradead.org Git - users/jedix/linux-maple.git/commit
media: b2c2: flexcop-usb: fix flexcop_usb_memory_req
authorHans Verkuil <hverkuil-cisco@xs4all.nl>
Thu, 20 Jun 2024 07:52:26 +0000 (09:52 +0200)
committerHans Verkuil <hverkuil-cisco@xs4all.nl>
Mon, 24 Jun 2024 09:05:07 +0000 (11:05 +0200)
commitb178aa6f333b07bda0548d7e45085660a112414d
tree8f84975966fc634e56193559edede3a38d9209cb
parente1bda64a5865113727869fe0303c8d07d004869f
media: b2c2: flexcop-usb: fix flexcop_usb_memory_req

smatch generated this warning:

drivers/media/usb/b2c2/flexcop-usb.c:199 flexcop_usb_memory_req() warn: iterator 'i' not incremented

and indeed the function is not using i or updating buf.

The reason this always worked is that this function is called to write just
6 bytes (a MAC address) to the USB device, and so in practice there is only
a single chunk written. If we ever would need to write more than one chunk,
this function would fail since each chunk would read from or write to the
same buf address.

Rewrite the function to properly handle this.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
drivers/media/usb/b2c2/flexcop-usb.c