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.

Merge tag 'staging-5.11-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging

Pull staging driver fixes from Greg KH:
"Here are some small staging driver fixes for 5.11-rc3. Nothing major,
just resolving some reported issues:

- cleanup some remaining mentions of the ION drivers that were
removed in 5.11-rc1

- comedi driver bugfix

- two error path memory leak fixes

All have been in linux-next for a while with no reported issues"

* tag 'staging-5.11-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
staging: ION: remove some references to CONFIG_ION
staging: mt7621-dma: Fix a resource leak in an error handling path
Staging: comedi: Return -EFAULT if copy_to_user() fails
staging: spmi: hisi-spmi-controller: Fix some error handling paths

+21 -29
+3 -1
drivers/staging/comedi/comedi_fops.c
··· 2987 2987 v32.chanlist_len = cmd->chanlist_len; 2988 2988 v32.data = ptr_to_compat(cmd->data); 2989 2989 v32.data_len = cmd->data_len; 2990 - return copy_to_user(cmd32, &v32, sizeof(v32)); 2990 + if (copy_to_user(cmd32, &v32, sizeof(v32))) 2991 + return -EFAULT; 2992 + return 0; 2991 2993 } 2992 2994 2993 2995 /* Handle 32-bit COMEDI_CMD ioctl. */
+15 -6
drivers/staging/hikey9xx/hisi-spmi-controller.c
··· 278 278 iores = platform_get_resource(pdev, IORESOURCE_MEM, 0); 279 279 if (!iores) { 280 280 dev_err(&pdev->dev, "can not get resource!\n"); 281 - return -EINVAL; 281 + ret = -EINVAL; 282 + goto err_put_controller; 282 283 } 283 284 284 285 spmi_controller->base = devm_ioremap(&pdev->dev, iores->start, 285 286 resource_size(iores)); 286 287 if (!spmi_controller->base) { 287 288 dev_err(&pdev->dev, "can not remap base addr!\n"); 288 - return -EADDRNOTAVAIL; 289 + ret = -EADDRNOTAVAIL; 290 + goto err_put_controller; 289 291 } 290 292 291 293 ret = of_property_read_u32(pdev->dev.of_node, "spmi-channel", 292 294 &spmi_controller->channel); 293 295 if (ret) { 294 296 dev_err(&pdev->dev, "can not get channel\n"); 295 - return -ENODEV; 297 + ret = -ENODEV; 298 + goto err_put_controller; 296 299 } 297 300 298 301 platform_set_drvdata(pdev, spmi_controller); ··· 312 309 ctrl->write_cmd = spmi_write_cmd; 313 310 314 311 ret = spmi_controller_add(ctrl); 315 - if (ret) 316 - dev_err(&pdev->dev, "spmi_add_controller failed with error %d!\n", ret); 312 + if (ret) { 313 + dev_err(&pdev->dev, "spmi_controller_add failed with error %d!\n", ret); 314 + goto err_put_controller; 315 + } 317 316 317 + return 0; 318 + 319 + err_put_controller: 320 + spmi_controller_put(ctrl); 318 321 return ret; 319 322 } 320 323 ··· 329 320 struct spmi_controller *ctrl = platform_get_drvdata(pdev); 330 321 331 322 spmi_controller_remove(ctrl); 332 - kfree(ctrl); 323 + spmi_controller_put(ctrl); 333 324 return 0; 334 325 } 335 326
-20
drivers/staging/media/atomisp/pci/atomisp_subdev.c
··· 1062 1062 .def = 0, 1063 1063 }; 1064 1064 1065 - #if 0 /* #ifdef CONFIG_ION */ 1066 - /* 1067 - * Control for ISP ion device fd 1068 - * 1069 - * userspace will open ion device and pass the fd to kernel. 1070 - * this fd will be used to map shared fd to buffer. 1071 - */ 1072 - /* V4L2_CID_ATOMISP_ION_DEVICE_FD is not defined */ 1073 - static const struct v4l2_ctrl_config ctrl_ion_dev_fd = { 1074 - .ops = &ctrl_ops, 1075 - .id = V4L2_CID_ATOMISP_ION_DEVICE_FD, 1076 - .type = V4L2_CTRL_TYPE_INTEGER, 1077 - .name = "Ion Device Fd", 1078 - .min = -1, 1079 - .max = 1024, 1080 - .step = 1, 1081 - .def = ION_FD_UNSET 1082 - }; 1083 - #endif 1084 - 1085 1065 static void atomisp_init_subdev_pipe(struct atomisp_sub_device *asd, 1086 1066 struct atomisp_video_pipe *pipe, enum v4l2_buf_type buf_type) 1087 1067 {
+3 -1
drivers/staging/mt7621-dma/mtk-hsdma.c
··· 712 712 ret = dma_async_device_register(dd); 713 713 if (ret) { 714 714 dev_err(&pdev->dev, "failed to register dma device\n"); 715 - return ret; 715 + goto err_uninit_hsdma; 716 716 } 717 717 718 718 ret = of_dma_controller_register(pdev->dev.of_node, ··· 728 728 729 729 err_unregister: 730 730 dma_async_device_unregister(dd); 731 + err_uninit_hsdma: 732 + mtk_hsdma_uninit(hsdma); 731 733 return ret; 732 734 } 733 735
-1
kernel/configs/android-recommended.config
··· 81 81 CONFIG_INPUT_MISC=y 82 82 CONFIG_INPUT_TABLET=y 83 83 CONFIG_INPUT_UINPUT=y 84 - CONFIG_ION=y 85 84 CONFIG_JOYSTICK_XPAD=y 86 85 CONFIG_JOYSTICK_XPAD_FF=y 87 86 CONFIG_JOYSTICK_XPAD_LEDS=y