[tglx-devel:x86/fpu 26/82] arch/x86/kernel/ptrace.c:1311:13: error: no previous prototype for 'update_regset_xstate_info'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git x86/fpu
head: d52a4cb09008bb5ef97de5d64ab960063365c3b7
commit: 22553a4cfe428edf5b399552abc2ffd22918c4a9 [26/82] x86/fpu: Remove internal.h dependency from fpu/signal.h
config: i386-buildonly-randconfig-r002-20211014 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git/commit/?id...
git remote add tglx-devel https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git
git fetch --no-tags tglx-devel x86/fpu
git checkout 22553a4cfe428edf5b399552abc2ffd22918c4a9
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> arch/x86/kernel/ptrace.c:1311:13: error: no previous prototype for 'update_regset_xstate_info' [-Werror=missing-prototypes]
1311 | void __init update_regset_xstate_info(unsigned int size, u64 xstate_mask)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
vim +/update_regset_xstate_info +1311 arch/x86/kernel/ptrace.c
5b3efd500854d4 Suresh Siddha 2010-02-11 1310
404f6aac9b3ef5 Kees Cook 2016-08-08 @1311 void __init update_regset_xstate_info(unsigned int size, u64 xstate_mask)
5b3efd500854d4 Suresh Siddha 2010-02-11 1312 {
5b3efd500854d4 Suresh Siddha 2010-02-11 1313 #ifdef CONFIG_X86_64
5b3efd500854d4 Suresh Siddha 2010-02-11 1314 x86_64_regsets[REGSET_XSTATE].n = size / sizeof(u64);
5b3efd500854d4 Suresh Siddha 2010-02-11 1315 #endif
5b3efd500854d4 Suresh Siddha 2010-02-11 1316 #if defined CONFIG_X86_32 || defined CONFIG_IA32_EMULATION
5b3efd500854d4 Suresh Siddha 2010-02-11 1317 x86_32_regsets[REGSET_XSTATE].n = size / sizeof(u64);
5b3efd500854d4 Suresh Siddha 2010-02-11 1318 #endif
5b3efd500854d4 Suresh Siddha 2010-02-11 1319 xstate_fx_sw_bytes[USER_XSTATE_XCR0_WORD] = xstate_mask;
5b3efd500854d4 Suresh Siddha 2010-02-11 1320 }
5b3efd500854d4 Suresh Siddha 2010-02-11 1321
:::::: The code at line 1311 was first introduced by commit
:::::: 404f6aac9b3ef595735feca99979db084ea48315 x86: Apply more __ro_after_init and const
:::::: TO: Kees Cook <keescook(a)chromium.org>
:::::: CC: Ingo Molnar <mingo(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
Re: [PATCH v10 03/13] media: amphion: add amphion vpu device driver
by kernel test robot
Hi Ming,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on 64cdf7e5a3aac0e7c9efdb079e74e22875b0419a]
url: https://github.com/0day-ci/linux/commits/Ming-Qian/amphion-video-decoder-...
base: 64cdf7e5a3aac0e7c9efdb079e74e22875b0419a
config: arm64-randconfig-r015-20211014 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 6c76d0101193aa4eb891a6954ff047eda2f9cf71)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# https://github.com/0day-ci/linux/commit/d009494a2472451fb05646fe6439d7918...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Ming-Qian/amphion-video-decoder-encoder-driver/20211013-163124
git checkout d009494a2472451fb05646fe6439d7918790be2d
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/media/platform/amphion/vpu_drv.c:215:12: warning: no previous prototype for function 'vpu_driver_init' [-Wmissing-prototypes]
int __init vpu_driver_init(void)
^
drivers/media/platform/amphion/vpu_drv.c:215:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int __init vpu_driver_init(void)
^
static
>> drivers/media/platform/amphion/vpu_drv.c:226:13: warning: no previous prototype for function 'vpu_driver_exit' [-Wmissing-prototypes]
void __exit vpu_driver_exit(void)
^
drivers/media/platform/amphion/vpu_drv.c:226:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void __exit vpu_driver_exit(void)
^
static
2 warnings generated.
vim +/vpu_driver_init +215 drivers/media/platform/amphion/vpu_drv.c
214
> 215 int __init vpu_driver_init(void)
216 {
217 int ret;
218
219 ret = platform_driver_register(&hion_vpu_driver);
220 if (ret)
221 return ret;
222
223 return vpu_core_driver_init();
224 }
225
> 226 void __exit vpu_driver_exit(void)
227 {
228 vpu_core_driver_exit();
229 platform_driver_unregister(&hion_vpu_driver);
230 }
231 module_init(vpu_driver_init);
232 module_exit(vpu_driver_exit);
233
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
Re: [RFC 6/9] bpf: split map modification structs
by kernel test robot
Hi Lorenz,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on bpf-next/master]
[also build test ERROR on bpf/master v5.15-rc5 next-20211013]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Lorenz-Bauer/uapi-bpf-h-for-robo...
base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
config: openrisc-buildonly-randconfig-r004-20211014 (attached as .config)
compiler: or1k-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/3b259b92970a70db700a73212711945e3...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Lorenz-Bauer/uapi-bpf-h-for-robots/20211014-223605
git checkout 3b259b92970a70db700a73212711945e3ca0f9c2
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=openrisc SHELL=/bin/bash kernel/bpf/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
kernel/bpf/syscall.c: In function 'map_lookup_elem':
>> kernel/bpf/syscall.c:1053:23: error: 'struct bpf_map_lookup_elem_attr' has no member named 'fd'
1053 | int ufd = attr->fd;
| ^~
kernel/bpf/syscall.c: In function 'map_update_elem':
>> kernel/bpf/syscall.c:1114:23: error: 'struct bpf_map_update_elem_attr' has no member named 'fd'
1114 | int ufd = attr->fd;
| ^~
kernel/bpf/syscall.c: In function 'map_delete_elem':
>> kernel/bpf/syscall.c:1167:23: error: 'struct bpf_map_delete_elem_attr' has no member named 'fd'
1167 | int ufd = attr->fd;
| ^~
kernel/bpf/syscall.c: In function 'map_get_next_key':
>> kernel/bpf/syscall.c:1215:23: error: 'struct bpf_map_get_next_key_attr' has no member named 'fd'
1215 | int ufd = attr->fd;
| ^~
vim +1053 kernel/bpf/syscall.c
1048
1049 static int map_lookup_elem(struct bpf_map_lookup_elem_attr *attr)
1050 {
1051 void __user *ukey = u64_to_user_ptr(attr->key_u64);
1052 void __user *uvalue = u64_to_user_ptr(attr->value_u64);
> 1053 int ufd = attr->fd;
1054 struct bpf_map *map;
1055 void *key, *value;
1056 u32 value_size;
1057 struct fd f;
1058 int err;
1059
1060 if (attr->flags & ~BPF_F_LOCK)
1061 return -EINVAL;
1062
1063 f = fdget(ufd);
1064 map = __bpf_map_get(f);
1065 if (IS_ERR(map))
1066 return PTR_ERR(map);
1067 if (!(map_get_sys_perms(map, f) & FMODE_CAN_READ)) {
1068 err = -EPERM;
1069 goto err_put;
1070 }
1071
1072 if ((attr->flags & BPF_F_LOCK) &&
1073 !map_value_has_spin_lock(map)) {
1074 err = -EINVAL;
1075 goto err_put;
1076 }
1077
1078 key = __bpf_copy_key(ukey, map->key_size);
1079 if (IS_ERR(key)) {
1080 err = PTR_ERR(key);
1081 goto err_put;
1082 }
1083
1084 value_size = bpf_map_value_size(map);
1085
1086 err = -ENOMEM;
1087 value = kvmalloc(value_size, GFP_USER | __GFP_NOWARN);
1088 if (!value)
1089 goto free_key;
1090
1091 err = bpf_map_copy_value(map, key, value, attr->flags);
1092 if (err)
1093 goto free_value;
1094
1095 err = -EFAULT;
1096 if (copy_to_user(uvalue, value, value_size) != 0)
1097 goto free_value;
1098
1099 err = 0;
1100
1101 free_value:
1102 kvfree(value);
1103 free_key:
1104 kvfree(key);
1105 err_put:
1106 fdput(f);
1107 return err;
1108 }
1109
1110 static int map_update_elem(struct bpf_map_update_elem_attr *attr, bpfptr_t uattr)
1111 {
1112 bpfptr_t ukey = make_bpfptr(attr->key_u64, uattr.is_kernel);
1113 bpfptr_t uvalue = make_bpfptr(attr->value_u64, uattr.is_kernel);
> 1114 int ufd = attr->fd;
1115 struct bpf_map *map;
1116 void *key, *value;
1117 u32 value_size;
1118 struct fd f;
1119 int err;
1120
1121 f = fdget(ufd);
1122 map = __bpf_map_get(f);
1123 if (IS_ERR(map))
1124 return PTR_ERR(map);
1125 if (!(map_get_sys_perms(map, f) & FMODE_CAN_WRITE)) {
1126 err = -EPERM;
1127 goto err_put;
1128 }
1129
1130 if ((attr->flags & BPF_F_LOCK) &&
1131 !map_value_has_spin_lock(map)) {
1132 err = -EINVAL;
1133 goto err_put;
1134 }
1135
1136 key = ___bpf_copy_key(ukey, map->key_size);
1137 if (IS_ERR(key)) {
1138 err = PTR_ERR(key);
1139 goto err_put;
1140 }
1141
1142 value_size = bpf_map_value_size(map);
1143
1144 err = -ENOMEM;
1145 value = kvmalloc(value_size, GFP_USER | __GFP_NOWARN);
1146 if (!value)
1147 goto free_key;
1148
1149 err = -EFAULT;
1150 if (copy_from_bpfptr(value, uvalue, value_size) != 0)
1151 goto free_value;
1152
1153 err = bpf_map_update_value(map, f, key, value, attr->flags);
1154
1155 free_value:
1156 kvfree(value);
1157 free_key:
1158 kvfree(key);
1159 err_put:
1160 fdput(f);
1161 return err;
1162 }
1163
1164 static int map_delete_elem(struct bpf_map_delete_elem_attr *attr)
1165 {
1166 void __user *ukey = u64_to_user_ptr(attr->key_u64);
> 1167 int ufd = attr->fd;
1168 struct bpf_map *map;
1169 struct fd f;
1170 void *key;
1171 int err;
1172
1173 f = fdget(ufd);
1174 map = __bpf_map_get(f);
1175 if (IS_ERR(map))
1176 return PTR_ERR(map);
1177 if (!(map_get_sys_perms(map, f) & FMODE_CAN_WRITE)) {
1178 err = -EPERM;
1179 goto err_put;
1180 }
1181
1182 key = __bpf_copy_key(ukey, map->key_size);
1183 if (IS_ERR(key)) {
1184 err = PTR_ERR(key);
1185 goto err_put;
1186 }
1187
1188 if (bpf_map_is_dev_bound(map)) {
1189 err = bpf_map_offload_delete_elem(map, key);
1190 goto out;
1191 } else if (IS_FD_PROG_ARRAY(map) ||
1192 map->map_type == BPF_MAP_TYPE_STRUCT_OPS) {
1193 /* These maps require sleepable context */
1194 err = map->ops->map_delete_elem(map, key);
1195 goto out;
1196 }
1197
1198 bpf_disable_instrumentation();
1199 rcu_read_lock();
1200 err = map->ops->map_delete_elem(map, key);
1201 rcu_read_unlock();
1202 bpf_enable_instrumentation();
1203 maybe_wait_bpf_programs(map);
1204 out:
1205 kvfree(key);
1206 err_put:
1207 fdput(f);
1208 return err;
1209 }
1210
1211 static int map_get_next_key(struct bpf_map_get_next_key_attr *attr)
1212 {
1213 void __user *ukey = u64_to_user_ptr(attr->key_u64);
1214 void __user *unext_key = u64_to_user_ptr(attr->next_key_u64);
> 1215 int ufd = attr->fd;
1216 struct bpf_map *map;
1217 void *key, *next_key;
1218 struct fd f;
1219 int err;
1220
1221 f = fdget(ufd);
1222 map = __bpf_map_get(f);
1223 if (IS_ERR(map))
1224 return PTR_ERR(map);
1225 if (!(map_get_sys_perms(map, f) & FMODE_CAN_READ)) {
1226 err = -EPERM;
1227 goto err_put;
1228 }
1229
1230 if (ukey) {
1231 key = __bpf_copy_key(ukey, map->key_size);
1232 if (IS_ERR(key)) {
1233 err = PTR_ERR(key);
1234 goto err_put;
1235 }
1236 } else {
1237 key = NULL;
1238 }
1239
1240 err = -ENOMEM;
1241 next_key = kvmalloc(map->key_size, GFP_USER);
1242 if (!next_key)
1243 goto free_key;
1244
1245 if (bpf_map_is_dev_bound(map)) {
1246 err = bpf_map_offload_get_next_key(map, key, next_key);
1247 goto out;
1248 }
1249
1250 rcu_read_lock();
1251 err = map->ops->map_get_next_key(map, key, next_key);
1252 rcu_read_unlock();
1253 out:
1254 if (err)
1255 goto free_next_key;
1256
1257 err = -EFAULT;
1258 if (copy_to_user(unext_key, next_key, map->key_size) != 0)
1259 goto free_next_key;
1260
1261 err = 0;
1262
1263 free_next_key:
1264 kvfree(next_key);
1265 free_key:
1266 kvfree(key);
1267 err_put:
1268 fdput(f);
1269 return err;
1270 }
1271
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
Re: [RFC 6/9] bpf: split map modification structs
by kernel test robot
Hi Lorenz,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on bpf-next/master]
[also build test ERROR on bpf/master v5.15-rc5 next-20211013]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Lorenz-Bauer/uapi-bpf-h-for-robo...
base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
config: hexagon-randconfig-r041-20211014 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 6c76d0101193aa4eb891a6954ff047eda2f9cf71)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/3b259b92970a70db700a73212711945e3...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Lorenz-Bauer/uapi-bpf-h-for-robots/20211014-223605
git checkout 3b259b92970a70db700a73212711945e3ca0f9c2
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=hexagon SHELL=/bin/bash kernel/bpf/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> kernel/bpf/syscall.c:1053:18: error: no member named 'fd' in 'struct bpf_map_lookup_elem_attr'
int ufd = attr->fd;
~~~~ ^
>> kernel/bpf/syscall.c:1114:18: error: no member named 'fd' in 'struct bpf_map_update_elem_attr'
int ufd = attr->fd;
~~~~ ^
>> kernel/bpf/syscall.c:1167:18: error: no member named 'fd' in 'struct bpf_map_delete_elem_attr'
int ufd = attr->fd;
~~~~ ^
>> kernel/bpf/syscall.c:1215:18: error: no member named 'fd' in 'struct bpf_map_get_next_key_attr'
int ufd = attr->fd;
~~~~ ^
4 errors generated.
vim +1053 kernel/bpf/syscall.c
1048
1049 static int map_lookup_elem(struct bpf_map_lookup_elem_attr *attr)
1050 {
1051 void __user *ukey = u64_to_user_ptr(attr->key_u64);
1052 void __user *uvalue = u64_to_user_ptr(attr->value_u64);
> 1053 int ufd = attr->fd;
1054 struct bpf_map *map;
1055 void *key, *value;
1056 u32 value_size;
1057 struct fd f;
1058 int err;
1059
1060 if (attr->flags & ~BPF_F_LOCK)
1061 return -EINVAL;
1062
1063 f = fdget(ufd);
1064 map = __bpf_map_get(f);
1065 if (IS_ERR(map))
1066 return PTR_ERR(map);
1067 if (!(map_get_sys_perms(map, f) & FMODE_CAN_READ)) {
1068 err = -EPERM;
1069 goto err_put;
1070 }
1071
1072 if ((attr->flags & BPF_F_LOCK) &&
1073 !map_value_has_spin_lock(map)) {
1074 err = -EINVAL;
1075 goto err_put;
1076 }
1077
1078 key = __bpf_copy_key(ukey, map->key_size);
1079 if (IS_ERR(key)) {
1080 err = PTR_ERR(key);
1081 goto err_put;
1082 }
1083
1084 value_size = bpf_map_value_size(map);
1085
1086 err = -ENOMEM;
1087 value = kvmalloc(value_size, GFP_USER | __GFP_NOWARN);
1088 if (!value)
1089 goto free_key;
1090
1091 err = bpf_map_copy_value(map, key, value, attr->flags);
1092 if (err)
1093 goto free_value;
1094
1095 err = -EFAULT;
1096 if (copy_to_user(uvalue, value, value_size) != 0)
1097 goto free_value;
1098
1099 err = 0;
1100
1101 free_value:
1102 kvfree(value);
1103 free_key:
1104 kvfree(key);
1105 err_put:
1106 fdput(f);
1107 return err;
1108 }
1109
1110 static int map_update_elem(struct bpf_map_update_elem_attr *attr, bpfptr_t uattr)
1111 {
1112 bpfptr_t ukey = make_bpfptr(attr->key_u64, uattr.is_kernel);
1113 bpfptr_t uvalue = make_bpfptr(attr->value_u64, uattr.is_kernel);
> 1114 int ufd = attr->fd;
1115 struct bpf_map *map;
1116 void *key, *value;
1117 u32 value_size;
1118 struct fd f;
1119 int err;
1120
1121 f = fdget(ufd);
1122 map = __bpf_map_get(f);
1123 if (IS_ERR(map))
1124 return PTR_ERR(map);
1125 if (!(map_get_sys_perms(map, f) & FMODE_CAN_WRITE)) {
1126 err = -EPERM;
1127 goto err_put;
1128 }
1129
1130 if ((attr->flags & BPF_F_LOCK) &&
1131 !map_value_has_spin_lock(map)) {
1132 err = -EINVAL;
1133 goto err_put;
1134 }
1135
1136 key = ___bpf_copy_key(ukey, map->key_size);
1137 if (IS_ERR(key)) {
1138 err = PTR_ERR(key);
1139 goto err_put;
1140 }
1141
1142 value_size = bpf_map_value_size(map);
1143
1144 err = -ENOMEM;
1145 value = kvmalloc(value_size, GFP_USER | __GFP_NOWARN);
1146 if (!value)
1147 goto free_key;
1148
1149 err = -EFAULT;
1150 if (copy_from_bpfptr(value, uvalue, value_size) != 0)
1151 goto free_value;
1152
1153 err = bpf_map_update_value(map, f, key, value, attr->flags);
1154
1155 free_value:
1156 kvfree(value);
1157 free_key:
1158 kvfree(key);
1159 err_put:
1160 fdput(f);
1161 return err;
1162 }
1163
1164 static int map_delete_elem(struct bpf_map_delete_elem_attr *attr)
1165 {
1166 void __user *ukey = u64_to_user_ptr(attr->key_u64);
> 1167 int ufd = attr->fd;
1168 struct bpf_map *map;
1169 struct fd f;
1170 void *key;
1171 int err;
1172
1173 f = fdget(ufd);
1174 map = __bpf_map_get(f);
1175 if (IS_ERR(map))
1176 return PTR_ERR(map);
1177 if (!(map_get_sys_perms(map, f) & FMODE_CAN_WRITE)) {
1178 err = -EPERM;
1179 goto err_put;
1180 }
1181
1182 key = __bpf_copy_key(ukey, map->key_size);
1183 if (IS_ERR(key)) {
1184 err = PTR_ERR(key);
1185 goto err_put;
1186 }
1187
1188 if (bpf_map_is_dev_bound(map)) {
1189 err = bpf_map_offload_delete_elem(map, key);
1190 goto out;
1191 } else if (IS_FD_PROG_ARRAY(map) ||
1192 map->map_type == BPF_MAP_TYPE_STRUCT_OPS) {
1193 /* These maps require sleepable context */
1194 err = map->ops->map_delete_elem(map, key);
1195 goto out;
1196 }
1197
1198 bpf_disable_instrumentation();
1199 rcu_read_lock();
1200 err = map->ops->map_delete_elem(map, key);
1201 rcu_read_unlock();
1202 bpf_enable_instrumentation();
1203 maybe_wait_bpf_programs(map);
1204 out:
1205 kvfree(key);
1206 err_put:
1207 fdput(f);
1208 return err;
1209 }
1210
1211 static int map_get_next_key(struct bpf_map_get_next_key_attr *attr)
1212 {
1213 void __user *ukey = u64_to_user_ptr(attr->key_u64);
1214 void __user *unext_key = u64_to_user_ptr(attr->next_key_u64);
> 1215 int ufd = attr->fd;
1216 struct bpf_map *map;
1217 void *key, *next_key;
1218 struct fd f;
1219 int err;
1220
1221 f = fdget(ufd);
1222 map = __bpf_map_get(f);
1223 if (IS_ERR(map))
1224 return PTR_ERR(map);
1225 if (!(map_get_sys_perms(map, f) & FMODE_CAN_READ)) {
1226 err = -EPERM;
1227 goto err_put;
1228 }
1229
1230 if (ukey) {
1231 key = __bpf_copy_key(ukey, map->key_size);
1232 if (IS_ERR(key)) {
1233 err = PTR_ERR(key);
1234 goto err_put;
1235 }
1236 } else {
1237 key = NULL;
1238 }
1239
1240 err = -ENOMEM;
1241 next_key = kvmalloc(map->key_size, GFP_USER);
1242 if (!next_key)
1243 goto free_key;
1244
1245 if (bpf_map_is_dev_bound(map)) {
1246 err = bpf_map_offload_get_next_key(map, key, next_key);
1247 goto out;
1248 }
1249
1250 rcu_read_lock();
1251 err = map->ops->map_get_next_key(map, key, next_key);
1252 rcu_read_unlock();
1253 out:
1254 if (err)
1255 goto free_next_key;
1256
1257 err = -EFAULT;
1258 if (copy_to_user(unext_key, next_key, map->key_size) != 0)
1259 goto free_next_key;
1260
1261 err = 0;
1262
1263 free_next_key:
1264 kvfree(next_key);
1265 free_key:
1266 kvfree(key);
1267 err_put:
1268 fdput(f);
1269 return err;
1270 }
1271
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
[sashal-stable:pending-5.4 55/67] powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ring_buffer_benchmark.o' being placed in section `.ctors.65435'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git pending-5.4
head: 1030995b3ad32f608d865259c5a1244fe7eecfc9
commit: 7297f94a86d0a511955ae403f41f734d9a757092 [55/67] netfilter: ip6_tables: zero-initialize fragment offset
config: powerpc64-randconfig-c023-20211014 (attached as .config)
compiler: powerpc64le-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/c...
git remote add sashal-stable https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
git fetch --no-tags sashal-stable pending-5.4
git checkout 7297f94a86d0a511955ae403f41f734d9a757092
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=powerpc SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
powerpc64le-linux-ld: warning: orphan section `.gnu.hash' from `linker stubs' being placed in section `.gnu.hash'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_selftest_dynamic.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_clock.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ftrace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ring_buffer.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ring_buffer_benchmark.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_output.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_seq.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_stat.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_printk.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_sched_switch.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_functions.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_nop.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/blktrace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_export.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_syscalls.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_event_perf.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events_filter.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events_trigger.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/power-traces.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/rpm-traces.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_kdb.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_dynevent.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_probe.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_uprobe.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.gnu.hash' from `linker stubs' being placed in section `.gnu.hash'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_selftest_dynamic.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_clock.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ftrace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ring_buffer.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ring_buffer_benchmark.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_output.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_seq.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_stat.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_printk.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_sched_switch.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_functions.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_nop.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/blktrace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_export.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_syscalls.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_event_perf.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events_filter.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events_trigger.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/power-traces.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/rpm-traces.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_kdb.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_dynevent.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_probe.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_uprobe.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.gnu.hash' from `linker stubs' being placed in section `.gnu.hash'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_selftest_dynamic.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_clock.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ftrace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ring_buffer.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ring_buffer_benchmark.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_output.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_seq.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_stat.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_printk.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_sched_switch.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_functions.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_nop.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/blktrace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_export.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_syscalls.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_event_perf.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events_filter.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events_trigger.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/power-traces.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/rpm-traces.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_kdb.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_dynevent.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_probe.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_uprobe.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.gnu.hash' from `linker stubs' being placed in section `.gnu.hash'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_selftest_dynamic.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_clock.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ftrace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ring_buffer.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/ring_buffer_benchmark.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_output.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_seq.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_stat.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_printk.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_sched_switch.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_functions.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_nop.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/blktrace.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_export.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_syscalls.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_event_perf.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events_filter.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_events_trigger.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/power-traces.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/rpm-traces.o' being placed in section `.ctors.65435'
powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_kdb.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_dynevent.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_probe.o' being placed in section `.ctors.65435'
>> powerpc64le-linux-ld: warning: orphan section `.ctors.65435' from `kernel/trace/trace_uprobe.o' being placed in section `.ctors.65435'
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
[clk:clk-qcom 17/38] drivers/clk/qcom/gcc-sc7280.c:200:37: error: 'gcc_parent_data_0_ao' defined but not used
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/clk/linux.git clk-qcom
head: 1daec8cfebc28bbe596743c34bebd11b80fba990
commit: 3165d1e3c737fd9432e9e68b44a64c47f886f647 [17/38] clk: qcom: gcc: Remove CPUSS clocks control for SC7280
config: arm-buildonly-randconfig-r005-20211014 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/clk/linux.git/commit/?id=...
git remote add clk https://git.kernel.org/pub/scm/linux/kernel/git/clk/linux.git
git fetch --no-tags clk clk-qcom
git checkout 3165d1e3c737fd9432e9e68b44a64c47f886f647
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/clk/qcom/gcc-sc7280.c:200:37: error: 'gcc_parent_data_0_ao' defined but not used [-Werror=unused-const-variable=]
200 | static const struct clk_parent_data gcc_parent_data_0_ao[] = {
| ^~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
vim +/gcc_parent_data_0_ao +200 drivers/clk/qcom/gcc-sc7280.c
a3cc092196ef635 Taniya Das 2021-02-10 199
a3cc092196ef635 Taniya Das 2021-02-10 @200 static const struct clk_parent_data gcc_parent_data_0_ao[] = {
a3cc092196ef635 Taniya Das 2021-02-10 201 { .fw_name = "bi_tcxo_ao" },
a3cc092196ef635 Taniya Das 2021-02-10 202 { .hw = &gcc_gpll0.clkr.hw },
a3cc092196ef635 Taniya Das 2021-02-10 203 { .hw = &gcc_gpll0_out_even.clkr.hw },
a3cc092196ef635 Taniya Das 2021-02-10 204 };
a3cc092196ef635 Taniya Das 2021-02-10 205
:::::: The code at line 200 was first introduced by commit
:::::: a3cc092196ef63570c8744c3ac88c3c6c67ab44b clk: qcom: Add Global Clock controller (GCC) driver for SC7280
:::::: TO: Taniya Das <tdas(a)codeaurora.org>
:::::: CC: Stephen Boyd <sboyd(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
[gustavoars:for-next/cast-function 1/3] kernel/trace/ftrace.c:7029:6: error: no previous prototype for function 'arch_ftrace_ops_list_func'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git for-next/cast-function
head: eed09ebd6f47aeb92b3fe3b8d338b2a55e534928
commit: f9d45e65ef7f67bdb39c15d09bc6021f197d893e [1/3] ftrace: Fix -Wcast-function-type warnings on powerpc64
config: i386-buildonly-randconfig-r002-20211013 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project b6a8c695542b2987eb9a203d5663a0740cb4725f)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git/comm...
git remote add gustavoars https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git
git fetch --no-tags gustavoars for-next/cast-function
git checkout f9d45e65ef7f67bdb39c15d09bc6021f197d893e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
kernel/trace/ftrace.c:297:5: error: no previous prototype for function '__register_ftrace_function' [-Werror,-Wmissing-prototypes]
int __register_ftrace_function(struct ftrace_ops *ops)
^
kernel/trace/ftrace.c:297:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int __register_ftrace_function(struct ftrace_ops *ops)
^
static
kernel/trace/ftrace.c:340:5: error: no previous prototype for function '__unregister_ftrace_function' [-Werror,-Wmissing-prototypes]
int __unregister_ftrace_function(struct ftrace_ops *ops)
^
kernel/trace/ftrace.c:340:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int __unregister_ftrace_function(struct ftrace_ops *ops)
^
static
kernel/trace/ftrace.c:579:5: error: no previous prototype for function 'ftrace_profile_pages_init' [-Werror,-Wmissing-prototypes]
int ftrace_profile_pages_init(struct ftrace_profile_stat *stat)
^
kernel/trace/ftrace.c:579:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int ftrace_profile_pages_init(struct ftrace_profile_stat *stat)
^
static
kernel/trace/ftrace.c:3871:15: error: no previous prototype for function 'arch_ftrace_match_adjust' [-Werror,-Wmissing-prototypes]
char * __weak arch_ftrace_match_adjust(char *str, const char *search)
^
kernel/trace/ftrace.c:3871:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
char * __weak arch_ftrace_match_adjust(char *str, const char *search)
^
static
>> kernel/trace/ftrace.c:7029:6: error: no previous prototype for function 'arch_ftrace_ops_list_func' [-Werror,-Wmissing-prototypes]
void arch_ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip,
^
kernel/trace/ftrace.c:7029:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void arch_ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip,
^
static
5 errors generated.
vim +/arch_ftrace_ops_list_func +7029 kernel/trace/ftrace.c
7011
7012 /*
7013 * Some archs only support passing ip and parent_ip. Even though
7014 * the list function ignores the op parameter, we do not want any
7015 * C side effects, where a function is called without the caller
7016 * sending a third parameter.
7017 * Archs are to support both the regs and ftrace_ops at the same time.
7018 * If they support ftrace_ops, it is assumed they support regs.
7019 * If call backs want to use regs, they must either check for regs
7020 * being NULL, or CONFIG_DYNAMIC_FTRACE_WITH_REGS.
7021 * Note, CONFIG_DYNAMIC_FTRACE_WITH_REGS expects a full regs to be saved.
7022 * An architecture can pass partial regs with ftrace_ops and still
7023 * set the ARCH_SUPPORTS_FTRACE_OPS.
7024 *
7025 * In vmlinux.lds.h, ftrace_ops_list_func() is defined to be
7026 * arch_ftrace_ops_list_func.
7027 */
7028 #if ARCH_SUPPORTS_FTRACE_OPS
> 7029 void arch_ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip,
7030 struct ftrace_ops *op, struct ftrace_regs *fregs)
7031 {
7032 __ftrace_ops_list_func(ip, parent_ip, NULL, fregs);
7033 }
7034 #else
7035 void arch_ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip)
7036 {
7037 __ftrace_ops_list_func(ip, parent_ip, NULL, NULL);
7038 }
7039 #endif
7040 NOKPROBE_SYMBOL(arch_ftrace_ops_list_func);
7041
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week