Hi Bryan, kernel test robot noticed the following build warnings: url: https://github.com/intel-lab-lkp/linux/commits/Bryan-O-Donoghue/media-i2c-add-OV02E10-image-sensor-driver/20250317-084316 base: f2151613e040973c868d28c8b00885dfab69eb75 patch link: https://lore.kernel.org/r/20250317-b4-media-comitters-next-25-03-13-ov02e10-v1-1-bd924634b889%40linaro.org patch subject: [PATCH 1/8] media: i2c: add OV02E10 image sensor driver config: openrisc-randconfig-r073-20250321 (https://download.01.org/0day-ci/archive/20250322/202503220055.pt1r9P7M-lkp@xxxxxxxxx/config) compiler: or1k-linux-gcc (GCC) 11.5.0 If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> | Closes: https://lore.kernel.org/r/202503220055.pt1r9P7M-lkp@xxxxxxxxx/ smatch warnings: drivers/media/i2c/ov02e10.c:903 ov02e10_probe() warn: missing unwind goto? vim +903 drivers/media/i2c/ov02e10.c 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 862 static int ov02e10_probe(struct i2c_client *client) 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 863 { 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 864 struct ov02e10 *ov02e; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 865 int ret; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 866 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 867 /* Check HW config */ 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 868 ret = ov02e10_check_hwcfg(&client->dev); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 869 if (ret) 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 870 return ret; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 871 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 872 ov02e = devm_kzalloc(&client->dev, sizeof(*ov02e), GFP_KERNEL); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 873 if (!ov02e) 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 874 return -ENOMEM; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 875 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 876 /* Initialize subdev */ 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 877 ov02e->regmap = devm_cci_regmap_init_i2c(client, 8); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 878 if (IS_ERR(ov02e->regmap)) 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 879 return PTR_ERR(ov02e->regmap); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 880 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 881 v4l2_i2c_subdev_init(&ov02e->sd, client, &ov02e10_subdev_ops); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 882 ov02e10_get_pm_resources(&client->dev); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 883 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 884 ret = ov02e10_power_on(&client->dev); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 885 if (ret) { 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 886 dev_err_probe(&client->dev, ret, "failed to power on\n"); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 887 goto error_power_off; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 888 } 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 889 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 890 /* Check module identity */ 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 891 ret = ov02e10_identify_module(ov02e); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 892 if (ret) { 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 893 dev_err(&client->dev, "failed to find sensor: %d\n", ret); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 894 goto error_power_off; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 895 } 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 896 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 897 /* Set default mode to max resolution */ 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 898 ov02e->cur_mode = &supported_modes[0]; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 899 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 900 dev_dbg(&client->dev, "will Init controls\n"); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 901 ret = ov02e10_init_controls(ov02e); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 902 if (ret) 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 @903 return ret; goto error_power_off;? 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 904 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 905 /* Initialize subdev */ 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 906 ov02e->sd.internal_ops = &ov02e10_internal_ops; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 907 ov02e->sd.flags |= V4L2_SUBDEV_FL_HAS_DEVNODE; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 908 ov02e->sd.entity.ops = &ov02e10_subdev_entity_ops; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 909 ov02e->sd.entity.function = MEDIA_ENT_F_CAM_SENSOR; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 910 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 911 /* Initialize source pad */ 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 912 ov02e->pad.flags = MEDIA_PAD_FL_SOURCE; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 913 ret = media_entity_pads_init(&ov02e->sd.entity, 1, &ov02e->pad); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 914 if (ret) { 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 915 dev_err(&client->dev, "%s failed:%d\n", __func__, ret); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 916 goto error_handler_free; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 917 } 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 918 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 919 ret = v4l2_async_register_subdev_sensor(&ov02e->sd); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 920 if (ret < 0) { 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 921 dev_err(&client->dev, "async reg subdev error\n"); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 922 goto error_media_entity; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 923 } 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 924 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 925 /* 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 926 * Device is already turned on by i2c-core with ACPI domain PM. 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 927 * Enable runtime PM and turn off the device. 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 928 */ 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 929 pm_runtime_set_active(&client->dev); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 930 pm_runtime_enable(&client->dev); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 931 pm_runtime_idle(&client->dev); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 932 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 933 return 0; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 934 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 935 error_media_entity: 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 936 media_entity_cleanup(&ov02e->sd.entity); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 937 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 938 error_handler_free: 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 939 v4l2_ctrl_handler_free(ov02e->sd.ctrl_handler); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 940 mutex_destroy(&ov02e->mutex); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 941 dev_err(&client->dev, "%s failed:%d\n", __func__, ret); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 942 error_power_off: 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 943 ov02e10_power_off(&client->dev); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 944 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 945 dev_dbg(&client->dev, "probe done\n"); 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 946 return ret; 62323d3b3c4dc1 Jingjing Xiong 2025-03-17 947 } -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki