[ Sasha's backport helper bot ] Hi, Summary of potential issues: ⚠️ Found matching upstream commit but patch is missing proper reference to it Found matching upstream commit: a9ea1a3d88b7947ce8cadb2afceee7a54872bbc5 Status in newer kernel trees: 6.13.y | Present (different SHA1: 5d2e65cbe53d) 6.12.y | Present (different SHA1: d2eac8b14ac6) 6.6.y | Present (different SHA1: 0b5e0445bc83) Note: The patch differs from the upstream commit: --- 1: a9ea1a3d88b79 ! 1: 459a9ebcbed5f media: uvcvideo: Fix crash during unbind if gpio unit is in use @@ Commit message Link: https://lore.kernel.org/r/20241106-uvc-crashrmmod-v6-1-fbf9781c6e83@xxxxxxxxxxxx Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx> + (cherry picked from commit a9ea1a3d88b7947ce8cadb2afceee7a54872bbc5) ## drivers/media/usb/uvc/uvc_driver.c ## @@ drivers/media/usb/uvc/uvc_driver.c: static int uvc_gpio_parse(struct uvc_device *dev) @@ drivers/media/usb/uvc/uvc_driver.c: static int uvc_gpio_parse(struct uvc_device return PTR_ERR_OR_ZERO(gpio_privacy); irq = gpiod_to_irq(gpio_privacy); - if (irq < 0) -- return dev_err_probe(&dev->udev->dev, irq, +- if (irq < 0) { +- if (irq != EPROBE_DEFER) +- dev_err(&dev->udev->dev, +- "No IRQ for privacy GPIO (%d)\n", irq); +- return irq; +- } ++ if (irq < 0) + return dev_err_probe(&dev->intf->dev, irq, - "No IRQ for privacy GPIO\n"); ++ "No IRQ for privacy GPIO\n"); - unit = uvc_alloc_new_entity(dev, UVC_EXT_GPIO_UNIT, + unit = uvc_alloc_entity(UVC_EXT_GPIO_UNIT, UVC_EXT_GPIO_UNIT_ID, 0, 1); + if (!unit) @@ drivers/media/usb/uvc/uvc_driver.c: static int uvc_gpio_parse(struct uvc_device *dev) static int uvc_gpio_init_irq(struct uvc_device *dev) { --- Results of testing on various branches: | Branch | Patch Apply | Build Test | |---------------------------|-------------|------------| | stable/linux-6.1.y | Success | Success |