Messages in this thread | | | Date | Fri, 29 Sep 2023 10:28:34 -0700 | From | Kees Cook <> | Subject | Re: [PATCH][next] media: usb: siano: Fix undefined behavior bug in struct smsusb_urb_t |
| |
On Fri, Sep 29, 2023 at 05:42:11PM +0200, Gustavo A. R. Silva wrote: > `struct urb` is a flexible structure, which means that it contains a > flexible-array member at the bottom. This could potentially lead to an > overwrite of the object `wq` at run-time with the contents of `urb`. > > Fix this by placing object `urb` at the end of `struct smsusb_urb_t`. > > Fixes: dd47fbd40e6e ("[media] smsusb: don't sleep while atomic") > Cc: stable@vger.kernel.org > Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
As Jann pointed out, it's unlikely there is a function bug here, but I still think it's right to make sure this is robust and clears the way for -Wflex-array-member-not-at-end.
Reviewed-by: Kees Cook <keescook@chromium.org>
-- Kees Cook
| |