Re: [PATCH v3 11/12] usb: misc: usbsevseg: update to use usb_control_msg_send()
From: Johan Hovold <johan@kernel.org>
Date: 2021-01-27 16:47:10
Also in:
lkml
On Wed, Jan 27, 2021 at 12:10:30AM +0530, Anant Thazhemadam wrote:
quoted hunk ↗ jump to hunk
The newer usb_control_msg_{send|recv}() API are an improvement on the existing usb_control_msg() as it ensures that a short read/write is treated as an error, data can be used off the stack, and raw usb pipes need not be created in the calling functions. For this reason, instances of usb_control_msg() have been replaced with usb_control_msg_send() appropriately. Signed-off-by: Anant Thazhemadam <redacted> --- drivers/usb/misc/usbsevseg.c | 60 ++++++++++-------------------------- 1 file changed, 17 insertions(+), 43 deletions(-)diff --git a/drivers/usb/misc/usbsevseg.c b/drivers/usb/misc/usbsevseg.c
quoted hunk ↗ jump to hunk
@@ -99,15 +94,10 @@ static void update_display_mode(struct usb_sevsegdev *mydev) if(mydev->shadow_power != 1) return; - rc = usb_control_msg(mydev->udev, - usb_sndctrlpipe(mydev->udev, 0), - 0x12, - 0x48, - (82 * 0x100) + 10, /* (set mode) */ - (mydev->mode_msb * 0x100) + mydev->mode_lsb, - NULL, - 0, - 2000); + rc = usb_control_msg_send(mydev->udev, 0, 0x12, 0x48, + (82 * 0x100) + 10, /* (set mode) */ + (mydev->mode_msb * 0x100) + mydev->mode_lsb, + NULL, 0, 2000, GFP_KERNEL); if (rc < 0) dev_dbg(&mydev->udev->dev, "mode retval = %d\n", rc);
This function is called from resume() and reset_resume() where GFP_NOIO should be used (and is used for update_display_visual()) so I think you need to add a GFP flag argument here too. Looks good otherwise. Johan