USB: make actual_length in struct urb field u32
actual_length should also be a u32 and not a signed value. This patch changes this field to be 'u32' to prevent any potential negative conversion and comparison errors. This triggered a few compiler warning messages when these fields were being used with the min macro, so they have also been fixed up in this patch. Cc: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Родитель
16e2e5f634
Коммит
8c209e6782
|
@ -1947,7 +1947,7 @@ static void ftdi_process_read(struct work_struct *work)
|
|||
priv->prev_status = new_status;
|
||||
}
|
||||
|
||||
length = min(PKTSZ, urb->actual_length-packet_offset)-2;
|
||||
length = min_t(u32, PKTSZ, urb->actual_length-packet_offset)-2;
|
||||
if (length < 0) {
|
||||
dev_err(&port->dev, "%s - bad packet length: %d\n",
|
||||
__func__, length+2);
|
||||
|
|
|
@ -1178,7 +1178,7 @@ struct urb {
|
|||
void *transfer_buffer; /* (in) associated data buffer */
|
||||
dma_addr_t transfer_dma; /* (in) dma addr for transfer_buffer */
|
||||
u32 transfer_buffer_length; /* (in) data buffer length */
|
||||
int actual_length; /* (return) actual transfer length */
|
||||
u32 actual_length; /* (return) actual transfer length */
|
||||
unsigned char *setup_packet; /* (in) setup packet (control only) */
|
||||
dma_addr_t setup_dma; /* (in) dma addr for setup_packet */
|
||||
int start_frame; /* (modify) start frame (ISO) */
|
||||
|
|
Загрузка…
Ссылка в новой задаче