Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

iowarrior: use normal memory in write path

There is just no point in using coherent memory.

Signed-off-by: Oliver Neukum <oneukum@suse.com>
Link: https://patch.msgid.link/20260312095328.1594015-1-oneukum@suse.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Oliver Neukum and committed by
Greg Kroah-Hartman
849fbecd bcbdfc7f

+3 -7
+3 -7
drivers/usb/misc/iowarrior.c
··· 233 233 "nonzero write bulk status received: %d\n", status); 234 234 } 235 235 /* free up our allocated buffer */ 236 - usb_free_coherent(urb->dev, urb->transfer_buffer_length, 237 - urb->transfer_buffer, urb->transfer_dma); 236 + kfree(urb->transfer_buffer); 238 237 /* tell a waiting writer the interrupt-out-pipe is available again */ 239 238 atomic_dec(&dev->write_busy); 240 239 wake_up_interruptible(&dev->write_wait); ··· 438 439 retval = -ENOMEM; 439 440 goto error_no_urb; 440 441 } 441 - buf = usb_alloc_coherent(dev->udev, dev->report_size, 442 - GFP_KERNEL, &int_out_urb->transfer_dma); 442 + buf = kmalloc(dev->report_size, GFP_KERNEL); 443 443 if (!buf) { 444 444 retval = -ENOMEM; 445 445 dev_dbg(&dev->interface->dev, ··· 451 453 buf, dev->report_size, 452 454 iowarrior_write_callback, dev, 453 455 dev->int_out_endpoint->bInterval); 454 - int_out_urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP; 455 456 if (copy_from_user(buf, user_buffer, count)) { 456 457 retval = -EFAULT; 457 458 goto error; ··· 476 479 goto exit; 477 480 } 478 481 error: 479 - usb_free_coherent(dev->udev, dev->report_size, buf, 480 - int_out_urb->transfer_dma); 482 + kfree(buf); 481 483 error_no_buffer: 482 484 usb_free_urb(int_out_urb); 483 485 error_no_urb: