BCC: lkp(a)intel.com CC: kbuild-all(a)lists.01.org CC: linux-kernel(a)vger.kernel.org TO: Beau Belgrave CC: "Steven Rostedt (Google)" tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 521a547ced6477c54b4b0cc206000406c221b4d6 commit: 7f5a08c79df35e68f1a43033450c5050f12bc155 user_events: Add minimal support for trace_event into ftrace date: 7 months ago :::::: branch date: 11 hours ago :::::: commit date: 7 months ago config: csky-randconfig-m041-20220918 compiler: csky-linux-gcc (GCC) 12.1.0 If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot Reported-by: Dan Carpenter New smatch warnings: kernel/trace/trace_events_user.c:915 user_events_ioctl_reg() warn: ignoring unreachable code. Old smatch warnings: arch/csky/include/asm/uaccess.h:202 __get_user_fn() error: uninitialized symbol 'retval'. vim +915 kernel/trace/trace_events_user.c 7f5a08c79df35e Beau Belgrave 2022-01-18 877 7f5a08c79df35e Beau Belgrave 2022-01-18 878 /* 7f5a08c79df35e Beau Belgrave 2022-01-18 879 * Registers a user_event on behalf of a user process. 7f5a08c79df35e Beau Belgrave 2022-01-18 880 */ 7f5a08c79df35e Beau Belgrave 2022-01-18 881 static long user_events_ioctl_reg(struct file *file, unsigned long uarg) 7f5a08c79df35e Beau Belgrave 2022-01-18 882 { 7f5a08c79df35e Beau Belgrave 2022-01-18 883 struct user_reg __user *ureg = (struct user_reg __user *)uarg; 7f5a08c79df35e Beau Belgrave 2022-01-18 884 struct user_reg reg; 7f5a08c79df35e Beau Belgrave 2022-01-18 885 struct user_event *user; 7f5a08c79df35e Beau Belgrave 2022-01-18 886 char *name; 7f5a08c79df35e Beau Belgrave 2022-01-18 887 long ret; 7f5a08c79df35e Beau Belgrave 2022-01-18 888 7f5a08c79df35e Beau Belgrave 2022-01-18 889 ret = user_reg_get(ureg, ®); 7f5a08c79df35e Beau Belgrave 2022-01-18 890 7f5a08c79df35e Beau Belgrave 2022-01-18 891 if (ret) 7f5a08c79df35e Beau Belgrave 2022-01-18 892 return ret; 7f5a08c79df35e Beau Belgrave 2022-01-18 893 7f5a08c79df35e Beau Belgrave 2022-01-18 894 name = strndup_user((const char __user *)(uintptr_t)reg.name_args, 7f5a08c79df35e Beau Belgrave 2022-01-18 895 MAX_EVENT_DESC); 7f5a08c79df35e Beau Belgrave 2022-01-18 896 7f5a08c79df35e Beau Belgrave 2022-01-18 897 if (IS_ERR(name)) { 7f5a08c79df35e Beau Belgrave 2022-01-18 898 ret = PTR_ERR(name); 7f5a08c79df35e Beau Belgrave 2022-01-18 899 return ret; 7f5a08c79df35e Beau Belgrave 2022-01-18 900 } 7f5a08c79df35e Beau Belgrave 2022-01-18 901 7f5a08c79df35e Beau Belgrave 2022-01-18 902 ret = user_event_parse_cmd(name, &user); 7f5a08c79df35e Beau Belgrave 2022-01-18 903 7f5a08c79df35e Beau Belgrave 2022-01-18 904 if (ret) { 7f5a08c79df35e Beau Belgrave 2022-01-18 905 kfree(name); 7f5a08c79df35e Beau Belgrave 2022-01-18 906 return ret; 7f5a08c79df35e Beau Belgrave 2022-01-18 907 } 7f5a08c79df35e Beau Belgrave 2022-01-18 908 7f5a08c79df35e Beau Belgrave 2022-01-18 909 ret = user_events_ref_add(file, user); 7f5a08c79df35e Beau Belgrave 2022-01-18 910 7f5a08c79df35e Beau Belgrave 2022-01-18 911 /* Positive number is index and valid */ 7f5a08c79df35e Beau Belgrave 2022-01-18 912 if (ret < 0) 7f5a08c79df35e Beau Belgrave 2022-01-18 913 return ret; 7f5a08c79df35e Beau Belgrave 2022-01-18 914 7f5a08c79df35e Beau Belgrave 2022-01-18 @915 put_user((u32)ret, &ureg->write_index); 7f5a08c79df35e Beau Belgrave 2022-01-18 916 put_user(user->index, &ureg->status_index); 7f5a08c79df35e Beau Belgrave 2022-01-18 917 7f5a08c79df35e Beau Belgrave 2022-01-18 918 return 0; 7f5a08c79df35e Beau Belgrave 2022-01-18 919 } 7f5a08c79df35e Beau Belgrave 2022-01-18 920 -- 0-DAY CI Kernel Test Service https://01.org/lkp